Skip to content

RenderDepthSort

Overview

RenderProgram that provides splitting based on depth, into a RenderStack

@author Jonathan Olson <jonathan.olson@colorado.edu>

Class RenderDepthSort

import { RenderDepthSort } from 'scenerystack/alpenglow';

Constructor

new RenderDepthSort( items : RenderPlanar[] )

Instance Methods

getName() : string

withChildren( children : RenderProgram[] ) : RenderDepthSort

transformed( transform : Matrix3 ) : RenderProgram

getSimplified( children : RenderProgram[] ) : RenderProgram | null

(protected)

evaluate( context : RenderEvaluationContext ) : Vector4

isSplittable() : boolean

split( face : RenderableFace ) : RenderableFace[]

The heavy lifting of figuring out what combinations of "orders" of items are possible (front-to-back), and splitting into each possible non-zero-area combination.

serialize() : SerializedRenderDepthSort

Static Methods

deserialize( obj : SerializedRenderDepthSort ) : RenderDepthSort

getProjectionMatrix( near : number, far : number, minX : number, minY : number, maxX : number, maxY : number ) : Matrix4

Type SerializedRenderDepthSort

import type { SerializedRenderDepthSort } from 'scenerystack/alpenglow';

Source Code

See the source for RenderDepthSort.ts in the alpenglow repository.