diff --git a/demos/tutorial/01_triangle.cpp b/demos/tutorial/01_triangle.cpp index 8adcf06c..5eccd6db 100644 --- a/demos/tutorial/01_triangle.cpp +++ b/demos/tutorial/01_triangle.cpp @@ -31,9 +31,9 @@ public: m_ready = false; } - virtual void TickDraw(float seconds) + virtual void TickDraw(float seconds, Scene &scene) { - WorldEntity::TickDraw(seconds); + WorldEntity::TickDraw(seconds, scene); if (!m_ready) { diff --git a/demos/tutorial/02_cube.cpp b/demos/tutorial/02_cube.cpp index f5656d2e..694087e3 100644 --- a/demos/tutorial/02_cube.cpp +++ b/demos/tutorial/02_cube.cpp @@ -66,9 +66,9 @@ public: m_matrix = proj * view * model * anim; } - virtual void TickDraw(float seconds) + virtual void TickDraw(float seconds, Scene &scene) { - WorldEntity::TickDraw(seconds); + WorldEntity::TickDraw(seconds, scene); if (!m_ready) { diff --git a/demos/tutorial/03_noise.cpp b/demos/tutorial/03_noise.cpp index 92b5007a..4fd48b99 100644 --- a/demos/tutorial/03_noise.cpp +++ b/demos/tutorial/03_noise.cpp @@ -36,9 +36,9 @@ public: m_ready = false; } - virtual void TickDraw(float seconds) + virtual void TickDraw(float seconds, Scene &scene) { - WorldEntity::TickDraw(seconds); + WorldEntity::TickDraw(seconds, scene); m_time += seconds; diff --git a/demos/tutorial/04_texture.cpp b/demos/tutorial/04_texture.cpp index 6b1fe863..e3da1694 100644 --- a/demos/tutorial/04_texture.cpp +++ b/demos/tutorial/04_texture.cpp @@ -65,9 +65,9 @@ public: ++m_frames; } - virtual void TickDraw(float seconds) + virtual void TickDraw(float seconds, Scene &scene) { - WorldEntity::TickDraw(seconds); + WorldEntity::TickDraw(seconds, scene); /* Initialise GPU data */ if (!m_ready) diff --git a/demos/tutorial/05_easymesh.cpp b/demos/tutorial/05_easymesh.cpp index e9a587d3..9fd3e8ca 100644 --- a/demos/tutorial/05_easymesh.cpp +++ b/demos/tutorial/05_easymesh.cpp @@ -112,9 +112,9 @@ public: * mat4::rotate(m_gears[4].m3 - 80.0f, vec3(0, 1, 0)); } - virtual void TickDraw(float seconds) + virtual void TickDraw(float seconds, Scene &scene) { - WorldEntity::TickDraw(seconds); + WorldEntity::TickDraw(seconds, scene); if (!m_ready) { @@ -138,7 +138,7 @@ public: for (int i = 0; i < m_gears.Count(); i++) { - g_scene->AddPrimitive(m_gears[i].m1, m_mat * m_gears[i].m2); + scene.AddPrimitive(m_gears[i].m1, m_mat * m_gears[i].m2); } } diff --git a/demos/tutorial/06_sprite.cpp b/demos/tutorial/06_sprite.cpp index bd73a579..f1eb0ee3 100644 --- a/demos/tutorial/06_sprite.cpp +++ b/demos/tutorial/06_sprite.cpp @@ -63,9 +63,9 @@ public: WorldEntity::TickGame(seconds); } - virtual void TickDraw(float seconds) + virtual void TickDraw(float seconds, Scene &scene) { - WorldEntity::TickDraw(seconds); + WorldEntity::TickDraw(seconds, scene); if (!m_ready) { @@ -77,7 +77,7 @@ public: { int frame = (int)(m_sprites[i].m2 * FRAME_COUNT); // m_sprites[i].m1.z = frame; - g_scene->AddTile(m_tileset, frame, + scene.AddTile(m_tileset, frame, (ivec3)m_sprites[i].m1, 0, vec2(2.f), 0.f); } } diff --git a/demos/tutorial/07_input.cpp b/demos/tutorial/07_input.cpp index cbf5bb56..2f4ffa75 100644 --- a/demos/tutorial/07_input.cpp +++ b/demos/tutorial/07_input.cpp @@ -138,9 +138,9 @@ public: m_matrix = proj * view * model * anim; } - virtual void TickDraw(float seconds) + virtual void TickDraw(float seconds, Scene &scene) { - WorldEntity::TickDraw(seconds); + WorldEntity::TickDraw(seconds, scene); if (!m_ready) { diff --git a/demos/tutorial/08_fbo.cpp b/demos/tutorial/08_fbo.cpp index e1c55087..a7f283a8 100644 --- a/demos/tutorial/08_fbo.cpp +++ b/demos/tutorial/08_fbo.cpp @@ -51,9 +51,9 @@ public: m_color /= x; } - virtual void TickDraw(float seconds) + virtual void TickDraw(float seconds, Scene &scene) { - WorldEntity::TickDraw(seconds); + WorldEntity::TickDraw(seconds, scene); if (!m_ready) { diff --git a/demos/tutorial/11_fractal.cpp b/demos/tutorial/11_fractal.cpp index 642e1dce..2e4a6bdc 100644 --- a/demos/tutorial/11_fractal.cpp +++ b/demos/tutorial/11_fractal.cpp @@ -428,9 +428,9 @@ public: } } - virtual void TickDraw(float seconds) + virtual void TickDraw(float seconds, Scene &scene) { - WorldEntity::TickDraw(seconds); + WorldEntity::TickDraw(seconds, scene); static float const vertices[] = { diff --git a/demos/tutorial/12_voronoi.cpp b/demos/tutorial/12_voronoi.cpp index 32c9e68b..496de434 100644 --- a/demos/tutorial/12_voronoi.cpp +++ b/demos/tutorial/12_voronoi.cpp @@ -94,9 +94,9 @@ public: m_color /= x; } - virtual void TickDraw(float seconds) + virtual void TickDraw(float seconds, Scene &scene) { - WorldEntity::TickDraw(seconds); + WorldEntity::TickDraw(seconds, scene); if (!m_ready) { diff --git a/src/camera.cpp b/src/camera.cpp index ffa9d3e5..c09ae5c2 100644 --- a/src/camera.cpp +++ b/src/camera.cpp @@ -239,9 +239,9 @@ void Camera::TickGame(float seconds) WorldEntity::TickGame(seconds); } -void Camera::TickDraw(float seconds) +void Camera::TickDraw(float seconds, Scene &scene) { - WorldEntity::TickDraw(seconds); + WorldEntity::TickDraw(seconds, scene); } } /* namespace lol */ diff --git a/src/camera.h b/src/camera.h index 59024123..25f7a32b 100644 --- a/src/camera.h +++ b/src/camera.h @@ -83,7 +83,7 @@ public: protected: virtual void TickGame(float seconds); - virtual void TickDraw(float seconds); + virtual void TickDraw(float seconds, Scene &scene); //private: public: diff --git a/src/debug/record.cpp b/src/debug/record.cpp index 53e440b2..1a31e42b 100644 --- a/src/debug/record.cpp +++ b/src/debug/record.cpp @@ -67,9 +67,9 @@ void DebugRecord::TickGame(float seconds) Entity::TickGame(seconds); } -void DebugRecord::TickDraw(float seconds) +void DebugRecord::TickDraw(float seconds, Scene &scene) { - Entity::TickDraw(seconds); + Entity::TickDraw(seconds, scene); ivec2 size = Video::GetSize(); diff --git a/src/debug/record.h b/src/debug/record.h index 840a51ab..f60f5087 100644 --- a/src/debug/record.h +++ b/src/debug/record.h @@ -31,7 +31,7 @@ public: protected: virtual void TickGame(float seconds); - virtual void TickDraw(float seconds); + virtual void TickDraw(float seconds, Scene &scene); private: DebugRecordData *m_data; diff --git a/src/emitter.cpp b/src/emitter.cpp index 31dfaebc..b5b92ab5 100644 --- a/src/emitter.cpp +++ b/src/emitter.cpp @@ -68,13 +68,13 @@ void Emitter::TickGame(float seconds) Entity::TickGame(seconds); } -void Emitter::TickDraw(float seconds) +void Emitter::TickDraw(float seconds, Scene &scene) { - Entity::TickDraw(seconds); + Entity::TickDraw(seconds, scene); for (int i = 0; i < data->nparticles; i++) - g_scene->AddTile(data->tileset, data->particles[i], - data->positions[i], 0, vec2(1.0f), 0.0f); + scene.AddTile(data->tileset, data->particles[i], + data->positions[i], 0, vec2(1.0f), 0.0f); } void Emitter::AddParticle(int id, vec3 pos, vec3 vel) diff --git a/src/emitter.h b/src/emitter.h index 869b1a98..ac1835f2 100644 --- a/src/emitter.h +++ b/src/emitter.h @@ -34,7 +34,7 @@ public: protected: virtual void TickGame(float seconds); - virtual void TickDraw(float seconds); + virtual void TickDraw(float seconds, Scene &scene); private: EmitterData *data; diff --git a/src/entity.cpp b/src/entity.cpp index 9c8664b6..18a8d534 100644 --- a/src/entity.cpp +++ b/src/entity.cpp @@ -67,7 +67,7 @@ void Entity::TickGame(float seconds) #endif } -void Entity::TickDraw(float seconds) +void Entity::TickDraw(float seconds, Scene &scene) { (void)seconds; #if !LOL_BUILD_RELEASE diff --git a/src/entity.h b/src/entity.h index 5652988e..d26bcdf4 100644 --- a/src/entity.h +++ b/src/entity.h @@ -61,7 +61,7 @@ protected: virtual void InitDraw(); virtual void TickGame(float seconds); - virtual void TickDraw(float seconds); + virtual void TickDraw(float seconds, class Scene &scene); enum { diff --git a/src/font.cpp b/src/font.cpp index dd99a0da..62c6d00b 100644 --- a/src/font.cpp +++ b/src/font.cpp @@ -58,9 +58,9 @@ Font::~Font() delete data; } -void Font::TickDraw(float seconds) +void Font::TickDraw(float seconds, Scene &scene) { - Entity::TickDraw(seconds); + Entity::TickDraw(seconds, scene); } char const *Font::GetName() diff --git a/src/font.h b/src/font.h index 6ae69025..06c2bf19 100644 --- a/src/font.h +++ b/src/font.h @@ -32,7 +32,7 @@ public: protected: /* Inherited from Entity */ virtual char const *GetName(); - virtual void TickDraw(float seconds); + virtual void TickDraw(float seconds, Scene &scene); public: /* New methods */ diff --git a/src/gradient.cpp b/src/gradient.cpp index 7d6b5504..5d7ad99a 100644 --- a/src/gradient.cpp +++ b/src/gradient.cpp @@ -55,9 +55,9 @@ void Gradient::TickGame(float seconds) Entity::TickGame(seconds); } -void Gradient::TickDraw(float seconds) +void Gradient::TickDraw(float seconds, Scene &scene) { - Entity::TickDraw(seconds); + Entity::TickDraw(seconds, scene); float const vertex[] = { m_bbox[0].x, m_bbox[0].y, 0.0f, m_bbox[1].x, m_bbox[0].y, 0.0f, diff --git a/src/gradient.h b/src/gradient.h index 71f06b35..3ddd7af9 100644 --- a/src/gradient.h +++ b/src/gradient.h @@ -33,7 +33,7 @@ public: protected: virtual void TickGame(float seconds); - virtual void TickDraw(float seconds); + virtual void TickDraw(float seconds, Scene &scene); private: GradientData *data; diff --git a/src/layer.cpp b/src/layer.cpp index 7e1624ad..d591d9f5 100644 --- a/src/layer.cpp +++ b/src/layer.cpp @@ -54,11 +54,11 @@ void Layer::Render(int /* x */, int /* y */, int /* z */) for (int j = 0; j < height; j++) for (int i = 0; i < width; i++) if (data[j * width + i]) - g_scene->AddTile(data[j * width + i], - vec3(x + i * 32, - y + j * 32 - altitude, - altitude + z), - orientation); + scene.AddTile(data[j * width + i], + vec3(x + i * 32, + y + j * 32 - altitude, + altitude + z), + orientation); #endif } diff --git a/src/light.cpp b/src/light.cpp index 3bcb94c0..b24b401a 100644 --- a/src/light.cpp +++ b/src/light.cpp @@ -69,9 +69,9 @@ void Light::TickGame(float seconds) WorldEntity::TickGame(seconds); } -void Light::TickDraw(float seconds) +void Light::TickDraw(float seconds, Scene &scene) { - WorldEntity::TickDraw(seconds); + WorldEntity::TickDraw(seconds, scene); g_scene->AddLight(this); } diff --git a/src/light.h b/src/light.h index b8ba8865..3f7de5c8 100644 --- a/src/light.h +++ b/src/light.h @@ -90,7 +90,7 @@ public: protected: virtual void TickGame(float seconds); - virtual void TickDraw(float seconds); + virtual void TickDraw(float seconds, Scene &scene); private: vec4 m_color; diff --git a/src/platform/d3d9/d3d9input.cpp b/src/platform/d3d9/d3d9input.cpp index 38e216a2..2624295d 100644 --- a/src/platform/d3d9/d3d9input.cpp +++ b/src/platform/d3d9/d3d9input.cpp @@ -122,9 +122,9 @@ void D3d9Input::TickGame(float seconds) #endif } -void D3d9Input::TickDraw(float seconds) +void D3d9Input::TickDraw(float seconds, Scene &scene) { - Entity::TickDraw(seconds); + Entity::TickDraw(seconds, scene); } } /* namespace lol */ diff --git a/src/platform/d3d9/d3d9input.h b/src/platform/d3d9/d3d9input.h index 904cd3eb..39311e6f 100644 --- a/src/platform/d3d9/d3d9input.h +++ b/src/platform/d3d9/d3d9input.h @@ -31,7 +31,7 @@ public: protected: virtual void TickGame(float seconds); - virtual void TickDraw(float seconds); + virtual void TickDraw(float seconds, Scene &scene); private: D3d9InputData *m_data; diff --git a/src/platform/sdl/sdlinput.cpp b/src/platform/sdl/sdlinput.cpp index ef7ae5cb..5c0ab569 100644 --- a/src/platform/sdl/sdlinput.cpp +++ b/src/platform/sdl/sdlinput.cpp @@ -155,9 +155,9 @@ void SdlInput::TickGame(float seconds) #endif } -void SdlInput::TickDraw(float seconds) +void SdlInput::TickDraw(float seconds, Scene &scene) { - Entity::TickDraw(seconds); + Entity::TickDraw(seconds, scene); #if _WIN32 m_data->Tick(seconds); diff --git a/src/platform/sdl/sdlinput.h b/src/platform/sdl/sdlinput.h index daf1891c..1ba944b7 100644 --- a/src/platform/sdl/sdlinput.h +++ b/src/platform/sdl/sdlinput.h @@ -34,7 +34,7 @@ public: protected: virtual void TickGame(float seconds); - virtual void TickDraw(float seconds); + virtual void TickDraw(float seconds, Scene &scene); private: SdlInputData *m_data; diff --git a/src/platform/xbox/xboxinput.cpp b/src/platform/xbox/xboxinput.cpp index 8667f5b4..2cd7888c 100644 --- a/src/platform/xbox/xboxinput.cpp +++ b/src/platform/xbox/xboxinput.cpp @@ -79,9 +79,9 @@ void XboxInput::TickGame(float seconds) Entity::TickGame(seconds); } -void XboxInput::TickDraw(float seconds) +void XboxInput::TickDraw(float seconds, Scene &scene) { - Entity::TickDraw(seconds); + Entity::TickDraw(seconds, scene); #if defined _XBOX for (int i = 0; i < m_data->m_joysticks.Count(); i++) diff --git a/src/platform/xbox/xboxinput.h b/src/platform/xbox/xboxinput.h index be70cc23..42999e4b 100644 --- a/src/platform/xbox/xboxinput.h +++ b/src/platform/xbox/xboxinput.h @@ -31,7 +31,7 @@ public: protected: virtual void TickGame(float seconds); - virtual void TickDraw(float seconds); + virtual void TickDraw(float seconds, Scene &scene); private: XboxInputData *m_data; diff --git a/src/sprite.cpp b/src/sprite.cpp index 9ee58502..3a9373e3 100644 --- a/src/sprite.cpp +++ b/src/sprite.cpp @@ -46,11 +46,11 @@ void Sprite::TickGame(float seconds) Entity::TickGame(seconds); } -void Sprite::TickDraw(float seconds) +void Sprite::TickDraw(float seconds, Scene &scene) { - Entity::TickDraw(seconds); + Entity::TickDraw(seconds, scene); - g_scene->AddTile(data->tileset, data->id, m_position, 0, vec2(1.0f), 0.0f); + scene.AddTile(data->tileset, data->id, m_position, 0, vec2(1.0f), 0.0f); } Sprite::~Sprite() diff --git a/src/sprite.h b/src/sprite.h index c9e1ac9c..301939da 100644 --- a/src/sprite.h +++ b/src/sprite.h @@ -32,7 +32,7 @@ public: protected: virtual void TickGame(float seconds); - virtual void TickDraw(float seconds); + virtual void TickDraw(float seconds, Scene &scene); private: SpriteData *data; diff --git a/src/text.cpp b/src/text.cpp index b9d6520e..02627c40 100644 --- a/src/text.cpp +++ b/src/text.cpp @@ -77,9 +77,9 @@ void Text::SetAlign(int align) data->align = align; } -void Text::TickDraw(float seconds) +void Text::TickDraw(float seconds, Scene &scene) { - Entity::TickDraw(seconds); + Entity::TickDraw(seconds, scene); int length = data->m_text.Count(); if (length) diff --git a/src/text.h b/src/text.h index 56112013..49f32f0c 100644 --- a/src/text.h +++ b/src/text.h @@ -43,7 +43,7 @@ public: }; protected: - virtual void TickDraw(float seconds); + virtual void TickDraw(float seconds, Scene &scene); private: TextData *data; diff --git a/src/ticker.cpp b/src/ticker.cpp index 3fa86d81..b291cb4f 100644 --- a/src/ticker.cpp +++ b/src/ticker.cpp @@ -398,7 +398,7 @@ void TickerData::DrawThreadTick() e->GetName(), e); e->m_tickstate = Entity::STATE_PRETICK_DRAW; #endif - e->TickDraw(data->deltatime); + e->TickDraw(data->deltatime, *g_scene); #if !LOL_BUILD_RELEASE if (e->m_tickstate != Entity::STATE_POSTTICK_DRAW) Log::Error("entity %s [%p] missed super draw tick\n", diff --git a/src/tileset.cpp b/src/tileset.cpp index fc226ca0..d995e5a3 100644 --- a/src/tileset.cpp +++ b/src/tileset.cpp @@ -182,9 +182,9 @@ TileSet::~TileSet() delete m_data; } -void TileSet::TickDraw(float seconds) +void TileSet::TickDraw(float seconds, Scene &scene) { - Entity::TickDraw(seconds); + Entity::TickDraw(seconds, scene); if (IsDestroying()) { diff --git a/src/tileset.h b/src/tileset.h index c8e78534..b84e86a1 100644 --- a/src/tileset.h +++ b/src/tileset.h @@ -42,7 +42,7 @@ public: /* Inherited from Entity */ virtual char const *GetName(); protected: - virtual void TickDraw(float seconds); + virtual void TickDraw(float seconds, Scene &scene); public: /* New methods */ diff --git a/src/worldentity.cpp b/src/worldentity.cpp index 3b2a6b64..6ee1f175 100644 --- a/src/worldentity.cpp +++ b/src/worldentity.cpp @@ -46,9 +46,9 @@ void WorldEntity::TickGame(float seconds) Entity::TickGame(seconds); } -void WorldEntity::TickDraw(float seconds) +void WorldEntity::TickDraw(float seconds, Scene &scene) { - Entity::TickDraw(seconds); + Entity::TickDraw(seconds, scene); } } /* namespace lol */ diff --git a/src/worldentity.h b/src/worldentity.h index e68ec5d9..3ecae759 100644 --- a/src/worldentity.h +++ b/src/worldentity.h @@ -38,7 +38,7 @@ protected: virtual ~WorldEntity(); virtual void TickGame(float seconds); - virtual void TickDraw(float seconds); + virtual void TickDraw(float seconds, Scene &scene); }; } /* namespace lol */ diff --git a/test/btphystest.cpp b/test/btphystest.cpp index 7fbb1973..50777803 100644 --- a/test/btphystest.cpp +++ b/test/btphystest.cpp @@ -564,9 +564,9 @@ void BtPhysTest::TickGame(float seconds) #endif //USE_CHARACTER } -void BtPhysTest::TickDraw(float seconds) +void BtPhysTest::TickDraw(float seconds, Scene &scene) { - WorldEntity::TickDraw(seconds); + WorldEntity::TickDraw(seconds, scene); if (m_init_status != 2) return; diff --git a/test/btphystest.h b/test/btphystest.h index def68dae..524aeac6 100644 --- a/test/btphystest.h +++ b/test/btphystest.h @@ -39,7 +39,7 @@ public: protected: virtual void TickGame(float seconds); - virtual void TickDraw(float seconds); + virtual void TickDraw(float seconds, Scene &scene); void InitApp(); diff --git a/test/meshviewer.cpp b/test/meshviewer.cpp index d12a2d61..413cbe53 100644 --- a/test/meshviewer.cpp +++ b/test/meshviewer.cpp @@ -686,9 +686,9 @@ public: #endif //WINDOWS } - virtual void TickDraw(float seconds) + virtual void TickDraw(float seconds, Scene &scene) { - WorldEntity::TickDraw(seconds); + WorldEntity::TickDraw(seconds, scene); if (!m_init || !m_first_tick) return; @@ -824,12 +824,12 @@ public: //Camera projection mat4 new_proj = mat_obj_offset * mat_count_offset * mat_align * mat_count_scale * save_proj; m_camera->SetProjection(new_proj); - g_scene->AddPrimitive(*m_meshes[i].m1, m_mat); + scene.AddPrimitive(*m_meshes[i].m1, m_mat); g_renderer->Clear(ClearMask::Depth); } m_camera->SetProjection(save_proj); #else - g_scene->AddPrimitive(*m_meshes[i].m1, m_mat); + scene.AddPrimitive(*m_meshes[i].m1, m_mat); #endif //ALL_FEATURES } } @@ -839,7 +839,7 @@ public: { m_camera->SetProjection(mat_gizmo); if (m_ssetup->m_show_gizmo) - g_scene->AddPrimitive(*m_gizmos[GZ_Editor], m_mat); + scene.AddPrimitive(*m_gizmos[GZ_Editor], m_mat); if (m_ssetup->m_show_lights) { @@ -851,12 +851,12 @@ public: //dir light if (ltmp->GetType() == LightType::Directional) { - g_scene->AddPrimitive(*m_gizmos[GZ_LightPos], m_mat * inverse(local)); - g_scene->AddPrimitive(*m_gizmos[GZ_LightDir], inverse(world) * inverse(mat4::lookat(vec3::zero, -ltmp->GetPosition(), vec3::axis_y))); + scene.AddPrimitive(*m_gizmos[GZ_LightPos], m_mat * inverse(local)); + scene.AddPrimitive(*m_gizmos[GZ_LightDir], inverse(world) * inverse(mat4::lookat(vec3::zero, -ltmp->GetPosition(), vec3::axis_y))); } else //point light { - g_scene->AddPrimitive(*m_gizmos[GZ_LightPos], m_mat * local); + scene.AddPrimitive(*m_gizmos[GZ_LightPos], m_mat * local); } } } diff --git a/test/nacl_phystest.cpp b/test/nacl_phystest.cpp index 5a972e49..ca1430c8 100644 --- a/test/nacl_phystest.cpp +++ b/test/nacl_phystest.cpp @@ -80,9 +80,9 @@ void Nacl_PhysTest::TickGame(float seconds) Ticker::Shutdown(); } -void Nacl_PhysTest::TickDraw(float seconds) +void Nacl_PhysTest::TickDraw(float seconds, Scene &scene) { - WorldEntity::TickDraw(seconds); + WorldEntity::TickDraw(seconds, scene); if (!m_ready) { diff --git a/test/nacl_phystest.h b/test/nacl_phystest.h index d46581e1..64bad1f6 100644 --- a/test/nacl_phystest.h +++ b/test/nacl_phystest.h @@ -18,7 +18,7 @@ public: protected: virtual void TickGame(float seconds); - virtual void TickDraw(float seconds); + virtual void TickDraw(float seconds, Scene &scene); private: enum diff --git a/test/physicobject.h b/test/physicobject.h index 2d09dc50..7894217e 100644 --- a/test/physicobject.h +++ b/test/physicobject.h @@ -317,9 +317,9 @@ protected: WorldEntity::TickGame(seconds); } - virtual void TickDraw(float seconds) + virtual void TickDraw(float seconds, Scene &scene) { - WorldEntity::TickDraw(seconds); + WorldEntity::TickDraw(seconds, scene); #if CAT_MODE if (!m_is_phys || m_custom_shader) @@ -334,9 +334,9 @@ protected: else if (m_should_render) { if (m_is_character) - g_scene->AddPrimitive(m_mesh, m_character->GetTransform()); + scene.AddPrimitive(m_mesh, m_character->GetTransform()); else - g_scene->AddPrimitive(m_mesh, m_physics->GetTransform()); + scene.AddPrimitive(m_mesh, m_physics->GetTransform()); } } } diff --git a/test/xolotl/xolotl.cpp b/test/xolotl/xolotl.cpp index 041e5417..3d633816 100644 --- a/test/xolotl/xolotl.cpp +++ b/test/xolotl/xolotl.cpp @@ -44,7 +44,7 @@ public: } - virtual void TickDraw(float seconds) + virtual void TickDraw(float seconds, Scene &scene) { }