Click or drag to resize
AB4D logo

SimpleMeshTCreateOctTree Method

CreateOctTree returns a MeshOctTree that is created from the mesh defined in this SimpleMesh. This method can be used when the type of the vertex buffer is PositionNormalTexture or Vector3 (only positions). When the type of the vertex buffer is PositionNormal or PositionTexture, then vertex data are copied into positions array and an then OctTree is created. Other types of vertex buffers are not supported and will generate an exception.

Namespace: Ab3d.DirectX
Assembly: Ab3d.DXEngine (in Ab3d.DXEngine.dll) Version: 7.0.8865.1045
Syntax
C#
public MeshOctTree CreateOctTree(
	int maxNodeLevel = 4,
	float expandChildBoundingBoxes = 0,2f
)

Parameters

maxNodeLevel  Int32  (Optional)
Number of levels used for MeshOctTree - bigger number reduces the number of triangles in each node but increased the MeshOctTree initialization time and used memory. Default value is 4.
expandChildBoundingBoxes  Single  (Optional)
ExpandChildBoundingBoxes is a float that defined how much the bounding boxes of node overlap. By default the value is set to 0.2 - so each bounding box is extended for 20% (but it does not go out of the parent's bounding box). This way the triangles that lay on node borders will be put into the child nodes instead of having them in the parent node (there we need to do a hit test every time).

Return Value

MeshOctTree
created MeshOctTree

Implements

IOctTreeMeshCreateOctTree(Int32, Single)
Remarks

CreateOctTree returns a MeshOctTree that is created from the mesh defined in this SimpleMesh.

This method can be used when the type of the vertex buffer is PositionNormalTexture or Vector3 (only positions). When the type of the vertex buffer is PositionNormal or PositionTexture, then vertex data are copied into positions array and an then OctTree is created. Other types of vertex buffers are not supported and will generate an exception.

Note: this method does not set the OctTree property on this SimpleMesh.

See Also