Making CColor use floats instead of u8s

This commit is contained in:
parax0
2015-12-16 03:28:40 -07:00
parent f11a8b938b
commit 6b8966f0b9
24 changed files with 267 additions and 269 deletions

View File

@@ -41,16 +41,16 @@ void CModelNode::Draw(ERenderOptions Options, int ComponentIndex, const SViewInf
{
CGraphics::SetDefaultLighting();
CGraphics::UpdateLightBlock();
CGraphics::sVertexBlock.COLOR0_Amb = CGraphics::skDefaultAmbientColor.ToVector4f();
CGraphics::sVertexBlock.COLOR0_Amb = CGraphics::skDefaultAmbientColor;
}
else
{
CGraphics::sNumLights = 0;
CGraphics::sVertexBlock.COLOR0_Amb = CColor::skBlack.ToVector4f();
CGraphics::sVertexBlock.COLOR0_Amb = CColor::skBlack;
}
CGraphics::sPixelBlock.TevColor = CVector4f(1,1,1,1);
CGraphics::sPixelBlock.TintColor = TintColor(ViewInfo).ToVector4f();
CGraphics::sPixelBlock.TevColor = CColor::skWhite;
CGraphics::sPixelBlock.TintColor = TintColor(ViewInfo);
LoadModelMatrix();
if (ComponentIndex < 0)

View File

@@ -182,27 +182,28 @@ void CSceneNode::BuildLightList(CGameArea *pArea)
void CSceneNode::LoadLights(const SViewInfo& ViewInfo)
{
CGraphics::sNumLights = 0;
CGraphics::ELightingMode Mode = (ViewInfo.GameMode ? CGraphics::eWorldLighting : CGraphics::sLightMode);
if (CGraphics::sLightMode == CGraphics::eWorldLighting || ViewInfo.GameMode)
switch (Mode)
{
case CGraphics::eNoLighting:
// No lighting: default ambient color, no dynamic lights
CGraphics::sVertexBlock.COLOR0_Amb = CGraphics::skDefaultAmbientColor;
break;
case CGraphics::eBasicLighting:
// Basic lighting: default ambient color, default dynamic lights
CGraphics::SetDefaultLighting();
CGraphics::sVertexBlock.COLOR0_Amb = CGraphics::skDefaultAmbientColor;
break;
case CGraphics::eWorldLighting:
// World lighting: world ambient color, node dynamic lights
CGraphics::sVertexBlock.COLOR0_Amb = mAmbientColor.ToVector4f();
CGraphics::sVertexBlock.COLOR0_Amb = mAmbientColor;
for (u32 iLight = 0; iLight < mLightCount; iLight++)
mLights[iLight]->Load();
}
else if (CGraphics::sLightMode == CGraphics::eBasicLighting)
{
// Basic lighting: default ambient color, default dynamic lights
CGraphics::SetDefaultLighting();
CGraphics::sVertexBlock.COLOR0_Amb = CGraphics::skDefaultAmbientColor.ToVector4f();
}
else if (CGraphics::sLightMode == CGraphics::eNoLighting)
{
// No lighting: default ambient color, no dynamic lights
CGraphics::sVertexBlock.COLOR0_Amb = CGraphics::skDefaultAmbientColor.ToVector4f();
break;
}
CGraphics::UpdateLightBlock();

View File

@@ -163,9 +163,9 @@ void CScriptNode::Draw(ERenderOptions Options, int ComponentIndex, const SViewIn
// Draw model if possible!
if (mpActiveModel)
{
if (mpExtra) CGraphics::sPixelBlock.TevColor = mpExtra->TevColor().ToVector4f();
else CGraphics::sPixelBlock.TevColor = CColor::skWhite.ToVector4f();
CGraphics::sPixelBlock.TintColor = TintColor(ViewInfo).ToVector4f();
if (mpExtra) CGraphics::sPixelBlock.TevColor = mpExtra->TevColor();
else CGraphics::sPixelBlock.TevColor = CColor::skWhite;
CGraphics::sPixelBlock.TintColor = TintColor(ViewInfo);
CGraphics::UpdatePixelBlock();
if (ComponentIndex < 0)
@@ -447,7 +447,7 @@ void CScriptNode::GeneratePosition()
CColor CScriptNode::WireframeColor() const
{
return CColor((u8) 12, 135, 194, 255);
return CColor::Integral(12, 135, 194);
}
CScriptObject* CScriptNode::Object() const

View File

@@ -48,10 +48,10 @@ void CStaticNode::Draw(ERenderOptions Options, int ComponentIndex, const SViewIn
{
if (!mpModel) return;
CGraphics::sVertexBlock.COLOR0_Amb = CVector4f(0, 0, 0, 1);
float Multiplier = CGraphics::sWorldLightMultiplier;
CGraphics::sPixelBlock.TevColor = CVector4f(Multiplier,Multiplier,Multiplier,1);
CGraphics::sPixelBlock.TintColor = TintColor(ViewInfo).ToVector4f();
CGraphics::sVertexBlock.COLOR0_Amb = CColor::skBlack;
float Mul = CGraphics::sWorldLightMultiplier;
CGraphics::sPixelBlock.TevColor = CColor(Mul,Mul,Mul);
CGraphics::sPixelBlock.TintColor = TintColor(ViewInfo);
CGraphics::sNumLights = 0;
CGraphics::UpdateLightBlock();
LoadModelMatrix();