asset manager
This commit is contained in:
@@ -23,7 +23,6 @@ class CFunnyMeshInstance;
|
||||
class CFunnyMesh: public IMesh
|
||||
{
|
||||
public:
|
||||
virtual void ConfigureShader( IShader *pShader ) override;
|
||||
|
||||
virtual void SetVertices( IVertexBuffer *pBuffer ) override;
|
||||
virtual void SetIndicies( IIndexBuffer *pBuffer, EIndexFormat eIndexFormat ) override;
|
||||
@@ -36,22 +35,6 @@ public:
|
||||
IVertexBuffer *m_pVertexBuffer;
|
||||
};
|
||||
|
||||
void CFunnyMesh::ConfigureShader( IShader *pShader )
|
||||
{
|
||||
pShader->AddLayout(0, 32);
|
||||
pShader->AddAttribute(0, 0, VERTEX_FORMAT_XYZ32_SFLOAT, 0);
|
||||
pShader->AddAttribute(0, 1, VERTEX_FORMAT_XY32_SFLOAT, 12);
|
||||
pShader->AddAttribute(0, 2, VERTEX_FORMAT_XYZ32_SFLOAT, 20);
|
||||
// albedo
|
||||
pShader->AddOutputImage(0, IMAGE_FORMAT_RGBA8_UNORM);
|
||||
pShader->AddOutputImage(1, IMAGE_FORMAT_RGBA16_SFLOAT);
|
||||
pShader->AddOutputImage(2, IMAGE_FORMAT_RGBA32_SFLOAT);
|
||||
|
||||
pShader->SetMultisampling(MULTISAMPLE_TYPE_4_SAMPLES);
|
||||
|
||||
pShader->SetDepthImage(IMAGE_FORMAT_D32_SFLOAT);
|
||||
}
|
||||
|
||||
void CFunnyMesh::SetVertices( IVertexBuffer *pBuffer )
|
||||
{
|
||||
m_pVertexBuffer = pBuffer;
|
||||
@@ -137,6 +120,8 @@ public:
|
||||
|
||||
virtual IMesh *CreateMesh( const char *szName ) override;
|
||||
virtual IMeshInstance *CreateInstance( IMesh *pMesh ) override;
|
||||
|
||||
virtual void ConfigureShader( IShader *pShader ) override;
|
||||
private:
|
||||
CUtlVector<CFunnyMesh*> m_pMeshes;
|
||||
IImage *m_pOutputImage = NULL;
|
||||
@@ -154,6 +139,23 @@ private:
|
||||
versor m_vRot;
|
||||
};
|
||||
|
||||
void CFunnyWorldRenderer::ConfigureShader( IShader *pShader )
|
||||
{
|
||||
pShader->AddLayout(0, 32);
|
||||
pShader->AddAttribute(0, 0, VERTEX_FORMAT_XYZ32_SFLOAT, 0);
|
||||
pShader->AddAttribute(0, 1, VERTEX_FORMAT_XY32_SFLOAT, 12);
|
||||
pShader->AddAttribute(0, 2, VERTEX_FORMAT_XYZ32_SFLOAT, 20);
|
||||
// albedo
|
||||
pShader->AddOutputImage(0, IMAGE_FORMAT_RGBA8_UNORM);
|
||||
pShader->AddOutputImage(1, IMAGE_FORMAT_RGBA16_SFLOAT);
|
||||
pShader->AddOutputImage(2, IMAGE_FORMAT_RGBA32_SFLOAT);
|
||||
|
||||
pShader->SetMultisampling(MULTISAMPLE_TYPE_4_SAMPLES);
|
||||
|
||||
pShader->SetDepthImage(IMAGE_FORMAT_D32_SFLOAT);
|
||||
}
|
||||
|
||||
|
||||
static CFunnyWorldRenderer s_renderer;
|
||||
IWorldRenderer *g_pWorldRenderer = &s_renderer;
|
||||
|
||||
|
||||
Reference in New Issue
Block a user