IntPtr SceneManager_CreateTextureAnimator(IntPtr scenemanager, IntPtr *textures, int arraysize, int time, bool loop) { array<ITexture*> texturelist; for(int i = 0; i < arraysize; i++) texturelist.push_back((ITexture*)textures[i]); return GetSceneFromIntPtr(scenemanager)->createTextureAnimator(texturelist, time, loop); }
IntPtr SceneManager_CreateFollowSplineAnimator(IntPtr scenemanager, int starttime, float *Xs, float *Ys, float *Zs, int arraysize, float speed, float tightness) { array<vector3df> list; for(int i = 0; i < arraysize; i++) list.push_back(vector3df(Xs[i], Ys[i], Zs[i])); return GetSceneFromIntPtr(scenemanager)->createFollowSplineAnimator(starttime, list, speed, tightness); }
IntPtr SceneManager_AddCameraSceneNodeFPSA(IntPtr scenemanager, IntPtr parent, float rotateS, float moveS, int id, bool novertical, int *actionsmap, int *keymap, const int keymapsize) { SKeyMap map[EKA_COUNT]; for(int i = 0; i < keymapsize; i++) { map[i].Action = (EKEY_ACTION)actionsmap[i]; map[i].KeyCode = (EKEY_CODE)keymap[i]; } return GetSceneFromIntPtr(scenemanager)->addCameraSceneNodeFPS((ISceneNode *)(parent), rotateS, moveS, id, map, keymapsize, novertical); }
IntPtr SceneManager_AddTextSceneNode2W(IntPtr scenemanager, IntPtr font, wchar_t* text, IntPtr parent, M_DIM2DF size, M_VECT3DF pos, int ID, M_SCOLOR shade_top, M_SCOLOR shade_down) { if (((IGUIFont*)font)->getType() == EGFT_BITMAP) { return GetSceneFromIntPtr(scenemanager)->addBillboardTextSceneNode((IGUIFont *)font, (text), (ISceneNode *)parent, MU_DIM2DF(size), MU_VECT3DF(pos), ID, MU_SCOLOR(shade_top), MU_SCOLOR(shade_down)); } else { return ((CGUITTFont*)font)->createBillboard((text), MU_DIM2DF(size), (ISceneManager*)scenemanager, (ISceneNode*)parent, ID ); } }
IntPtr SceneManager_AddHillPlaneMesh(IntPtr scenemanager, M_STRING name, M_DIM2DF tileSize, M_DIM2US tileCount, float hillHeight, M_DIM2DF countHills, M_DIM2DF textureRepeatCount) { return GetSceneFromIntPtr(scenemanager)->addHillPlaneMesh(name, MU_DIM2DF(tileSize), MU_DIM2US(tileCount), 0, hillHeight, MU_DIM2DF(countHills), MU_DIM2DF(textureRepeatCount)); }
E_SCENE_NODE_RENDER_PASS SceneManager_GetSceneNodeRenderPass(IntPtr scenemanager) { return GetSceneFromIntPtr(scenemanager)->getSceneNodeRenderPass(); }
IntPtr SceneManager_AddEmptySceneNode(IntPtr scenemanager, IntPtr parent, int id) { return GetSceneFromIntPtr(scenemanager)->addEmptySceneNode((ISceneNode*) parent, id); }
IntPtr SceneManager_AddTerrainSceneNode(IntPtr scenemanager, M_STRING heightMap, IntPtr parent, int id, M_VECT3DF position, M_VECT3DF rotation, M_VECT3DF scale, M_SCOLOR vertexColor,int maxLOD, E_TERRAIN_PATCH_SIZE patchSize) { return GetSceneFromIntPtr(scenemanager)->addTerrainSceneNode(heightMap, (ISceneNode*)parent, id, MU_VECT3DF(position), MU_VECT3DF(rotation), MU_VECT3DF(scale), MU_SCOLOR(vertexColor), maxLOD, patchSize); }
IntPtr SceneManager_AddTextSceneNodeW(IntPtr scenemanager, IntPtr font, wchar_t* text, M_SCOLOR color, IntPtr parent) { return GetSceneFromIntPtr(scenemanager)->addTextSceneNode((IGUIFont*) font, (text), MU_SCOLOR(color), (ISceneNode*) parent); }
IntPtr SceneManager_AddParticleSystemSceneNode(IntPtr scenemanager, bool defaultEmitter, IntPtr parent, int id) { return GetSceneFromIntPtr(scenemanager)->addParticleSystemSceneNode(defaultEmitter, (ISceneNode*) parent, id); }
IntPtr SceneManager_AddSkyBoxSceneNode(IntPtr scenemanager, IntPtr top, IntPtr bottom, IntPtr lef, IntPtr right, IntPtr front, IntPtr back, IntPtr parent, int id) { return GetSceneFromIntPtr(scenemanager)->addSkyBoxSceneNode((ITexture*) top, (ITexture*)bottom, (ITexture*)lef, (ITexture*)right, (ITexture*) front, (ITexture*)back, (ISceneNode*)parent, id); }
void SceneManager_LoadScene(IntPtr scenemanager, M_STRING filename) { GetSceneFromIntPtr(scenemanager)->loadScene(filename); }
IntPtr SceneManager_GetMeshCache (IntPtr scenemanager) { return GetSceneFromIntPtr(scenemanager)->getMeshCache(); }
void SceneManager_SetActiveCamera(IntPtr scenemanager, IntPtr camerascenenode) { GetSceneFromIntPtr(scenemanager)->setActiveCamera((ICameraSceneNode*) camerascenenode); }
void SceneManager_SetShadowColor(IntPtr scenemanager, M_SCOLOR color) { GetSceneFromIntPtr(scenemanager)->setShadowColor(MU_SCOLOR(color)); }
IntPtr SceneManager_GetSceneNodeFromID(IntPtr scenemanager, int id) { return GetSceneFromIntPtr(scenemanager)->getSceneNodeFromId(id); }
IntPtr SceneManager_GetVideoDriver(IntPtr scenemanager) { return GetSceneFromIntPtr(scenemanager)->getVideoDriver(); }
void SceneManager_GetShadowColor(IntPtr scenemanager, M_SCOLOR toR) { UM_SCOLOR(GetSceneFromIntPtr(scenemanager)->getShadowColor(), toR); }
IntPtr SceneManager_AddLightSceneNode(IntPtr scenemanager, IntPtr parent, M_VECT3DF position, M_SCOLORF color, float radius, int id) { return GetSceneFromIntPtr(scenemanager)->addLightSceneNode((ISceneNode*) parent, MU_VECT3DF(position), MU_SCOLORF(color), radius, id); }
IntPtr SceneManager_CreateNewSceneManager (IntPtr mgr, bool clone) { return GetSceneFromIntPtr(mgr)->createNewSceneManager (clone); }
IntPtr SceneManager_AddOctTreeSceneNodeA(IntPtr scenemanager, IntPtr animatedmesh, IntPtr parent, int id, int minimalPolysPerNode) { return GetSceneFromIntPtr(scenemanager)->addOctTreeSceneNode((IAnimatedMesh*)animatedmesh, (ISceneNode*)parent, id, minimalPolysPerNode); }
bool SceneManager_PostEventFromUser (IntPtr mgr, IntPtr event) { _FIX_BOOL_MARSHAL_BUG(GetSceneFromIntPtr(mgr)->postEventFromUser (*(SEvent*)event)); }
IntPtr SceneManager_AddAnimatedMeshSceneNode(IntPtr scenemanager, IntPtr mesh, IntPtr parent, int id) { return GetSceneFromIntPtr(scenemanager)->addAnimatedMeshSceneNode((IAnimatedMesh*) mesh, (ISceneNode *)(parent), id); }
IntPtr SceneManager_GetRootSceneNode(IntPtr scenemanager) { return GetSceneFromIntPtr(scenemanager)->getRootSceneNode(); }
IntPtr SceneManager_AddTerrainMesh(IntPtr scenemanager, M_STRING meshname, IntPtr texture, IntPtr heightmap, M_DIM2DF stretchSize, float maxHeight, M_DIM2DS defaultVertexBlockSize) { return GetSceneFromIntPtr(scenemanager)->addTerrainMesh(meshname, (IImage*)texture, (IImage*) heightmap, MU_DIM2DF(stretchSize), maxHeight, MU_DIM2DS(defaultVertexBlockSize)); }
IntPtr SceneManager_AddCameraSceneNodeMaya(IntPtr scenemanager, IntPtr parent, float rotateS, float zoomS, float transS, int id) { return GetSceneFromIntPtr(scenemanager)->addCameraSceneNodeMaya((ISceneNode *)(parent), rotateS, zoomS, transS, id); }
IntPtr SceneManager_AddCubeSceneNode(IntPtr scenemanager, float size, IntPtr parent, int id) { return GetSceneFromIntPtr(scenemanager)->addCubeSceneNode(size, (ISceneNode*)parent, id); }
IntPtr SceneManager_AddDummyTransformationSceneNode(IntPtr scenemanager, IntPtr parent, int id) { return GetSceneFromIntPtr(scenemanager)->addDummyTransformationSceneNode((ISceneNode*)parent, id); }
IntPtr SceneManager_GetSceneNodeFromType (IntPtr mgr, IntPtr snode, int type) { return (GetSceneFromIntPtr(mgr)->getSceneNodeFromType((ESCENE_NODE_TYPE)type, (ISceneNode*)snode)); }
IntPtr SceneManager_GetSceneNodeFromName(IntPtr scenemanager, M_STRING name) { return GetSceneFromIntPtr(scenemanager)->getSceneNodeFromName(name); }