2
0
mirror of https://github.com/AxioDL/metaforce.git synced 2025-12-09 17:47:43 +00:00

initial CGraphics class

This commit is contained in:
Jack Andersen
2016-02-11 16:36:34 -10:00
parent 93f8ae8905
commit 43a818d1a3
6 changed files with 122 additions and 3 deletions

View File

@@ -1,6 +1,5 @@
#include "CElementGen.hpp"
#include "CGenDescription.hpp"
#include "CLight.hpp"
#include "CParticleGlobals.hpp"
#include "CParticleSwoosh.hpp"
#include "CParticleElectric.hpp"
@@ -925,6 +924,48 @@ u32 CElementGen::GetSystemCount()
}
void CElementGen::Render()
{
CGenDescription* desc = x1c_genDesc.CastObj<CGenDescription>();
x22c_backupLightActive = CGraphics::g_LightActive;
CGraphics::DisableAllLights();
for (std::unique_ptr<CElementGen>& child : x234_activePartChildren)
child->Render();
if (x214_PSLT <= x50_curFrame)
for (std::unique_ptr<CElementGen>& child : x248_finishPartChildren)
child->Render();
for (std::unique_ptr<CParticleSwoosh>& child : x260_swhcChildren)
child->Render();
for (std::unique_ptr<CParticleElectric>& child : x280_elscChildren)
child->Render();
if (x2c_particleLists.size())
{
SParticleModel& pmdl = desc->x5c_PMDL;
if (pmdl.m_found || desc->x45_24_PMUS)
RenderModels();
if (x225_26_LINE)
RenderLines();
else
RenderParticles();
}
}
void CElementGen::RenderModels()
{
}
void CElementGen::RenderLines()
{
}
void CElementGen::RenderParticles()
{
}