Abstract base class for IEnvironmentMap implementations.
abstract class
|
EnvironmentMap
|
implements
|
IEnvironmentMap
|
||
extends
|
VersionedBase
|
||||
base of
|
EnvironmentMapImage
|
||||
EnvironmentMapSky
|
|||||
EnvironmentMapTransform
|
Should hemispheric fog be used for this environment map?
public
abstract
property
|
HasHemisphericFog
{
get
}
|
||
type
|
bool
|
||
value
|
true
if
hemispheric
fog
should
be
used,
false
if
not. |
||
implements
|
IEnvironmentMap.HasHemisphericFog
|
Latitude of the prominent light in this environment map, if applicable.
public
virtual
property
|
LightLatitude
{
get
}
|
||
type
|
float64
|
||
value
|
|
The latitude angle in degrees or NanD if there is no prominent light. | |
implements
|
ILightProvider.LightLatitude
|
Longitude of the prominent light in this environment map, if applicable.
public
virtual
property
|
LightLongitude
{
get
}
|
||
type
|
float64
|
||
value
|
|
The longitude angle in degrees or NanD if there is no prominent light. | |
implements
|
ILightProvider.LightLongitude
|
Apparent size of prominent light in this environment map, if applicable.
public
virtual
property
|
LightSize
{
get
}
|
||
type
|
float64
|
||
value
|
|
The apparent diameter of the prominent light, given as an angle in degrees. Will be NanD if there is no prominent light. | |
implements
|
ILightProvider.LightSize
|
Can the SetLight method be used to configure the prominent light?
public
virtual
property
|
SetLightMask
{
get
}
|
||
type
|
int32
|
||
value
|
Zero
or
more
of
the
following
bits:
1 :
LightLatitude
can
be
configured.
2 :
LightLongitude
can
be
configured.
4 :
LightSize
can
be
configured.
|
||
implements
|
ILightProvider.SetLightMask
|
Returns the current version of object.
public
property
|
Version
{
get
}
|
||
type
|
int32
|
||
value
|
The current version number. | ||
inherited
|
VersionedBase.Version
|
Remarks:
For each modification, the version is incremented by at least one.
Computes the environment color at the given coordinates.
[Pure]
|
||||
public
abstract
method
|
ComputeEnvironmentColor
(float64 latitude,
float64 longitude)
|
|||
type
|
int64
|
|||
params
|
latitude
|
The latitude angle of the view direction, in the range [-90..90] degrees. The vertical center of the environment map is at 0° latitude.. The zenith is at 90° latitude. | ||
longitude
|
The longitude angle of the view direction, in the range [-180..180] degrees. The horizontal center of the environment map is at 0° longitude. | |||
returns
|
The computed environment map color. | |||
implements
|
IEnvironmentMap.ComputeEnvironmentColor
|
See also:
ColorsCreates a new resource object, using the given graphics context.
[OwnerReturn]
|
||||
public
method
|
CreateResource
(Graphics graphics)
|
|||
type
|
IResource
|
|||
params
|
graphics
|
[not-null]
|
The graphics context to use. | |
returns
|
The
resource
object
or
null . |
|||
implements
|
IResourceHandle.CreateResource
|
Remarks:
Resource objects may implement the IMemoryConsumption interface. In this case, the reported memory consumption will be interpreted as an estimate on how much GPU memory is consumed by the resource. This estimate can then be used for resource caching (e.g. CacheMemory).
Compares this object with the given one.
[Pure]
|
||||
public
method
|
Equals
(IResourceHandle other)
|
|||
type
|
bool
|
|||
params
|
other
|
The object to compare to. | ||
returns
|
true
if
this
object
is
equal
to
other,
false
if
not.
|
|||
implements
|
IEquatable.Equals
|
[Pure]
|
||||
public
override
sealed
method
|
GetHashCode
()
|
|||
type
|
int32
|
Computes the direction vector of a light in this environment map.
[Pure]
|
||||
public
static
method
|
LightVector
(float64 latitude,
float64 longitude)
|
|||
type
|
Vec3D
|
|||
params
|
latitude
|
The latitude angle of the light, in the range [-90..90] degrees. | ||
longitude
|
The longitude angle of the light, in the range [-180..180] degrees. | |||
returns
|
The unit-length light direction vector, in world-space. |
Configures the prominent light.
public
virtual
method
|
SetLight
(float64 latitude,
float64 longitude,
float64 size)
|
||
params
|
latitude
|
Latitude of the prominent light in this environment map (see LightLatitude). | |
longitude
|
Longitude of the prominent light in this environment map (see LightLongitude). | ||
size
|
Apparent size of prominent light in this environment map, in degrees (see LightSize). | ||
implements
|
ILightProvider.SetLight
|
Returns the version of aggregated objects, which will be added to the current version of this object.
[EmptyBody]
|
||||
protected
virtual
property
|
VersionAggregated
{
get
}
|
|||
type
|
int32
|
|||
value
|
The aggregated version. | |||
inherited
|
VersionedBase.VersionAggregated
|
Creates a new instance of EnvironmentMap.
protected
constructor
|
EnvironmentMap
()
|
Increments the version of this object.
protected
method
|
VersionIncrement
()
|
||
inherited
|
VersionedBase.VersionIncrement
|