RenderWare namespace

The representation of .rw4 models/textures/materials.

Classes

struct Animations
struct AnimationSkin
A structure that contains the bind pose transformations of all bones.
struct AnimChannel
A channel is the group of keyframes that modify a bone.
struct cMDBoneTransform
struct CompiledState
This structure contains properties that tells the renderer how to draw a certain object.
struct IndexBuffer
A buffer that contains all the indices (so triangles) data.
class IRwResource
struct KeyframeAnim
A structure that represents an animation made of multiple keyframes.
union KeyframeData
struct Mesh
A structure that represents a basic mesh, made up of vertices and triangles.
template<int numBuffers = 1>
struct Mesh_
struct MeshCompiledStateLink
This structure links one or more compiled states (that is, materials) to a mesh.
template<int nCompiledStates = 1>
struct MeshCompiledStateLink_
struct MorphHandle
struct Raster
Low-level representation of a game texture.
class RenderWareFile
struct RWHeader
A structure that represents the general information contained in the header of a rw4 file.
struct RWObjectQuery
struct RWSectionInfo
A structure that contains the information of a section of data in a rw4 file.
struct Skeleton
This structure represents an Skeleton, that is, a hierarchy of bones.
struct SkeletonsInK
struct SkinMatrixBuffer
A structure that contains the final animation transformations of all bones.
struct SkinsInK
A structure needed to get animations working.
struct SkinTransform
struct TextureSlot
Structure used to configure textures in a CompiledState.
struct VertexBuffer
A buffer that contains all the vertices data.
template<uint16_t nVertexElements = (uint16_t)1>
struct VertexDescription
A vertex declaration defines the vertex buffer layout and programs the tessellation engine.
struct VertexDescriptionBase
struct VertexElement
Defines the vertex data layout. Each vertex can contain one or more data types, and each data type is described by a vertex element.

Enums

enum RWBufferLockFlags { kBufferLockReadOnly = 2, kBufferLockDiscard = 4, kBufferLockNoOverwrite = 8 }
enum BoneFlags { kBoneRoot = 0, kBoneLeaf = 1, kBoneBranch = 2, kBoneRootLeaf = 3 }
enum RWElementDeclaration { RWDECL_VERTEX_POSITION = 0, RWDECL_VERTEX_XYZRHW = 1, RWDECL_VERTEX_NORMAL = 2, RWDECL_VERTEX_COLOR = 3, RWDECL_VERTEX_PRELIGHT = 4, RWDECL_VERTEX_COLOR1 = 5, RWDECL_VERTEX_TEXCOORD0 = 6, RWDECL_VERTEX_TEXCOORD1 = 7, RWDECL_VERTEX_TEXCOORD2 = 8, RWDECL_VERTEX_TEXCOORD3 = 9, RWDECL_VERTEX_TEXCOORD4 = 10, RWDECL_VERTEX_TEXCOORD5 = 11, RWDECL_VERTEX_TEXCOORD6 = 12, RWDECL_VERTEX_TEXCOORD7 = 13, RWDECL_VERTEX_BLENDINDICES = 14, RWDECL_VERTEX_BLENDWEIGHTS = 15, RWDECL_VERTEX_POINTSIZE = 16, RWDECL_VERTEX_POSITION2 = 17, RWDECL_VERTEX_NORMAL2 = 18, RWDECL_VERTEX_TANGENT = 19, RWDECL_VERTEX_BINORMAL = 20, RWDECL_VERTEX_FOG = 21, RWDECL_VERTEX_BLENDINDICES2 = 22, RWDECL_VERTEX_BLENDWEIGHTS2 = 23, RWDECL_VERTEX2_POSITION = 0x1, RWDECL_VERTEX2_POSITION2 = 0x2, RWDECL_VERTEX2_TANGENT = 0x100, RWDECL_VERTEX2_COLOR = 0x1000, RWDECL_VERTEX2_COLOR1 = 0x2000, RWDECL_VERTEX2_TEXCOORD0 = 0x10000, RWDECL_VERTEX2_TEXCOORD1 = 0x20000, RWDECL_VERTEX2_TEXCOORD2 = 0x40000, RWDECL_VERTEX2_TEXCOORD3 = 0x80000, RWDECL_VERTEX2_TEXCOORD4 = 0x100000, RWDECL_VERTEX2_TEXCOORD5 = 0x200000, RWDECL_VERTEX2_TEXCOORD6 = 0x400000, RWDECL_VERTEX2_TEXCOORD7 = 0x800000, RWDECL_VERTEX2_NORMAL = 0x1000000, RWDECL_VERTEX2_NORMAL2 = 0x2000000, RWDECL_VERTEX2_BLENDINDICES = 0x10000000, RWDECL_VERTEX2_BLENDINDICES2 = 0x20000000, RWDECL_VERTEX2_BLENDWEIGHTS = 0x40000000, RWDECL_VERTEX2_BLENDWEIGHTS2 = 0x80000000 }

Functions

ASSERT_SIZE(TextureSlot, 0x10)
auto Addresses(TextureSlot) -> namespace
auto Addresses(CompiledState) -> namespace
auto_METHOD_VOID_(CompiledState, Load)
auto_METHOD(CompiledState, Raster*, GetRaster, Args(size_t slotIndex), Args(slotIndex))
auto_METHOD_VOID(CompiledState, SetRaster, Args(size_t slotIndex, Raster*raster), Args(slotIndex, raster))
auto_METHOD_VOID(TextureSlot, SetTexture, Args(CompiledState*compiledState, int slotIndex, Raster*raster), Args(compiledState, slotIndex, raster))
auto Addresses(Mesh) -> namespace
ASSERT_SIZE(Raster, 0x20)
auto Addresses(Raster) -> namespace
auto Addresses(RWHeader) -> namespace
auto Addresses(VertexDescription) -> namespace

Variables

constexpr unsigned int RWDECL_VERTEX2

Enum documentation

Function documentation

RenderWare::auto_METHOD(CompiledState, Raster*, GetRaster, Args(size_t slotIndex), Args(slotIndex))

RenderWare::auto_METHOD_VOID(CompiledState, SetRaster, Args(size_t slotIndex, Raster*raster), Args(slotIndex, raster))

RenderWare::auto_METHOD_VOID(TextureSlot, SetTexture, Args(CompiledState*compiledState, int slotIndex, Raster*raster), Args(compiledState, slotIndex, raster))

Variable documentation