TKE_Heuristics

Opcode
ASCII H
Hexadecimal 48
Decimal 72

 

Operands

Variable mask, Variable value,
[Long related_limit], [Long internal_limit], [Byte details] [Byte culling]

mask bitmask of options which are specified, Short, if high bit set a second Short follows
value bitmask of options which are set on, Short, if high bit of mask set a second Short follows
related_limit number of additional geometry entities to record which also satisfy selection criteria
internal_limit number of geometry components within a selected entity (ie, faces and edges within a shell) to record in addition to the "best" one
details bitmask to clarify a couple of the options which aren't simply on/off
culling bitmask of culling options

 

Notes

Heuristics provide hints on how you may improve drawing speed. Some options may change the appearance of the drawing, such as quick moves using Xor drawing mode or partial erase leaving holes in the drawing.  For the specific definitions on what these mean in HOOPS/3dGS please refer to the Set_Heuristics specification in the 3dGS Reference Manual.

Mask/Value bits:

00000001 Hidden Surfaces
00000002 Backplane Cull
00000004 Polygon Handedness, details field will be present if on
00000008 Quick Moves, details field will be present if on
00000010 Partial Erase
00000020 Memory Purge
00000040 Related selection limit, related_limit field will be present if on
00000080 Internal selection limit, internal_limit field will be present if on
00000100 Clipping
00000200 Transformations
00000400 Intersecting Polygons
00000800 Polygons Crossings
00001000 Concave Polygons
00002000 Incremental Updates
00004000 Selection Sorting
00008000 Extended mask/value size
00010000 Culling

Detail bits:

01 Polygons Handedness is left if set, right otherwise
02 Quick Moves is to use spriting if set, Xor/overlay otherwise

Culling bits:

01 View Frustum culling should be used