KclLibrary
Settings used to configure collision generated from triangles.
The max cube size of the root octrees.
The min cube size of the root octrees.
The max cube size of the all octrees.
The min cube size of the all octrees.
The max depth size of the all octrees.
The max amount of triangles in an octree.
When the limit is reached, octrees will divide until the min cube size is reached.
Determines the max distance of the normals for a prism.
The sphere radius used for an unknown purpose.
The min amount of padding to use for the collison boundings.
The max amount of padding to use for the collison boundings.
Represents the version of the file binary.
Represents extension methods for instances.
Reads instances from the current stream and returns them.
The extended .
The number of instances to read.
The instances.
Reads a instance from the current stream and returns it.
The extended .
The instance.
Reads instances from the current stream and returns them.
The extended .
The number of instances to read.
The instances.
Reads a instance from the current stream and returns it.
The extended .
The instance.
Reads instances from the current stream and returns them.
The extended .
The number of instances to read.
The instances.
Reads instances from the current stream and returns them.
The extended .
The number of instances to read.
The instances.
Reads instances from the current stream and returns them.
The extended .
The number of instances to read.
The instances.
Represents extension methods for instances.
Writes instances into the current stream.
The extended .
The instances.
Writes a instance into the current stream.
The extended .
The instance.
Writes instances into the current stream.
The extended .
The instances.
Writes a instance into the current stream.
The extended .
The instance.
Writes instances into the current stream.
The extended .
The instances.
Represents a prism as stored in a collision file.
The length of this triangle.
The 0-based index of the positional vector in the position array of the model this triangle belongs to.
The 0-based index of the direction normal in the normal array of the model this triangle belongs to.
The first 0-based index of the normal in the normal array of the model this triangle belongs to.
The second 0-based index of the normal in the normal array of the model this triangle belongs to.
The third 0-based index of the normal in the normal array of the model this triangle belongs to.
The collision flags determining in-game behavior when colliding with this polygon.
The 0-based index of the triangle in the KCL file this triangle belongs to.
Represents the header of a V2 KCL binary collision file.
Initializes a new instance of the class, created from the given
.
Loads the data from the given file.
The name of the file to load the data from.
Loads the data from the given stream.
The name of the file to load the data from.
Represents the version of the KCL.
Gets the smallest coordinate spanned by the octree in this file.
Gets the biggest coordinate spanned by the octree in this file.
Gets the coordinate shift required to compute indices into the octree.
Gets the total amount of prisms used in the KCL file.
Gets the root node of the model octree.
Gets the list of instances referenced by the model octree.
Gets or sets the byte order of the KCL file.
The world transformation of the collision.
Creates a generic model which can be exported into a .obj file format.
Loads the data from the given .
The to load the data from.
true to leave open after loading the instance.
Saves the data in the given file.
The name of the file to save the data in.
Replaces the current collision model from the given
.
The to create the collision data from.
Resets the list of prisim and octree data for any that has been previously hit.
Checks if a prism gets hit from a given point and returns hit information.
Gets or sets the smallest coordinate of the cube spanned by the model.
Gets the coordinate mask required to compute indices into the octree.
Gets the coordinate shift required to compute indices into the octree.
Gets the array of vertex positions.
Gets the array of vertex normals.
Gets the array of triangles.
Gets or sets the thickness of the Prisms.
Gets the root nodes of the model triangle octree. Can be null if no octree was loaded or created yet.
Gets or sets the thickness of the prisms.
Gets the current file version to use in the binary file.
A list of prisms which are hit detectedfrom the collision handler.
A list of octrees which are hit detected from the collision handler.
Creates a triangle with 3 positions from the given collision prism.
Gets the maximum triangle count used by an octree.
Gets the smallest cube size used for the octrees.
Gets the max amount of octree depth used within the tree.
Gets a global list of octrees with bounding information.
Initializes a new instance of the class with an empty key.
Initializes a new instance of the class with the key and data read from the
given .
The to read the node data with.
Gets the index to the model referenced by this node in the model array of the file this node belongs to.
Represents the base for an octree node.
The type of the octree node.
The number of children of an octree node.
The bits storing the flags of this node.
Initializes a new instance of the class with the given octree node
.
The octree node key with which the node can be referenced.
Gets the octree key used to reference this node.
Gets the eight children of this node.
Returns an enumerator that iterates through the collection.
An enumerator that can be used to iterate through the collection.
Returns an enumerator that iterates through a collection.
An object that can be used to iterate through the collection.
Represents a node in a model triangle octree.
Initializes a new instance of the class with the key and data read from the
given .
The to read the node data with.
The required offset of the start of the parent node.
Initializes a new instance of the class, initializing children and
subdivisions from the given list of faces sorted into a cube of the given .
The dictionary of instances which have to be sorted into this
octree, with the key being their original index in the model.
The offset of the cube.
The size of the cube.
The maximum number of triangles to sort into this node.
The minimum size a cube can be subdivided to.
Gets the indices to triangles of the model appearing in this cube.
Returns a value indicating whether the given overlaps a cube positioned at the
expanding with .
The to check for overlaps.
The positional at which the cube originates.
The half size of a cube.
true when the triangle intersects with the cube, otherwise false.
Returns a value indicating whether the given overlaps a cube positioned at the
expanding with .
The to check for overlaps.
The positional at which the cube originates.
The half length of one edge of the cube.
true when the triangle intersects with the cube, otherwise false.
Keeps track of debug information being printed.
Runs an event when the log information is updated.
Runs an event when the progress has been updated with a precent value passed.
Used when a model is replaced to keep track of progress bar information.
Writes a string of text to the logger.
Passes a precent int value over to the progress handler.
Represents a collection of mathematical functions.
Gets the next power of 2 which results in a value bigger than or equal to .
The value to which the next power of 2 will be determined.
The next power of resulting in a value bigger than or equal to the given value.
Represents a 3D model stored in the Wavefront OBJ format.
Initializes a new instance of the class.
Initializes a new instance of the class from the given stream.
The stream from which the instance will be loaded.
Initializes a new instance of the class from the file with the given name.
The name of the file from which the instance will be loaded.
Gets or sets the list of meshes of the model.
Gets or sets the list of materials of the model.
Gets a global list of all the triangles in the object file.
Loads the object file data from the given .
The to load the data from.
true to leave open after loading the instance.
Loads the obj material data from the given .
The to load the data from.
true to leave open after loading the instance.
Loads the data from the given file.
The name of the file to load the data from.
Saves the data to the given file.
The name of the file to load the data from.
Saves the material data to the given file.
The name of the file to load the data from.
Represents a material in an .
Gets or sets the name of the material.
Gets or sets the diffuse texture.
Gets or sets the diffuse color.
Gets or sets the amient color.
Gets or sets the specular color.
Represents a mesh in an .
Gets or sets the list of faces of the mesh.
Represents a triangle in an .
The material used for this face.
The attribute ID used to assign material information to a collision face.
The three vertices which define this triangle.
Represents the indices required to define a vertex of an .
The vertex position from the positions array of the owning .
The vertex texture coordinates from the texture coordinate array of the owning .
The vertex normal from the normal array of the owning .
Represents a polygon in 3-dimensional space, defined by 3 vertices storing their positions.
Gets the vertices which store the corner positions of the triangle.
Initializes a new instance of the class.
Initializes a new instance of the class.
Gets the face normal of this triangle.
Represents 3 Uint32 vector values.
Gets or sets the X value of the 3 vector values.
Gets or sets the Y value of the 3 vector values.
Gets or sets the Z value of the 3 vector values.