initial
This commit is contained in:
81
public/rendersystem/schema/renderable.g.h
Normal file
81
public/rendersystem/schema/renderable.g.h
Normal file
@@ -0,0 +1,81 @@
|
||||
|
||||
#ifndef RENDERABLE_G_H
|
||||
#define RENDERABLE_G_H
|
||||
|
||||
#ifdef COMPILER_MSVC
|
||||
#pragma once
|
||||
#endif
|
||||
|
||||
#include "resourcefile/resourcefile.h"
|
||||
#include "resourcefile/resourcetype.h"
|
||||
|
||||
#include "renderbuffer.g.h"
|
||||
|
||||
//-----------------------------------------------------------------------------
|
||||
// Enum definitions
|
||||
//-----------------------------------------------------------------------------
|
||||
enum RenderPrimitiveType_t
|
||||
{
|
||||
RENDER_PRIM_POINTS = 0,
|
||||
RENDER_PRIM_LINES,
|
||||
RENDER_PRIM_LINES_WITH_ADJACENCY,
|
||||
RENDER_PRIM_LINE_STRIP,
|
||||
RENDER_PRIM_LINE_STRIP_WITH_ADJACENCY,
|
||||
RENDER_PRIM_TRIANGLES,
|
||||
RENDER_PRIM_TRIANGLES_WITH_ADJACENCY,
|
||||
RENDER_PRIM_TRIANGLE_STRIP,
|
||||
RENDER_PRIM_TRIANGLE_STRIP_WITH_ADJACENCY,
|
||||
RENDER_PRIM_INSTANCED_QUADS,
|
||||
RENDER_PRIM_HETEROGENOUS,
|
||||
RENDER_PRIM_TYPE_COUNT,
|
||||
};
|
||||
|
||||
|
||||
//-----------------------------------------------------------------------------
|
||||
// Structure definitions
|
||||
//-----------------------------------------------------------------------------
|
||||
|
||||
schema struct RenderBufferBinding_t
|
||||
{
|
||||
CResourceReference< RenderBufferBits_t > m_pRenderBuffer;
|
||||
uint32 m_nBindOffsetBytes;
|
||||
uint8 m_padding[4];
|
||||
};
|
||||
|
||||
schema struct MaterialDrawDescriptor_t
|
||||
{
|
||||
int32 m_nBaseVertex;
|
||||
int32 m_nVertexCount;
|
||||
int32 m_nStartIndex;
|
||||
int32 m_nIndexCount;
|
||||
int32 m_nStartInstance;
|
||||
int32 m_nInstanceCount;
|
||||
uint8 m_nPrimitiveType; // See RenderPrimitiveType_t
|
||||
uint8 m_padding[3];
|
||||
CResourceArray< RenderBufferBinding_t > m_Buffers;
|
||||
CResourceString m_pMaterialName;
|
||||
|
||||
//! opaquePointer
|
||||
void *m_pMaterial;
|
||||
};
|
||||
|
||||
schema struct PermRenderableBounds_t
|
||||
{
|
||||
Vector m_MinBounds;
|
||||
Vector m_MaxBounds;
|
||||
};
|
||||
|
||||
//! uncacheableStruct = PermRenderableBounds_t
|
||||
schema struct Renderable_t
|
||||
{
|
||||
CResourceArray< MaterialDrawDescriptor_t > m_DrawCalls;
|
||||
};
|
||||
|
||||
class CRenderable; // Forward declaration of associated runtime class
|
||||
DEFINE_RESOURCE_CLASS_TYPE( Renderable_t, CRenderable, RESOURCE_TYPE_RENDERABLE );
|
||||
typedef const ResourceBinding_t< CRenderable > *HRenderable;
|
||||
typedef CStrongHandle< CRenderable > HRenderableStrong;
|
||||
#define RENDERABLE_HANDLE_INVALID ( (HRenderable)0 )
|
||||
|
||||
|
||||
#endif // RENDERABLE_G_H
|
||||
91
public/rendersystem/schema/renderbuffer.g.h
Normal file
91
public/rendersystem/schema/renderbuffer.g.h
Normal file
@@ -0,0 +1,91 @@
|
||||
#ifndef RENDERBUFFER_G_H
|
||||
#define RENDERBUFFER_G_H
|
||||
|
||||
#ifdef COMPILER_MSVC
|
||||
#pragma once
|
||||
#endif
|
||||
|
||||
#include "resourcefile/resourcefile.h"
|
||||
#include "resourcefile/resourcetype.h"
|
||||
|
||||
|
||||
//-----------------------------------------------------------------------------
|
||||
// Forward declarations
|
||||
//-----------------------------------------------------------------------------
|
||||
struct RenderInputLayoutField2_t;
|
||||
struct RenderBufferDesc_t;
|
||||
struct RenderBufferBits_t;
|
||||
|
||||
|
||||
//-----------------------------------------------------------------------------
|
||||
// Enum definitions
|
||||
//-----------------------------------------------------------------------------
|
||||
schema enum RenderBufferType_t
|
||||
{
|
||||
RENDER_BUFFER_TYPE_STATIC = 0, // GPU can read from it only, CPU can only write once
|
||||
RENDER_BUFFER_TYPE_SEMISTATIC , // GPU can read, writes are infrequent from CPU
|
||||
RENDER_BUFFER_TYPE_STAGING, // GPU can write, CPU can read
|
||||
RENDER_BUFFER_TYPE_GPU_ONLY, // GPU can read/write, CPU cannot read/write (used for GPU-generated data)
|
||||
RENDER_BUFFER_TYPE_COUNT,
|
||||
RENDER_BUFFER_TYPE_COUNT_PLUS_1, // Ignore the man behind the curtain (used to silence a warning in rendersystem)
|
||||
};
|
||||
|
||||
schema enum RenderBufferClass_t
|
||||
{
|
||||
RENDER_BUFFER_CLASS_VERTEX_BUFFER = 0,// (explicit)
|
||||
RENDER_BUFFER_CLASS_INDEX_BUFFER,
|
||||
RENDER_BUFFER_CLASS_RESERVED_VALUE_1, // These are for internal use only
|
||||
RENDER_BUFFER_CLASS_RESERVED_VALUE_2,
|
||||
};
|
||||
|
||||
schema enum RenderSlotType_t
|
||||
{
|
||||
RENDER_SLOT_INVALID = -1,
|
||||
RENDER_SLOT_PER_VERTEX = 0,
|
||||
RENDER_SLOT_PER_INSTANCE = 1,
|
||||
};
|
||||
|
||||
schema enum MaxInputLayoutSemanticNameSize_t
|
||||
{
|
||||
RENDER_INPUT_LAYOUT_FIELD_SEMANTIC_NAME_SIZE2 = 32,
|
||||
};
|
||||
|
||||
|
||||
//-----------------------------------------------------------------------------
|
||||
// Structure definitions
|
||||
//-----------------------------------------------------------------------------
|
||||
schema struct RenderInputLayoutField2_t
|
||||
{
|
||||
uint8 m_SemanticName[32];
|
||||
int32 m_nSemanticIndex; // TODO: Change to ColorFormat_t and make bitmap/colorformat.h depend on ColorFormat.sch
|
||||
int32 m_nFormat;
|
||||
int32 m_nOffset;
|
||||
int32 m_nSlot;
|
||||
uint8 m_nSlotType; // See RenderSlotType_t
|
||||
uint8 m_Padding[3];
|
||||
int32 m_nInstanceStepRate;
|
||||
};
|
||||
|
||||
schema struct RenderBufferDesc_t
|
||||
{
|
||||
int32 m_nElementCount;
|
||||
uint16 m_nElementSizeInBytes; // Assume no single element is over 65k in size
|
||||
uint8 m_nBufferType; // See RenderBufferType_t
|
||||
uint8 m_nBufferClass; // See RenderBufferClass_t
|
||||
CResourceArray< RenderInputLayoutField2_t > m_InputLayoutFields; // Unused for index buffers
|
||||
};
|
||||
|
||||
//! uncacheableStruct = RenderBufferDesc_t
|
||||
schema struct RenderBufferBits_t
|
||||
{
|
||||
// Empty like texture bits... Just a bag of bits with no reflection data...
|
||||
};
|
||||
|
||||
class CRenderBufferBits; // Forward declaration of associated runtime class
|
||||
DEFINE_RESOURCE_CLASS_TYPE( RenderBufferBits_t, CRenderBufferBits, RESOURCE_TYPE_RENDER_BUFFER );
|
||||
typedef const ResourceBinding_t< CRenderBufferBits > *HRenderBuffer;
|
||||
typedef CStrongHandle< CRenderBufferBits > HRenderBufferStrong;
|
||||
#define RENDER_BUFFER_HANDLE_INVALID ( (HRenderBuffer)0 )
|
||||
|
||||
|
||||
#endif // RENDERBUFFER_G_H
|
||||
79
public/rendersystem/schema/texture.g.h
Normal file
79
public/rendersystem/schema/texture.g.h
Normal file
@@ -0,0 +1,79 @@
|
||||
#ifndef TEXTURE_G_H
|
||||
#define TEXTURE_G_H
|
||||
|
||||
#ifdef COMPILER_MSVC
|
||||
#pragma once
|
||||
#endif
|
||||
|
||||
#include "resourcefile/resourcefile.h"
|
||||
#include "resourcefile/resourcetype.h"
|
||||
#include "mathlib/vector4d.h"
|
||||
|
||||
//-----------------------------------------------------------------------------
|
||||
// Forward declarations
|
||||
//-----------------------------------------------------------------------------
|
||||
struct TextureDesc_t;
|
||||
struct TextureHeader_t;
|
||||
struct TextureBits_t;
|
||||
|
||||
|
||||
//-----------------------------------------------------------------------------
|
||||
// Enum definitions
|
||||
//-----------------------------------------------------------------------------
|
||||
schema enum TextureSpecificationFlags_t
|
||||
{
|
||||
TSPEC_FLAGS = 0x0000,// (explicit)
|
||||
TSPEC_RENDER_TARGET = 0x0001,// (explicit)
|
||||
TSPEC_VERTEX_TEXTURE = 0x0002,// (explicit)
|
||||
TSPEC_UNFILTERABLE_OK = 0x0004,// (explicit)
|
||||
TSPEC_RENDER_TARGET_SAMPLEABLE = 0x0008,// (explicit)
|
||||
TSPEC_SUGGEST_CLAMPS = 0x0010,
|
||||
TSPEC_SUGGEST_CLAMPT = 0x0020,
|
||||
TSPEC_SUGGEST_CLAMPU = 0x0040,
|
||||
TSPEC_NO_LOD = 0x0080, // Don't downsample on lower-level cards
|
||||
};
|
||||
|
||||
schema enum RenderMultisampleType_t
|
||||
{
|
||||
RENDER_MULTISAMPLE_INVALID = -1,// (explicit)
|
||||
RENDER_MULTISAMPLE_NONE = 0,// (explicit)
|
||||
RENDER_MULTISAMPLE_2X = 1,
|
||||
RENDER_MULTISAMPLE_4X = 2,
|
||||
RENDER_MULTISAMPLE_6X = 3,
|
||||
RENDER_MULTISAMPLE_8X = 4,
|
||||
RENDER_MULTISAMPLE_16X = 5,
|
||||
};
|
||||
|
||||
|
||||
//-----------------------------------------------------------------------------
|
||||
// Structure definitions
|
||||
//-----------------------------------------------------------------------------
|
||||
schema struct TextureDesc_t
|
||||
{
|
||||
uint16 m_nWidth;
|
||||
uint16 m_nHeight;
|
||||
uint16 m_nDepth;
|
||||
int8 m_nImageFormat;
|
||||
uint8 m_nNumMipLevels;
|
||||
};
|
||||
|
||||
schema struct TextureHeader_t : public TextureDesc_t
|
||||
{
|
||||
uint16 m_nMultisampleType; // See RenderMultisampleType_t
|
||||
uint16 m_nFlags; // See TextureSpecificationFlags_t
|
||||
Vector4D m_Reflectivity;
|
||||
};
|
||||
|
||||
//! uncacheableStruct = TextureHeader_t
|
||||
schema struct TextureBits_t
|
||||
{
|
||||
};
|
||||
|
||||
class CTextureBits; // Forward declaration of associated runtime class
|
||||
DEFINE_RESOURCE_CLASS_TYPE( TextureBits_t, CTextureBits, RESOURCE_TYPE_TEXTURE );
|
||||
typedef const ResourceBinding_t< CTextureBits > *HRenderTexture;
|
||||
typedef CStrongHandle< CTextureBits > HRenderTextureStrong;
|
||||
#define RENDER_TEXTURE_HANDLE_INVALID ( (HRenderTexture)0 )
|
||||
|
||||
|
||||
#endif // TEXTURE_G_H
|
||||
Reference in New Issue
Block a user