public override void Initialize() { mesh = Scene.CreateMeshBuilder(); switch (Helpers.GetFileFormat(FileName)) { case Helpers.FileFormat.TVM: mesh.LoadTVM(FileName, true, false); break; case Helpers.FileFormat.X: mesh.LoadXFile(FileName, true, false); break; } if (Visible) { mesh.EnableFrustumCulling(true, true); mesh.ComputeNormals(); mesh.ComputeBoundings(); mesh.ComputeOctree(); mesh.SetAlphaTest(true); mesh.SetCullMode(CONST_TV_CULLING.TV_BACK_CULL); mesh.SetBlendingMode(CONST_TV_BLENDINGMODE.TV_BLEND_ALPHA); mesh.SetLightingMode(CONST_TV_LIGHTINGMODE.TV_LIGHTING_MANAGED); mesh.SetShadowCast(true, true); mesh.SetPosition(Position.x, Position.y, Position.z); mesh.SetRotation(Rotation.x, Rotation.y, Rotation.z); mesh.SetScale(Scale.x, Scale.y, Scale.z); // Physics SetPhysics(); } else { // Hide mesh. for (var i = 0; i < mesh.GetGroupCount(); i++) { mesh.SetGroupEnable(i, false); } } // Register object in Lua. ScriptManager.SetGlobal(Name, this); }
public override void Initialize() { mesh = Scene.CreateMeshBuilder(); switch (Helpers.GetFileFormat(FileName)) { case Helpers.FileFormat.TVM: mesh.LoadTVM(FileName, true, false); break; case Helpers.FileFormat.X: mesh.LoadXFile(FileName, true, false); break; } if (Visible) { mesh.EnableFrustumCulling(true, true); mesh.ComputeNormals(); mesh.ComputeBoundings(); mesh.ComputeOctree(); mesh.SetAlphaTest(true); mesh.SetCullMode(CONST_TV_CULLING.TV_BACK_CULL); mesh.SetBlendingMode(CONST_TV_BLENDINGMODE.TV_BLEND_ALPHA); mesh.SetLightingMode(CONST_TV_LIGHTINGMODE.TV_LIGHTING_MANAGED); mesh.SetShadowCast(true, true); mesh.SetPosition(Position.x, Position.y, Position.z); mesh.SetRotation(Rotation.x, Rotation.y, Rotation.z); mesh.SetScale(Scale.x, Scale.y, Scale.z); // Physics SetPhysics(); } else { // Hide mesh. for (var i = 0; i < mesh.GetGroupCount(); i++) mesh.SetGroupEnable(i, false); } // Register object in Lua. ScriptManager.SetGlobal(Name, this); }