made rendering work
This commit is contained in:
39
public/materialsystem/igamewindow.h
Normal file
39
public/materialsystem/igamewindow.h
Normal file
@@ -0,0 +1,39 @@
|
||||
#ifndef GAME_WINDOW_H
|
||||
#define GAME_WINDOW_H
|
||||
|
||||
#include "tier0/platform.h"
|
||||
#include "tier2/iappsystem.h"
|
||||
|
||||
class IImage;
|
||||
abstract_class IGameWindow: public IAppSystem
|
||||
{
|
||||
public:
|
||||
virtual void Frame( float fDelta ) = 0;
|
||||
|
||||
virtual uint32_t GetRenderWidth() = 0;
|
||||
virtual uint32_t GetRenderHeight() = 0;
|
||||
virtual bool BRenderSizeUpdated() = 0;
|
||||
|
||||
virtual void SetOutputImage( IImage *pImage ) = 0;
|
||||
virtual IImage *GetOutputImage() = 0;
|
||||
|
||||
virtual void *CreateVulkanSurface( void *pInstance ) = 0;
|
||||
virtual void DestroyVulkanSurface( void *pInstance ) = 0;
|
||||
};
|
||||
|
||||
abstract_class IGameWindowManager: public IAppSystem
|
||||
{
|
||||
public:
|
||||
virtual void Frame( float fDelta ) = 0;
|
||||
|
||||
virtual IGameWindow *CreateWindow() = 0;
|
||||
virtual void DestroyWindow( IGameWindow* pWindow ) = 0;
|
||||
|
||||
virtual int GetVulkanInstanceExtensionCount() = 0;
|
||||
virtual const char **GetVulkanInstanceExtensions() = 0;
|
||||
};
|
||||
|
||||
IGameWindowManager *GameWindowManager();
|
||||
#define GAME_WINDOW_MANAGER_INTERFACE_VERSION "GameWindowMgr001"
|
||||
|
||||
#endif
|
||||
Reference in New Issue
Block a user