gh::Light Light::createAmbientLight( const RGBA& newColor ) { Light toReturn; toReturn.m_Color = newColor.AsVector3(); return toReturn; }
gh::Light Light::createDirectionalLight( const RGBA& newColor, const Vector3& newDirection ) { Light toReturn; toReturn.m_Color = newColor.AsVector3(); toReturn.m_Direction = newDirection; toReturn.m_Direction.normalize(); toReturn.isDirectional = 1.f; return toReturn; }
gh::Light Light::createPointLight( const RGBA& newColor, const Vector3& newLocation, float newInnerRadius, float newOuterRadius ) { Light toReturn; toReturn.m_Color = newColor.AsVector3(); toReturn.m_Location = newLocation; toReturn.innerRadius = newInnerRadius; toReturn.outerRadius = newOuterRadius; toReturn.isPoint = 1.f; return toReturn; }
gh::Light Light::createSpotlight( const RGBA& newColor, const Vector3& newLocation, const Vector3& newDirection, float newInnerRadius, float newOuterRadius, float newInnerDot, float newOuterDot ) { Light toReturn; toReturn.m_Color = newColor.AsVector3(); toReturn.m_Location = newLocation; toReturn.m_Direction = newDirection; toReturn.m_Direction.normalize(); toReturn.innerRadius = newInnerRadius; toReturn.outerRadius = newOuterRadius; toReturn.innerDot = newInnerDot; toReturn.outerDot = newOuterDot; return toReturn; }