redid the plugin system; some engine init stuff

This commit is contained in:
aap
2016-06-25 17:58:52 +02:00
parent e3fa1fcc7f
commit a906d58bcb
21 changed files with 399 additions and 333 deletions

View File

@@ -112,14 +112,9 @@ copyNativeRaster(void *dst, void *, int32 offset, int32)
return dst;
}
void
registerNativeRaster(void)
static void*
nativeOpen(void*, int32 offset, int32)
{
nativeRasterOffset = Raster::registerPlugin(sizeof(Gl3Raster),
0x12340000 | PLATFORM_GL3,
createNativeRaster,
destroyNativeRaster,
copyNativeRaster);
driver[PLATFORM_GL3].rasterNativeOffset = nativeRasterOffset;
driver[PLATFORM_GL3].rasterCreate = rasterCreate;
driver[PLATFORM_GL3].rasterLock = rasterLock;
@@ -128,5 +123,21 @@ registerNativeRaster(void)
driver[PLATFORM_GL3].rasterFromImage = rasterFromImage;
}
static void*
nativeClose(void*, int32 offset, int32)
{
printf("native close\n");
}
void registerNativeRaster(void)
{
Engine::registerPlugin(0, 0x1234, nativeOpen, nativeClose);
nativeRasterOffset = Raster::registerPlugin(sizeof(Gl3Raster),
0x12340000 | PLATFORM_GL3,
createNativeRaster,
destroyNativeRaster,
copyNativeRaster);
}
}
}

View File

@@ -292,7 +292,7 @@ lightingCB(void)
RGBAf ambLight = (RGBAf){0.0, 0.0, 0.0, 1.0};
int n = 0;
world = (World*)engine.currentWorld;
world = (World*)engine->currentWorld;
// only unpositioned lights right now
FORLIST(lnk, world->directionalLights){
Light *l = Light::fromWorld(lnk);