Search Results for

    Show / Hide Table of Contents

    Class EngineShaderParameters

    This class is responsible for providing data that is automatically linked to a constant buffer.

    Inheritance
    object
    DisposableObject
    EngineShaderParameters
    Implements
    IEngineShaderParameters
    Inherited Members
    DisposableObject.Disposed
    DisposableObject.Dispose()
    DisposableObject.Dispose(bool)
    Namespace: Evergine.Framework.Graphics.Effects
    Assembly: Evergine.Framework.dll
    Syntax
    public class EngineShaderParameters : DisposableObject, IEngineShaderParameters

    Constructors

    EngineShaderParameters(DrawContext)

    Initializes a new instance of the EngineShaderParameters class.

    Declaration
    public EngineShaderParameters(DrawContext drawContext)
    Parameters
    Type Name Description
    DrawContext drawContext

    The drawing context.

    Fields

    DrawContext

    The associated drawing context.

    Declaration
    public readonly DrawContext DrawContext
    Field Value
    Type Description
    DrawContext

    FlipYProjection

    Indicates if the framebuffer requires flipping the projection.

    Declaration
    public bool FlipYProjection
    Field Value
    Type Description
    bool

    Properties

    CameraAperture

    Gets the camera aperture.

    Declaration
    public float CameraAperture { get; }
    Property Value
    Type Description
    float

    CameraExposure

    Gets the camera exposure.

    Declaration
    public float CameraExposure { get; }
    Property Value
    Type Description
    float

    CameraFarPlane

    Gets the far plane of the camera.

    Declaration
    public float CameraFarPlane { get; }
    Property Value
    Type Description
    float

    CameraFocalDistance

    Gets the camera focal distance (used with DoF).

    Declaration
    public float CameraFocalDistance { get; }
    Property Value
    Type Description
    float

    CameraFocalLength

    Gets the camera's focal length.

    Declaration
    public float CameraFocalLength { get; }
    Property Value
    Type Description
    float

    CameraForward

    Gets the forward component of the camera's orientation.

    Declaration
    public Vector3 CameraForward { get; }
    Property Value
    Type Description
    Vector3

    CameraJitter

    Gets the current frame camera jitter.

    Declaration
    public Vector2 CameraJitter { get; }
    Property Value
    Type Description
    Vector2

    CameraNearPlane

    Gets the near plane of the camera.

    Declaration
    public float CameraNearPlane { get; }
    Property Value
    Type Description
    float

    CameraPosition

    Gets the position of the current camera.

    Declaration
    public Vector3 CameraPosition { get; }
    Property Value
    Type Description
    Vector3

    CameraPreviousJitter

    Gets the previous frame's camera jitter.

    Declaration
    public Vector2 CameraPreviousJitter { get; }
    Property Value
    Type Description
    Vector2

    CameraRight

    Gets the correct component of the camera orientation.

    Declaration
    public Vector3 CameraRight { get; }
    Property Value
    Type Description
    Vector3

    CameraUp

    Gets the upward component of the camera orientation.

    Declaration
    public Vector3 CameraUp { get; }
    Property Value
    Type Description
    Vector3

    DrawContextID

    Gets the drawcontext ID.

    Declaration
    public int DrawContextID { get; }
    Property Value
    Type Description
    int

    DrawContextViewIndex

    Gets the view index of this draw context. A draw context can contain several views (cascade shadow, point light shadows, reflection probe, etc.).

    Declaration
    public int DrawContextViewIndex { get; }
    Property Value
    Type Description
    int

    EV100

    Gets the Exposure Value at ISO 100.

    Declaration
    public float EV100 { get; set; }
    Property Value
    Type Description
    float

    Exposure

    Gets the camera exposure.

    Declaration
    public float Exposure { get; set; }
    Property Value
    Type Description
    float

    ForwardLightMask

    Gets the lighting mask used in Forward passes.

    Declaration
    public ulong ForwardLightMask { get; set; }
    Property Value
    Type Description
    ulong

    FrameID

    Gets the Frame ID.

    Declaration
    public long FrameID { get; }
    Property Value
    Type Description
    long

    IBLLuminance

    Gets the IBL luminance.

    Declaration
    public float IBLLuminance { get; set; }
    Property Value
    Type Description
    float

    IBLMipMapLevel

    Gets the IBL texture mipmap level.

    Declaration
    public uint IBLMipMapLevel { get; set; }
    Property Value
    Type Description
    uint

    IrradianceSHBufferSize

    Gets the size of the irradiance spherical harmonics buffer.

    Declaration
    public uint IrradianceSHBufferSize { get; set; }
    Property Value
    Type Description
    uint

    IrradianceSHPtr

    Gets the irradiance spherical harmonics buffer pointer.

    Declaration
    public nint IrradianceSHPtr { get; set; }
    Property Value
    Type Description
    nint

    LightBufferPtr

    Gets the light buffer pointer.

    Declaration
    public nint LightBufferPtr { get; set; }
    Property Value
    Type Description
    nint

    LightBufferSize

    Gets the size of the light buffer.

    Declaration
    public uint LightBufferSize { get; set; }
    Property Value
    Type Description
    uint

    LightCount

    Gets the number of lights.

    Declaration
    public uint LightCount { get; set; }
    Property Value
    Type Description
    uint

    MultiviewCount

    Gets the number of eyes that will be rendered.

    Declaration
    public int MultiviewCount { get; }
    Property Value
    Type Description
    int

    MultiviewPosition

    Gets the stereo camera view.

    Declaration
    public Vector4[] MultiviewPosition { get; }
    Property Value
    Type Description
    Vector4[]

    MultiviewProjection

    Gets the stereoscopic camera projection.

    Declaration
    public Matrix4x4[] MultiviewProjection { get; }
    Property Value
    Type Description
    Matrix4x4[]

    MultiviewView

    Gets the stereoscopic camera view.

    Declaration
    public Matrix4x4[] MultiviewView { get; }
    Property Value
    Type Description
    Matrix4x4[]

    MultiviewViewProjection

    Gets the stereo camera view projection.

    Declaration
    public Matrix4x4[] MultiviewViewProjection { get; }
    Property Value
    Type Description
    Matrix4x4[]

    MultiviewViewProjectionInverse

    Gets the stereo camera's view projection.

    Declaration
    public Matrix4x4[] MultiviewViewProjectionInverse { get; }
    Property Value
    Type Description
    Matrix4x4[]

    PreWorld

    Gets the pre-world value of the current render mesh.

    Declaration
    public Matrix4x4 PreWorld { get; set; }
    Property Value
    Type Description
    Matrix4x4

    PreviousViewProjection

    Gets the view projection value of the current camera from the previous frame.

    Declaration
    public Matrix4x4 PreviousViewProjection { get; }
    Property Value
    Type Description
    Matrix4x4

    Projection

    Gets the projection value of the current camera.

    Declaration
    public Matrix4x4 Projection { get; }
    Property Value
    Type Description
    Matrix4x4

    ProjectionInverse

    Gets the inverse projection value of the current camera.

    Declaration
    public Matrix4x4 ProjectionInverse { get; }
    Property Value
    Type Description
    Matrix4x4

    ShadowViewProjectionBufferPtr

    Gets the shadow view projection buffer pointer.

    Declaration
    public nint ShadowViewProjectionBufferPtr { get; set; }
    Property Value
    Type Description
    nint

    ShadowViewProjectionBufferSize

    Gets the size of the shadow view projection buffer.

    Declaration
    public uint ShadowViewProjectionBufferSize { get; set; }
    Property Value
    Type Description
    uint

    SkyboxTransform

    Gets the Skybox transform.

    Declaration
    public Matrix4x4 SkyboxTransform { get; }
    Property Value
    Type Description
    Matrix4x4

    SunColor

    Gets the color of the sun.

    Declaration
    public Vector3 SunColor { get; }
    Property Value
    Type Description
    Vector3

    SunDirection

    Gets the direction of the sun.

    Declaration
    public Vector3 SunDirection { get; }
    Property Value
    Type Description
    Vector3

    SunIntensity

    Gets the sunlight intensity.

    Declaration
    public float SunIntensity { get; }
    Property Value
    Type Description
    float

    Time

    Gets the elapsed time since the game started.

    Declaration
    public float Time { get; }
    Property Value
    Type Description
    float

    UnjitteredProjection

    Gets the unjittered projection value of the current camera.

    Declaration
    public Matrix4x4 UnjitteredProjection { get; }
    Property Value
    Type Description
    Matrix4x4

    UnjitteredViewProjection

    Gets the non-jittered view projection value of the current camera.

    Declaration
    public Matrix4x4 UnjitteredViewProjection { get; }
    Property Value
    Type Description
    Matrix4x4

    UnjitteredWorldViewProjection

    Gets the unjittered (TAA) world-view projection value of the current camera and mesh.

    Declaration
    public Matrix4x4 UnjitteredWorldViewProjection { get; }
    Property Value
    Type Description
    Matrix4x4

    View

    Gets the view value from the current camera.

    Declaration
    public Matrix4x4 View { get; }
    Property Value
    Type Description
    Matrix4x4

    ViewInverse

    Gets the inverse view value of the current camera.

    Declaration
    public Matrix4x4 ViewInverse { get; }
    Property Value
    Type Description
    Matrix4x4

    ViewProjection

    Gets the view-projection value of the current camera.

    Declaration
    public Matrix4x4 ViewProjection { get; }
    Property Value
    Type Description
    Matrix4x4

    ViewProjectionInverse

    Gets the inverse of the view projection value of the current camera.

    Declaration
    public Matrix4x4 ViewProjectionInverse { get; }
    Property Value
    Type Description
    Matrix4x4

    World

    Gets the world value of the current rendered mesh.

    Declaration
    public Matrix4x4 World { get; set; }
    Property Value
    Type Description
    Matrix4x4

    WorldInverse

    Gets the inverse world value of the current rendered mesh.

    Declaration
    public Matrix4x4 WorldInverse { get; }
    Property Value
    Type Description
    Matrix4x4

    WorldInverseTranspose

    Gets the world inverse transpose of the current mesh.

    Declaration
    public Matrix4x4 WorldInverseTranspose { get; }
    Property Value
    Type Description
    Matrix4x4

    WorldViewProjection

    Gets the world-view projection value of the current camera and mesh.

    Declaration
    public Matrix4x4 WorldViewProjection { get; }
    Property Value
    Type Description
    Matrix4x4

    Methods

    Destroy()

    Destroys all resources of this instance.

    Declaration
    protected override void Destroy()
    Overrides
    DisposableObject.Destroy()

    GetTexture(TextureSemantic, int)

    Gets the texture semantic and texture index.

    Declaration
    public Texture GetTexture(TextureInfo.TextureSemantic textureSemantic, int textureIndex)
    Parameters
    Type Name Description
    TextureInfo.TextureSemantic textureSemantic

    The texture semantic.

    int textureIndex

    The texture index.

    Returns
    Type Description
    Texture

    The framebuffer texture.

    Implements

    IEngineShaderParameters

    Extension Methods

    ReflectionHelper.GetMemberAssembly(object)
    ReflectionHelper.GetTypeName(object)
    In this article
    Back to top
    Generated by DocFX