Documentation
¶
Overview ¶
ProceduralSkyMaterial provides a way to create an effective background quickly by defining procedural parameters for the sun, the sky and the ground. The sky and ground are defined by a main color, a color at the horizon, and an easing curve to interpolate between them. Suns are described by a position in the sky, a color, and a max angle from the sun at which the easing curve ends. The max angle therefore defines the size of the sun in the sky.
ProceduralSkyMaterial supports up to 4 suns, using the color, and energy, direction, and angular distance of the first four DirectionalLight3D nodes in the scene. This means that the suns are defined individually by the properties of their corresponding DirectionalLight3Ds and globally by SunAngleMax and SunCurve.
ProceduralSkyMaterial uses a lightweight shader to draw the sky and is therefore suited for real-time updates. This makes it a great option for a sky that is simple and computationally cheap, but unrealistic. If you need a more realistic procedural option, use PhysicalSkyMaterial.
Index ¶
- type Advanced
- type Any
- type Extension
- type ID
- type Instance
- func (self Instance) AsMaterial() Material.Instance
- func (self Instance) AsObject() [1]gd.Object
- func (self Instance) AsProceduralSkyMaterial() Instance
- func (self Instance) AsRefCounted() [1]gd.RefCounted
- func (self Instance) AsResource() Resource.Instance
- func (self Instance) EnergyMultiplier() Float.X
- func (self Instance) GroundBottomColor() Color.RGBA
- func (self Instance) GroundCurve() Float.X
- func (self Instance) GroundEnergyMultiplier() Float.X
- func (self Instance) GroundHorizonColor() Color.RGBA
- func (self Instance) ID() ID
- func (self Instance) SetEnergyMultiplier(value Float.X)
- func (self Instance) SetGroundBottomColor(value Color.RGBA)
- func (self Instance) SetGroundCurve(value Float.X)
- func (self Instance) SetGroundEnergyMultiplier(value Float.X)
- func (self Instance) SetGroundHorizonColor(value Color.RGBA)
- func (self *Instance) SetObject(obj [1]gd.Object) bool
- func (self Instance) SetSkyCover(value Texture2D.Instance)
- func (self Instance) SetSkyCoverModulate(value Color.RGBA)
- func (self Instance) SetSkyCurve(value Float.X)
- func (self Instance) SetSkyEnergyMultiplier(value Float.X)
- func (self Instance) SetSkyHorizonColor(value Color.RGBA)
- func (self Instance) SetSkyTopColor(value Color.RGBA)
- func (self Instance) SetSunAngleMax(value Angle.Radians)
- func (self Instance) SetSunCurve(value Float.X)
- func (self Instance) SetUseDebanding(value bool)
- func (self Instance) SkyCover() Texture2D.Instance
- func (self Instance) SkyCoverModulate() Color.RGBA
- func (self Instance) SkyCurve() Float.X
- func (self Instance) SkyEnergyMultiplier() Float.X
- func (self Instance) SkyHorizonColor() Color.RGBA
- func (self Instance) SkyTopColor() Color.RGBA
- func (self Instance) SunAngleMax() Angle.Radians
- func (self Instance) SunCurve() Float.X
- func (self Instance) UseDebanding() bool
- func (self Instance) Virtual(name string) reflect.Value
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Advanced ¶
type Advanced = class
Advanced exposes a 1:1 low-level instance of the class, undocumented, for those who know what they are doing.
type Extension ¶
Extension can be embedded in a new struct to create an extension of this class. T should be the type that is embedding this Extension
func (*Extension[T]) AsMaterial ¶
func (*Extension[T]) AsProceduralSkyMaterial ¶
func (*Extension[T]) AsRefCounted ¶
func (self *Extension[T]) AsRefCounted() [1]gd.RefCounted
func (*Extension[T]) AsResource ¶
type ID ¶
ID is a typed object ID (reference) to an instance of this class, use it to store references to objects with unknown lifetimes, as an ID will not panic on use if the underlying object has been destroyed.
type Instance ¶
type Instance [1]gdclass.ProceduralSkyMaterial
Instance of the class with convieniently typed arguments and results.
var Nil Instance
Nil is a nil/null instance of the class. Equivalent to the zero value.
func (Instance) AsMaterial ¶
func (Instance) AsProceduralSkyMaterial ¶
func (Instance) AsRefCounted ¶
func (self Instance) AsRefCounted() [1]gd.RefCounted
func (Instance) AsResource ¶
func (Instance) EnergyMultiplier ¶
The sky's overall brightness multiplier. Higher values result in a brighter sky.
func (Instance) GroundBottomColor ¶
Color of the ground at the bottom. Blends with GroundHorizonColor.
func (Instance) GroundCurve ¶
How quickly the GroundHorizonColor fades into the GroundBottomColor.
func (Instance) GroundEnergyMultiplier ¶
Multiplier for ground color. A higher value will make the ground brighter.
func (Instance) GroundHorizonColor ¶
Color of the ground at the horizon. Blends with GroundBottomColor.
func (Instance) SetEnergyMultiplier ¶
SetEnergyMultiplier sets the property returned by [GetEnergyMultiplier].
func (Instance) SetGroundBottomColor ¶
SetGroundBottomColor sets the property returned by [GetGroundBottomColor].
func (Instance) SetGroundCurve ¶
SetGroundCurve sets the property returned by [GetGroundCurve].
func (Instance) SetGroundEnergyMultiplier ¶
SetGroundEnergyMultiplier sets the property returned by [GetGroundEnergyMultiplier].
func (Instance) SetGroundHorizonColor ¶
SetGroundHorizonColor sets the property returned by [GetGroundHorizonColor].
func (Instance) SetSkyCover ¶
SetSkyCover sets the property returned by [GetSkyCover].
func (Instance) SetSkyCoverModulate ¶
SetSkyCoverModulate sets the property returned by [GetSkyCoverModulate].
func (Instance) SetSkyCurve ¶
SetSkyCurve sets the property returned by [GetSkyCurve].
func (Instance) SetSkyEnergyMultiplier ¶
SetSkyEnergyMultiplier sets the property returned by [GetSkyEnergyMultiplier].
func (Instance) SetSkyHorizonColor ¶
SetSkyHorizonColor sets the property returned by [GetSkyHorizonColor].
func (Instance) SetSkyTopColor ¶
SetSkyTopColor sets the property returned by [GetSkyTopColor].
func (Instance) SetSunAngleMax ¶
SetSunAngleMax sets the property returned by [GetSunAngleMax].
func (Instance) SetSunCurve ¶
SetSunCurve sets the property returned by [GetSunCurve].
func (Instance) SetUseDebanding ¶
SetUseDebanding sets the property returned by [GetUseDebanding].
func (Instance) SkyCover ¶
The sky cover texture to use. This texture must use an equirectangular projection (similar to PanoramaSkyMaterial). The texture's colors will be added to the existing sky color, and will be multiplied by SkyEnergyMultiplier and SkyCoverModulate. This is mainly suited to displaying stars at night, but it can also be used to display clouds at day or night (with a non-physically-accurate look).
func (Instance) SkyCoverModulate ¶
The tint to apply to the SkyCover texture. This can be used to change the sky cover's colors or opacity independently of the sky energy, which is useful for day/night or weather transitions. Only effective if a texture is defined in SkyCover.
func (Instance) SkyCurve ¶
How quickly the SkyHorizonColor fades into the SkyTopColor.
func (Instance) SkyEnergyMultiplier ¶
Multiplier for sky color. A higher value will make the sky brighter.
func (Instance) SkyHorizonColor ¶
Color of the sky at the horizon. Blends with SkyTopColor.
func (Instance) SkyTopColor ¶
Color of the sky at the top. Blends with SkyHorizonColor.
func (Instance) SunAngleMax ¶
Distance from center of sun where it fades out completely.
func (Instance) SunCurve ¶
How quickly the sun fades away between the edge of the sun disk and SunAngleMax.
func (Instance) UseDebanding ¶
If true, enables debanding. Debanding adds a small amount of noise which helps reduce banding that appears from the smooth changes in color in the sky.