AI-generated Key Takeaways
-
The
Lightclass in Sceneform manages light properties for rendering in AR scenes. -
It offers different light types like directional, point, and spot, configurable via a builder.
-
Developers can control properties such as color, intensity, falloff radius, and cone angles.
-
Lightsupports shadow casting, enhancing scene realism with dynamic shadows. -
It provides methods to retrieve the current state of the light's properties.
Light property store.
Nested Classes
| class | Light.Builder | Factory class for Light |
|
| enum | Light.Type | Type of Light Source | |
Public Methods
| static Light.Builder | |
| Color | |
| float |
getFalloffRadius()
Get the falloff radius of the light.
|
| float |
getInnerConeAngle()
Get the inner cone angle for spotlights.
|
| float |
getIntensity()
Get the intensity of the light.
|
| float |
getOuterConeAngle()
Get the outer cone angle for spotlights.
|
| Light.Type |
getType()
Get the light
Light.Type. |
| boolean |
isShadowCastingEnabled()
Returns true if the light has shadow casting enabled.
|
| void | |
| void |
setColorTemperature(float temperature)
Sets the "RGB" color of the light based on the desired "color temperature."
|
| void |
setFalloffRadius(float falloffRadius)
Sets the range that the light intensity falls off to zero.
|
| void |
setInnerConeAngle(float coneInner)
Spotlights shine light in a cone, this value determines the size of the inner part of the cone.
|
| void |
setIntensity(float intensity)
Sets the light intensity which determines how bright the light is in Lux (lx) or Lumens (lm)
(depending on the light type).
|
| void |
setOuterConeAngle(float coneOuter)
Spotlights shine light in a cone, this value determines the size of the outer part of the cone.
|
Inherited Methods
Public Methods
public static Light.Builder builder (Light.Type type)
Constructs a default light, if nothing else is set
Parameters
| type |
|---|
public float getFalloffRadius ()
Get the falloff radius of the light.
public float getInnerConeAngle ()
Get the inner cone angle for spotlights.
public float getIntensity ()
Get the intensity of the light.
public float getOuterConeAngle ()
Get the outer cone angle for spotlights.
public boolean isShadowCastingEnabled ()
Returns true if the light has shadow casting enabled.
public void setColor (Color color)
Sets the "RGB" color of the light. Note that intensity is a separate parameter, so you should set the pure color (i.e. each channel is in the [0,1] range). However setting values outside that range is valid.
Parameters
| color | "RGB" color, the default is 0xffffffff |
|---|
public void setColorTemperature (float temperature)
Sets the "RGB" color of the light based on the desired "color temperature."
Parameters
| temperature | color temperature in Kelvin on a scale from 1,000 to 10,000K. Typical commercial and residential lighting falls somewhere in the 2000K to 6500K range. |
|---|
public void setFalloffRadius (float falloffRadius)
Sets the range that the light intensity falls off to zero. This has no affect on the DIRECTIONAL type.
Parameters
| falloffRadius | the light radius in world units, default is 10.0 |
|---|
public void setInnerConeAngle (float coneInner)
Spotlights shine light in a cone, this value determines the size of the inner part of the cone. The intensity is interpolated between the inner and outer cone angles - meaning if they are the same than the cone is perfectly sharp. Generally you will want the inner cone to be smaller than the outer cone to avoid aliasing.
Parameters
| coneInner | inner cone angle in radians, default 0.5 |
|---|
public void setIntensity (float intensity)
Sets the light intensity which determines how bright the light is in Lux (lx) or Lumens (lm) (depending on the light type). Larger values produce brighter lights and near zero values generate very little light. A household light bulb will generally have an intensity between 800 - 2500 lm whereas sunlight will be around 120,000 lx. There is no absolute upper bound but values larger than sunlight (120,000 lx) are generally not needed.
Parameters
| intensity | the intensity of the light, values greater than one are valid. The intensity will be clamped and cannot be zero or negative. For directional lights the default is 420 lx. For other other lights the default is 2500 lm. |
|---|
public void setOuterConeAngle (float coneOuter)
Spotlights shine light in a cone, this value determines the size of the outer part of the cone. The intensity is interpolated between the inner and outer cone angles - meaning if they are the same than the cone is perfectly sharp. Generally you will want the inner cone to be smaller than the outer cone to avoid aliasing.
Parameters
| coneOuter | outer cone angle in radians, default is 0.6 |
|---|