Fixed area lights not displaying correctly.

This commit is contained in:
Leonardo Zide
2025-08-29 18:57:19 -07:00
parent b91acb1963
commit 228169d60d
2 changed files with 3 additions and 3 deletions
+1 -1
View File
@@ -1466,7 +1466,7 @@ void lcPropertiesWidget::SetLight(const std::vector<lcObject*>& Selection, lcObj
SpotBlenderRadius = Light->GetSpotBlenderRadius();
DirectionalBlenderAngle = Light->GetDirectionalBlenderAngle();
AreaSizeX = Light->GetAreaSizeX();
AreaSizeY = Light->GetAreaSizeX();
AreaSizeY = Light->GetAreaSizeY();
}
else
{
+2 -2
View File
@@ -819,7 +819,7 @@ void lcLight::DrawAreaLight(lcContext* Context) const
{
float Verts[4 * 3];
float* CurVert = Verts;
const lcVector2 Size = { mAreaSizeX, mAreaSizeY };
const lcVector2 Size = { mAreaSizeX, mAreaShape == lcLightAreaShape::Square ? mAreaSizeX : mAreaSizeY };
*CurVert++ = -Size.x / 2.0f;
*CurVert++ = -Size.y / 2.0f;
@@ -859,7 +859,7 @@ void lcLight::DrawAreaLight(lcContext* Context) const
for (int EdgeIndex = 0; EdgeIndex < CircleEdges; EdgeIndex++)
{
const lcVector2 Size = { mAreaSizeX, mAreaSizeY };
const lcVector2 Size = { mAreaSizeX, mAreaShape == lcLightAreaShape::Disk ? mAreaSizeX : mAreaSizeY };
float c = cosf((float)EdgeIndex / CircleEdges * LC_2PI) * Size.x / 2.0f;
float s = sinf((float)EdgeIndex / CircleEdges * LC_2PI) * Size.y / 2.0f;