public sealed class OutlineRendererOutlines from depth and normal discontinuities — the editor's selection highlight, and the stylised look that goes with cel shading.
No guide page documents this yet — the page shows what the code says about itself.
Remarks
Screen space rather than geometry: the alternative is drawing every silhouette edge as a second pass over the mesh, which needs adjacency data the importer would have to build and scales with the scene rather than with the screen. What it cannot do is outline something hidden behind something else, which is exactly what a selection outline usually wants — hence the mask.
Fields and properties (11)
public required string SourceThe colour it draws over.
public required string DepthThe depth it finds silhouettes in.
public string NormalsThe normals it finds creases in.
public string SelectionMaskA mask of what is selected, for an outline around one object.
public bool UseNormalsWhether creases inside a silhouette are outlined too.
public bool SelectionOnlyWhether only the masked object is outlined.
public Vector4 ColourThe outline's colour.
public float ThicknessHow wide it is, in pixels.
public float NearPlaneThe camera's near plane, for turning depth back into distance.
public float FarPlaneThe camera's far plane.
public float DepthThresholdHow much depth has to change across a pixel to count as an edge.
Methods (2)
public OutlineRenderer()Outlines from depth and normal discontinuities — the editor's selection highlight, and the stylised look that goes with cel shading.
protected override void Configure(CompositorFrame frame, ParameterCollection parameters, IList<ResourceBinding> bindings)Fills in this frame's parameters and bindings.
Used by (2)
- PostEffectFactoryVixen.Rendering.PostFx
- PostEffectTestsVixen.Rendering.PostFx.Tests