networking i guess
This commit is contained in:
@@ -109,6 +109,13 @@ enum EStoreMode
|
||||
STORE_MODE_DONT_CARE,
|
||||
};
|
||||
|
||||
enum ECullingMode
|
||||
{
|
||||
CULL_MODE_NONE,
|
||||
CULL_MODE_FRONT,
|
||||
CULL_MODE_BACK,
|
||||
};
|
||||
|
||||
enum ETopologyMode
|
||||
{
|
||||
TOPOLOGY_MODE_POINT_LIST,
|
||||
@@ -168,15 +175,41 @@ public:
|
||||
virtual void UnloadTexture( uint32_t uTextureID ) = 0;
|
||||
};
|
||||
|
||||
abstract_class ITriangleAccelerationStructure: public IRenderingObject
|
||||
{
|
||||
public:
|
||||
virtual void SetVertices( IVertexBuffer *pBuffer, EVertexFormat eFormat, int iStride ) = 0;
|
||||
virtual void SetIndicies( IVertexBuffer *pBuffer, EIndexFormat eFormat ) = 0;
|
||||
virtual void SetTopology( ETopologyMode eTopology ) = 0;
|
||||
virtual void Build() = 0;
|
||||
virtual void Update( IVertexBuffer *pBuffer ) = 0;
|
||||
};
|
||||
|
||||
abstract_class IAABBAccelerationStructure: public IRenderingObject
|
||||
{
|
||||
public:
|
||||
virtual void Build() = 0;
|
||||
};
|
||||
|
||||
abstract_class IWorldAccelerationStructure: public IRenderingObject
|
||||
{
|
||||
public:
|
||||
virtual void Build() = 0;
|
||||
};
|
||||
|
||||
abstract_class IBaseShader
|
||||
{
|
||||
public:
|
||||
virtual void Build() = 0;
|
||||
};
|
||||
|
||||
//-----------------------------------------------------------------------------
|
||||
// Shader object
|
||||
//-----------------------------------------------------------------------------
|
||||
abstract_class IShader
|
||||
abstract_class IShader: public IBaseShader
|
||||
{
|
||||
public:
|
||||
virtual ~IShader() = default;
|
||||
virtual uint32_t PSGetResourceByName( const char *szName ) = 0;
|
||||
virtual uint32_t VSGetResourceByName( const char *szName ) = 0;
|
||||
virtual uint32_t GetResourceByName( const char *szName ) = 0;
|
||||
virtual void AddLayout( int iIndex, int iStride ) = 0;
|
||||
virtual void AddAttribute( int iBufferIndex, int iLocation, EVertexFormat eFormat, int iOffset ) = 0;
|
||||
virtual void SetTopology( ETopologyMode eTopology ) = 0;
|
||||
@@ -184,7 +217,19 @@ public:
|
||||
virtual void SetDepthImage( EImageFormat eFormat ) = 0;
|
||||
virtual void SetMultisampling( EMultisampleType eFormat ) = 0;
|
||||
virtual void DisablePixelShader( bool bDisable) = 0;
|
||||
virtual void Build() = 0;
|
||||
};
|
||||
|
||||
abstract_class IComputeShader
|
||||
{
|
||||
public:
|
||||
};
|
||||
|
||||
abstract_class IRayTracingShader
|
||||
{
|
||||
public:
|
||||
virtual uint32_t GetMissShaderBinding( const char *szName );
|
||||
virtual uint32_t GetClosestHitShaderBinding( const char *szName );
|
||||
virtual uint32_t GetCallableShaderBinding( const char *szName );
|
||||
};
|
||||
|
||||
//-----------------------------------------------------------------------------
|
||||
|
||||
@@ -37,6 +37,12 @@ enum EShaderStage: uint32_t
|
||||
SHADER_STAGE_MISS,
|
||||
SHADER_STAGE_CALLABLE,
|
||||
|
||||
SHADER_STAGE_RAYGEN_SOFTWARE,
|
||||
SHADER_STAGE_ANY_HIT_SOFTWARE,
|
||||
SHADER_STAGE_CLOSEST_HIT_SOFTWARE,
|
||||
SHADER_STAGE_MISS_SOFTWARE,
|
||||
SHADER_STAGE_CALLABLE_SOFTWARE,
|
||||
|
||||
SHADER_STAGE_TASK,
|
||||
SHADER_STAGE_MESH,
|
||||
|
||||
|
||||
Reference in New Issue
Block a user