X-Git-Url: https://git.jsancho.org/?p=guile-irrlicht.git;a=blobdiff_plain;f=src%2FIrrlichtDevice.cpp;h=125163f060d11dfdd120a01dbd5c322053b1df55;hp=66c8c545ef828aff05f21c0f7ab67ce4c05c76f9;hb=2dd8c4827c6c6afaba10fd04f50ec1587a750be5;hpb=a59c8c830960e4937ea29584ce7500a6603ab428 diff --git a/src/IrrlichtDevice.cpp b/src/IrrlichtDevice.cpp index 66c8c54..125163f 100644 --- a/src/IrrlichtDevice.cpp +++ b/src/IrrlichtDevice.cpp @@ -26,6 +26,7 @@ #include "dimension2d.h" #include "EDriverTypes.h" #include "IrrlichtDevice.h" +#include "ISceneManager.h" #include "IVideoDriver.h" extern "C" { @@ -35,6 +36,7 @@ extern "C" { { init_device_type (); scm_c_define_gsubr ("create-device", 7, 0, 0, (scm_t_subr)irr_createDevice); + scm_c_define_gsubr ("get-scene-manager", 1, 0, 0, (scm_t_subr)irr_getSceneManager); scm_c_define_gsubr ("get-video-driver", 1, 0, 0, (scm_t_subr)irr_getVideoDriver); scm_c_define_gsubr ("set-window-caption!", 2, 0, 0, (scm_t_subr)irr_setWindowCaption); } @@ -87,6 +89,14 @@ extern "C" { return wrap_device (device); } + SCM + irr_getSceneManager (SCM device_obj) + { + irr::IrrlichtDevice* device = unwrap_device (device_obj); + irr::scene::ISceneManager* scene_manager = device->getSceneManager(); + return wrap_scene_manager (scene_manager); + } + SCM irr_getVideoDriver (SCM device_obj) {