Vixen
dd8b0a81
csharp
public readonly record struct UiShaders

The four shader modules a user interface is drawn with.

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

Remarks

⚠ Supplied rather than compiled here, and that is the seam. Turning shader source into modules belongs to Vixen.Shaders and to Raven. A caller hands over whatever it has, which is how the golden fixture drives this with hand-written GLSL and how Vixen.Editor.App drives it from Shaders/Ui.rvn. What this must not do is grow a compiler.

Fields and properties (9)

  • public ShaderHandle Vertex

    The one vertex stage all three pipelines share.

  • public ShaderHandle Box

    Rounded rectangles and borders, as a signed distance.

  • public ShaderHandle Text

    Glyphs, as a multi-channel distance field.

  • public ShaderHandle Solid

    Tessellated paths, flat.

  • public ShaderHandle Image

    The stage that samples a texture: an image, a video frame, a viewport.

  • public ShaderHandle Blur

    One axis of the separable Gaussian a group's filter: blur() is made of.

  • public ShaderHandle Colour

    The composite of a group whose filter carries a colour transform.

  • public ShaderHandle Mask

    The composite of a group whose mask-image fades it out.

  • public VertexLocations Locations

    Where the vertex stage reads UiVertex's four attributes: position, texture, colour, then shape.

Methods (1)

Used by (17)

  • InterfaceInAWorldTestsVixen.Engine.Renderer.Tests
  • UiApplicationVixen.Ui.Desktop
  • UiCompositingTestsVixen.Graphics.Golden.Tests
  • UiFrameLifetimeTestsVixen.Graphics.Golden.Tests
  • UiImageTestsVixen.Graphics.Golden.Tests
  • UiImageViewTestsVixen.Graphics.Golden.Tests
  • UiRavenAgreementTestsVixen.Graphics.Golden.Tests
  • UiRendererVixen.Ui.Renderer
  • UiShaderLibraryVixen.Ui.Desktop
  • UiWindowSurfaceVixen.Ui.Desktop
  • VideoInUiTestsVixen.Video.Rendering.Tests
  • ComposedPaneTestsVixen.Editor.App.Tests
  • EditorHostVixen.Editor.Host
  • EditorUiCompositingDeviceTestsVixen.Editor.App.Tests
  • FramePresenterTestsVixen.Editor.App.Tests
  • ShadersVixen.Editor.App.Tests
  • ThumbnailSurfaceDeviceTestsVixen.Editor.App.Tests