diff options
author | Campbell Barton <ideasman42@gmail.com> | 2012-09-04 07:26:12 +0400 |
---|---|---|
committer | Campbell Barton <ideasman42@gmail.com> | 2012-09-04 07:26:12 +0400 |
commit | 914d3897135fe827b67b5589b028e1974ba52b48 (patch) | |
tree | ea8b576e4b0452661dea264170603416b34396ab /source/gameengine/BlenderRoutines | |
parent | e5a1b1b526790b41369924a8ea550bf03f749b8a (diff) |
fix for building without python, also rework python-main-loop control in the BGE to not use RNA (use lower level BKE/BLI funcs instead)
Diffstat (limited to 'source/gameengine/BlenderRoutines')
-rw-r--r-- | source/gameengine/BlenderRoutines/BL_KetsjiEmbedStart.cpp | 15 |
1 files changed, 8 insertions, 7 deletions
diff --git a/source/gameengine/BlenderRoutines/BL_KetsjiEmbedStart.cpp b/source/gameengine/BlenderRoutines/BL_KetsjiEmbedStart.cpp index feec67b509a..ed8a6cc7220 100644 --- a/source/gameengine/BlenderRoutines/BL_KetsjiEmbedStart.cpp +++ b/source/gameengine/BlenderRoutines/BL_KetsjiEmbedStart.cpp @@ -439,7 +439,6 @@ extern "C" void StartKetsjiShell(struct bContext *C, struct ARegion *ar, rcti *c rasterizer->SetBackColor(scene->gm.framing.col[0], scene->gm.framing.col[1], scene->gm.framing.col[2], 0.0f); } - char *python_main = NULL; if (exitrequested != KX_EXIT_REQUEST_QUIT_GAME) { if (rv3d->persp != RV3D_CAMOB) @@ -534,18 +533,17 @@ extern "C" void StartKetsjiShell(struct bContext *C, struct ARegion *ar, rcti *c // Could be in StartEngine set the framerate, we need the scene to do this ketsjiengine->SetAnimFrameRate(FPS); +#ifdef WITH_PYTHON char *python_main = NULL; pynextframestate.state = NULL; pynextframestate.func = NULL; -#ifdef WITH_PYTHON python_main = KX_GetPythonMain(scene); -#endif // WITH_PYTHON + // the mainloop printf("\nBlender Game Engine Started\n"); if (python_main) { char *python_code = KX_GetPythonCode(blenderdata, python_main); if (python_code) { -#ifdef WITH_PYTHON ketsjinextframestate.ketsjiengine = ketsjiengine; ketsjinextframestate.C = C; ketsjinextframestate.win = win; @@ -560,11 +558,12 @@ extern "C" void StartKetsjiShell(struct bContext *C, struct ARegion *ar, rcti *c printf("Yielding control to Python script '%s'...\n", python_main); PyRun_SimpleString(python_code); printf("Exit Python script '%s'\n", python_main); -#endif // WITH_PYTHON MEM_freeN(python_code); - } + } } - else { + else +#endif /* WITH_PYTHON */ + { while (!exitrequested) { exitrequested = BL_KetsjiNextFrame(ketsjiengine, C, win, scene, ar, keyboarddevice, mousedevice, draw_letterbox); @@ -572,7 +571,9 @@ extern "C" void StartKetsjiShell(struct bContext *C, struct ARegion *ar, rcti *c } printf("Blender Game Engine Finished\n"); exitstring = ketsjiengine->GetExitString(); +#ifdef WITH_PYTHON if (python_main) MEM_freeN(python_main); +#endif /* WITH_PYTHON */ gs = *(ketsjiengine->GetGlobalSettings()); |