lots of updates

This commit is contained in:
2026-02-19 00:39:20 +02:00
parent 898bf90504
commit 4dd2e13c48
53 changed files with 1495 additions and 250 deletions

40
game/client/worldrender.h Normal file
View File

@@ -0,0 +1,40 @@
#ifndef WORLD_RENDER_H
#define WORLD_RENDER_H
#include "tier0/platform.h"
#include "gamesystem.h"
#include "trig.h"
#include "materialsystem/imaterialsystem.h"
abstract_class IMesh
{
public:
virtual void ConfigureShader( IShader *pShader ) = 0;
virtual void SetVertices( IVertexBuffer *pBuffer ) = 0;
virtual void SetIndicies( IIndexBuffer *pBuffer, EIndexFormat eIndexFormat ) = 0;
virtual void SetMaterial( IMaterial *pMaterial ) = 0;
};
abstract_class IMeshInstance
{
public:
virtual void SetPosition( Vector vPosition ) = 0;
virtual void SetRotation( Quat vRotation ) = 0;
virtual void SetScale( Vector vScale ) = 0;
};
abstract_class IWorldRenderer: public IGameSystem
{
public:
virtual void SetCameraRotation( Quat vRotation ) = 0;
virtual void SetCameraPosition( Vector vPosition ) = 0;
virtual IMesh *CreateMesh( const char *szName ) = 0;
virtual IMeshInstance *CreateInstance( IMesh *pMesh ) = 0;
};
extern IWorldRenderer *g_pWorldRenderer;
#endif