Vixen
02b45cc4
csharp
public sealed class RenderView

One thing being rendered from: a camera, a shadow cascade, a reflection probe face.

No guide page documents this yet — the page shows what the code says about itself.

Remarks

A view is not a camera. A frame has one main camera and a dozen views — four shadow cascades, six probe faces, a UI overlay — and they differ only in a frustum and a set of stages. Making the shadow renderer build a "camera" would be modelling the shadow map as a thing the game can see through, which it is not.

Which stages a view wants is a mask rather than a list for the reason RenderStageMask gives: culling asks the question once per object per view, and a shadow view wanting only ShadowCaster is what stops it walking the UI.

Fields and properties (10)

  • public string Name

    The view's name, for logging and profiling.

  • public RenderStageMask Stages

    The stages this view collects work from.

  • public Vector3 Position

    Where the view is, which is what depth sorting measures from.

  • public BoundingFrustum Frustum

    What the view can see.

  • public Matrix4x4 ViewProjection

    The matrix that takes a world position to this view's clip space.

  • public RenderCamera? Camera

    How this view's projection was built, for the things that need more than the matrix.

  • public Matrix4x4 PreviousViewProjection

    Where this view was looking last frame, which is what a motion vector is measured against.

  • public int Index

    The view's index within the frame, assigned by RenderSystem.

  • public float MaximumDistance

    Objects beyond this distance are culled, whatever the frustum says. Zero disables it.

  • public float ScreenHeightScale

    Multiply by radius / distance to get the fraction of the viewport's height an object covers. Zero disables screen-size work — LOD selection — for this view.

Methods (3)

  • public RenderView(string name)

    One thing being rendered from: a camera, a shadow cascade, a reflection probe face.

  • public void Advance()

    Moves this frame's matrix into PreviousViewProjection.

  • public override string ToString()

    Returns a string that represents the current object.

Used by (102, showing 40)

  • ArenaThirdPersonShooter
  • FrameDocumentTestsThirdPersonShooter.Frame.Tests
  • VirtualGeometryGameVirtualGeometry
  • AmbientOcclusionRendererVixen.Rendering.PostFx
  • AppGraphicsVixen.App.Hosting
  • BinVixen.Rendering
  • BindlessFrameTestsVixen.Rendering.Tests
  • CameraExtractionSystemVixen.Rendering
  • CameraExtractionTestsVixen.Rendering.Tests
  • ClusterResolveTestsVixen.Rendering.Tests
  • ClusterTraversalAcceptsTestsVixen.Rendering.Tests
  • ClusterTraversalGroupTestsVixen.Rendering.Tests
  • ClusteredLightingTestsVixen.Rendering.Tests
  • ClusteredShadingDeviceTestsVixen.Graphics.Golden.Tests
  • CompositorAssetTestsVixen.Rendering.Tests
  • CompositorBuilderVixen.Rendering
  • CompositorImageTestsVixen.Graphics.Golden.Tests
  • CullJobVixen.Rendering
  • DepthOfFieldRendererVixen.Rendering.PostFx
  • DepthPrepassTestsVixen.Rendering.Tests
  • DescriptorBindingTestsVixen.Rendering.Tests
  • DistanceFieldAoRendererVixen.Rendering.PostFx
  • DrawCompactionTestsVixen.Rendering.Tests
  • FogRendererVixen.Rendering.PostFx
  • ForwardFrameTestsVixen.Rendering.Tests
  • ForwardLightingRenderFeatureVixen.Rendering
  • ForwardLightingTestsVixen.Rendering.Tests
  • FrameBudgetTestsVixen.Rendering.Tests
  • GlobalDistanceFieldRendererVixen.Rendering
  • GpuClusterResolveVixen.Rendering
  • GpuClusterVisibilityVixen.Rendering
  • GpuCullingVixen.Rendering
  • GpuDrivenCompositorTestsVixen.Rendering.Tests
  • GpuVisibilityGroupVixen.Rendering
  • GpuVisibilityGroupTestsVixen.Rendering.Tests
  • GraphicsCompositorVixen.Rendering
  • GraphicsCompositorTestsVixen.Rendering.Tests
  • HarnessVixen.Rendering.Tests
  • HarnessVixen.Rendering.Tests
  • HarnessVixen.Rendering.Tests