Class Shadows (mod)
Contains a vertex shader and supporting functions for drawing shadows of a first hit scan of the displayed volume.
Inheritance
Namespace: Visualization
Assembly: OCTVis.dll
Syntax
module Shadows
Fields
val BackTexSampler
Samples a depth-texture containing the depth of the back faces fo the volume bounding box.
Declaration
val BackTexSampler: Sampler2d
Field Value
Type | Description |
---|---|
FShade.Sampler2d |
val dimensions
Declaration
val dimensions: V3d
Field Value
Type | Description |
---|---|
Aardvark.Base.V3d |
val FrontTexSampler
Samples a depth-texture containing the depth of the front faces of the volume bounding box.
Declaration
val FrontTexSampler: Sampler2d
Field Value
Type | Description |
---|---|
FShade.Sampler2d |
val sampling_level
Declaration
val sampling_level: float
Field Value
Type | Description |
---|---|
float |
val shadow_bias
Declaration
val shadow_bias: float
Field Value
Type | Description |
---|---|
float |
val VolTexSampler
Samples the OCT Volume we are displaying
Declaration
val VolTexSampler: Sampler3d
Field Value
Type | Description |
---|---|
FShade.Sampler3d |
Methods
val calc_normalized_and_length: V3d -> V3d * float
Declaration
[<ReflectedDefinition>]
val calc_normalized_and_length: vec:V3d -> V3d * float
Parameters
Type | Name | Description |
---|---|---|
Aardvark.Base.V3d | vec |
Returns
Type | Description |
---|---|
Aardvark.Base.V3d * float |
val computeGradient: Sampler3d -> V3d -> V3d -> float -> V3d
Declaration
[<ReflectedDefinition>]
val computeGradient: smp:Sampler3d -> dims:V3d -> p:V3d -> level:float -> V3d
Parameters
Type | Name | Description |
---|---|---|
FShade.Sampler3d | smp | |
Aardvark.Base.V3d | dims | |
Aardvark.Base.V3d | p | |
float | level |
Returns
Type | Description |
---|---|
Aardvark.Base.V3d |
val raymarch: V3d -> V3d -> float -> float -> float -> bool -> V3d -> V3d -> V3d -> V3d -> bool * V3d
Cast a ray in the specified directon and return whether or not a volume above the threshold was hit and the position of where this hit occured.
Declaration
[<ReflectedDefinition>]
val raymarch: start:V3d -> dir:V3d -> step_size:float -> threshhold:float -> max_steps:float -> cut_volume:bool -> n_cut1:V3d -> p0_cut1:V3d -> n_cut2:V3d -> p0_cut2:V3d -> bool * V3d
Parameters
Type | Name | Description |
---|---|---|
Aardvark.Base.V3d | start | The starting position of the ray. |
Aardvark.Base.V3d | dir | The direction the ray is shot in. |
float | step_size | The constant step size, with which we sample the ray. |
float | threshhold | The threshold above which a voxel is considered to be filled. |
float | max_steps | The number of sampling steps to make along the ray. |
bool | cut_volume | A boolean flag enabling or disabling volume cutting. |
Aardvark.Base.V3d | n_cut1 | The normal of the first cutting plane |
Aardvark.Base.V3d | p0_cut1 | The starting point of the first cutting plane |
Aardvark.Base.V3d | n_cut2 | The normal of the second cutting plane |
Aardvark.Base.V3d | p0_cut2 | The starting point of the second cutting plane |
Returns
Type | Description |
---|---|
bool * Aardvark.Base.V3d | A tuples containing first a boolean flag, stating whether or not a filled voxel was hit, and secondly, a vector contating the position of where a hit took place or the starting position if there was no hit. |
val simple_shadow: Vertex -> Expr<Vertex>
Declaration
val simple_shadow: v:Vertex -> Expr<Vertex>
Parameters
Type | Name | Description |
---|---|---|
Aardvark.Base.Rendering.Effects.Vertex | v |
Returns
Type | Description |
---|---|
FSharp.Quotations.Expr<Aardvark.Base.Rendering.Effects.Vertex> |