work on android port

This commit is contained in:
2026-06-16 04:21:59 +03:00
parent 900b12a6a6
commit 52aa5803af
29 changed files with 499 additions and 272 deletions

View File

@@ -9,6 +9,22 @@
#include "cglm/mat4.h"
abstract_class IViewport
{
public:
virtual void UpdateResolution( uint32_t uX, uint32_t uY ) = 0;
virtual IImage *GetRenderImage() = 0;
virtual IImage *GetDepthImage() = 0;
virtual IImage *GetNormalImage() = 0;
virtual void SetFOV( float f ) = 0;
virtual void SetPosition( Vector v ) = 0;
virtual void SetRotation( Quat q ) = 0;
virtual uint32_t GetWidth() = 0;
virtual uint32_t GetHeight() = 0;
};
abstract_class IMesh
@@ -27,8 +43,6 @@ public:
virtual void SetColor( Vector vColor ) = 0;
virtual void SetRadius( Vector vColor ) = 0;
virtual void SetPosition( Vector vPosition ) = 0;
virtual void SetRotation( Quat vRotation ) = 0;
virtual void SetScale( Vector vScale ) = 0;
};
abstract_class IMeshInstance
@@ -43,19 +57,20 @@ public:
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;
virtual void DestroyMeshInstance( IMesh *pMesh, IMeshInstance *pInstance ) = 0;
virtual void DestroyMesh( IMesh *pMesh ) = 0;
virtual IViewport *CreateViewport( uint32_t uX, uint32_t uY ) = 0;
virtual void DestroyViewport( IViewport *pViewport ) = 0;
virtual void ConfigureShader( IShader *pShader ) = 0;
virtual ITextureArray *GetTextures() = 0;
};
extern IWorldRenderer *g_pWorldRenderer;
#endif