Renamed vars and added some comments.
This commit is contained in:
@@ -24,12 +24,13 @@ public:
|
|||||||
}
|
}
|
||||||
|
|
||||||
template <typename T, typename... Arguments>
|
template <typename T, typename... Arguments>
|
||||||
void AddSystem(int updateOrderPriority, Arguments... args)
|
//All systems with orderlevel 0 will be updated first, then 1, 2, etc.
|
||||||
|
void AddSystem(int updateOrderLevel, Arguments... args)
|
||||||
{
|
{
|
||||||
if (updateOrderPriority + 1 > m_OrderedSystemGroups.size()) {
|
if (updateOrderLevel + 1 > m_OrderedSystemGroups.size()) {
|
||||||
m_OrderedSystemGroups.resize(updateOrderPriority + 1);
|
m_OrderedSystemGroups.resize(updateOrderLevel + 1);
|
||||||
}
|
}
|
||||||
UnorderedSystems& group = m_OrderedSystemGroups[updateOrderPriority];
|
UnorderedSystems& group = m_OrderedSystemGroups[updateOrderLevel];
|
||||||
System* system = new T(m_EventBroker, args...);
|
System* system = new T(m_EventBroker, args...);
|
||||||
group.Systems[typeid(T).name()] = system;
|
group.Systems[typeid(T).name()] = system;
|
||||||
|
|
||||||
|
|||||||
@@ -4,8 +4,6 @@
|
|||||||
|
|
||||||
void CollisionSystem::UpdateComponent(World * world, ComponentWrapper & cAABB, double dt)
|
void CollisionSystem::UpdateComponent(World * world, ComponentWrapper & cAABB, double dt)
|
||||||
{
|
{
|
||||||
//TODO: Update CollisionSystem system after PlayerSystem.
|
|
||||||
|
|
||||||
//Right now, cAABB is a component attached to any entity that should be collideable.
|
//Right now, cAABB is a component attached to any entity that should be collideable.
|
||||||
AABB thisBox;
|
AABB thisBox;
|
||||||
if (!Collision::GetEntityBox(world, cAABB, thisBox)) {
|
if (!Collision::GetEntityBox(world, cAABB, thisBox)) {
|
||||||
|
|||||||
+9
-7
@@ -52,15 +52,17 @@ Game::Game(int argc, char* argv[])
|
|||||||
|
|
||||||
// Create system pipeline
|
// Create system pipeline
|
||||||
m_SystemPipeline = new SystemPipeline(m_EventBroker);
|
m_SystemPipeline = new SystemPipeline(m_EventBroker);
|
||||||
unsigned int updateOrderPriority = 0;
|
|
||||||
m_SystemPipeline->AddSystem<RaptorCopterSystem>(updateOrderPriority);
|
//All systems with orderlevel 0 will be updated first.
|
||||||
m_SystemPipeline->AddSystem<PlayerSystem>(updateOrderPriority);
|
unsigned int updateOrderLevel = 0;
|
||||||
m_SystemPipeline->AddSystem<EditorSystem>(updateOrderPriority, m_Renderer);
|
m_SystemPipeline->AddSystem<RaptorCopterSystem>(updateOrderLevel);
|
||||||
|
m_SystemPipeline->AddSystem<PlayerSystem>(updateOrderLevel);
|
||||||
|
m_SystemPipeline->AddSystem<EditorSystem>(updateOrderLevel, m_Renderer);
|
||||||
|
|
||||||
//Collision and TriggerSystem should update after player.
|
//Collision and TriggerSystem should update after player.
|
||||||
++updateOrderPriority;
|
++updateOrderLevel;
|
||||||
m_SystemPipeline->AddSystem<CollisionSystem>(updateOrderPriority);
|
m_SystemPipeline->AddSystem<CollisionSystem>(updateOrderLevel);
|
||||||
m_SystemPipeline->AddSystem<TriggerSystem>(updateOrderPriority);
|
m_SystemPipeline->AddSystem<TriggerSystem>(updateOrderLevel);
|
||||||
|
|
||||||
m_LastTime = glfwGetTime();
|
m_LastTime = glfwGetTime();
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user