From 95f46dbc23485b129bd427f436864a8d8f6e7820 Mon Sep 17 00:00:00 2001 From: Lioncache Date: Sun, 14 Dec 2025 02:09:32 -0500 Subject: [PATCH] CLight: Return by reference where applicable Prevents unnecessary copies. --- src/Core/Resource/CLight.h | 20 ++++++++++---------- src/Core/Scene/CSceneNode.cpp | 10 +++++----- 2 files changed, 15 insertions(+), 15 deletions(-) diff --git a/src/Core/Resource/CLight.h b/src/Core/Resource/CLight.h index 349ac42d..c9cf45e6 100644 --- a/src/Core/Resource/CLight.h +++ b/src/Core/Resource/CLight.h @@ -43,17 +43,17 @@ private: public: // Accessors - ELightType Type() const { return mType; } - uint32 LayerIndex() const { return mLayerIndex; } - CVector3f Position() const { return mPosition; } - CVector3f Direction() const { return mDirection; } - CColor Color() const { return mColor; } - CVector3f DistAttenuation() const { return mDistAttenCoefficients; } - CVector3f AngleAttenuation() const { return mAngleAttenCoefficients; } + ELightType Type() const { return mType; } + uint32 LayerIndex() const { return mLayerIndex; } + const CVector3f& Position() const { return mPosition; } + const CVector3f& Direction() const { return mDirection; } + const CColor& Color() const { return mColor; } + const CVector3f& DistAttenuation() const { return mDistAttenCoefficients; } + const CVector3f& AngleAttenuation() const { return mAngleAttenCoefficients; } - void SetLayer(uint32 Index) { mLayerIndex = Index; } - void SetPosition(const CVector3f& rkPosition) { mPosition = rkPosition; } - void SetDirection(const CVector3f& rkDirection) { mDirection = rkDirection; } + void SetLayer(uint32 Index) { mLayerIndex = Index; } + void SetPosition(const CVector3f& rkPosition) { mPosition = rkPosition; } + void SetDirection(const CVector3f& rkDirection) { mDirection = rkDirection; } float GetRadius() const; float GetIntensity() const; diff --git a/src/Core/Scene/CSceneNode.cpp b/src/Core/Scene/CSceneNode.cpp index bd8377aa..d0320f4d 100644 --- a/src/Core/Scene/CSceneNode.cpp +++ b/src/Core/Scene/CSceneNode.cpp @@ -126,14 +126,14 @@ void CSceneNode::BuildLightList(CGameArea *pArea) Index = 0; struct SLightEntry { - CLight *pLight; + CLight* pLight; float Distance; - SLightEntry(CLight *_pLight, float _Distance) - : pLight(_pLight), Distance(_Distance) {} + SLightEntry(CLight* pLight_, float Distance_) + : pLight(pLight_), Distance(Distance_) {} bool operator<(const SLightEntry& rkOther) const { - return (Distance < rkOther.Distance); + return Distance < rkOther.Distance; } }; std::vector LightEntries; @@ -159,7 +159,7 @@ void CSceneNode::BuildLightList(CGameArea *pArea) if (IsInRange) { const float Dist = mPosition.Distance(pLight->Position()); - LightEntries.push_back(SLightEntry(pLight, Dist)); + LightEntries.emplace_back(pLight, Dist); } } }