public sealed class RenderDrawContextWhat a feature needs in order to record: somewhere to record to, and what to resolve shaders through.
No guide page documents this yet — the page shows what the code says about itself.
Remarks
Passed rather than held, because recording is the phase that is meant to run on several threads at once: each gets its own CommandList and they share everything else. A feature that reached for a command list on the system would be a feature that cannot be parallelised, and it would compile.
The device is here too, and only for the one thing a recording feature legitimately needs it for: creating a pipeline it discovers it is missing. Everything else it wants — buffers, textures, descriptor sets — belongs to a resource it was given rather than to the moment of drawing.
Fields and properties (10)
public ICommandList CommandListWhere this thread records.
public EffectSystem EffectsWhere a shader variant comes from.
public IGraphicsDevice? DeviceThe device, for a feature that has to create a pipeline it did not have.
public RenderView? ViewThe view being recorded.
public RenderStage? StageThe stage being recorded.
public ViewConstants? ViewConstantsThe per-view block for View, for a feature to bind after its first pipeline.
public SceneConstants? SceneConstantsThe frame's own set — the environment, the probes, the shadow atlas, the sun.
public Effect? EffectThe variant currently being drawn with, for a sub-feature that has to agree with it.
public RenderOutput OutputThe formats of the pass currently open.
public Viewport ViewportThe region of the target the open pass is drawing into, in that target's own pixels.
Methods (1)
public RenderDrawContext(ICommandList commandList, EffectSystem effects)What a feature needs in order to record: somewhere to record to, and what to resolve shaders through.
Used by (43, showing 40)
- BindlessFrameTestsVixen.Rendering.Tests
- CompositorFrameVixen.Rendering
- CompositorImageTestsVixen.Graphics.Golden.Tests
- DelegateSceneRendererVixen.Rendering
- DrawCompactionTestsVixen.Rendering.Tests
- ForwardLightingRenderFeatureVixen.Rendering
- ForwardLightingTestsVixen.Rendering.Tests
- GlobalDistanceFieldRendererVixen.Rendering
- GlobalDistanceFieldRendererTestsVixen.Rendering.Tests
- IDrawSubFeatureVixen.Rendering
- InterfaceInAWorldTestsVixen.Engine.Renderer.Tests
- IrradianceBounceDeviceTestsVixen.Graphics.Golden.Tests
- LodRenderFeatureVixen.Rendering
- LodTestsVixen.Rendering.Tests
- MaterialBindingTestsVixen.Rendering.Tests
- MaterialRecordBufferTestsVixen.Rendering.Tests
- MeshRenderFeatureVixen.Rendering
- MeshRenderFeatureTestsVixen.Rendering.Tests
- MotionVectorRenderFeatureVixen.Rendering
- ParticleLightFeatureTestsVixen.Rendering.Tests
- ParticleRenderFeatureVixen.Rendering
- ParticleRenderFeatureTestsVixen.Rendering.Tests
- PunctualShadowRendererVixen.Rendering
- RecordingTestsVixen.Rendering.Tests
- RenderPassRendererVixen.Rendering
- RenderSystemVixen.Rendering
- RootRenderFeatureVixen.Rendering
- SceneRendererVixen.Rendering
- SceneRendererSequenceVixen.Rendering
- ShadowMapRendererVixen.Rendering
- SingleStageRendererVixen.Rendering
- SkinningAndInstancingTestsVixen.Rendering.Tests
- SkinningRenderFeatureVixen.Rendering
- SpriteRenderFeatureVixen.Rendering
- SpriteRenderFeatureTestsVixen.Rendering.Tests
- SpyFeatureVixen.Rendering.Tests
- TransformRecordTestsVixen.Rendering.Tests
- TransformRenderFeatureVixen.Rendering
- UiRenderFeatureVixen.Ui.Renderer
- VideoRenderFeatureVixen.Video.Rendering