OROCHI
 
Loading...
Searching...
No Matches
GxRenderComputeShader.h
Go to the documentation of this file.
1//===========================================================================
9//===========================================================================
10#pragma once
11
12GX_CORE_NAMESPACE_BEGIN()
13
14class GxRenderComputeDeclaration;
15
16//===========================================================================
19//===========================================================================
21{
22 //-------------------------------------------------------------
24 //-------------------------------------------------------------
26public:
28 // ClassBaseReference継承クラス用禁止宣言
30
31 friend class GxRenderDevice;
32
34 //-------------------------------------------------------------
36 //-------------------------------------------------------------
38public:
40 void cleanup(void) override;
41
42protected:
44 b32 initialize(const void* pAssembledCode, u32 assembledCodeSize, u32 constantRegisterParameterCount, u32 usageInputSemantics, u32 constantBufferSize) override;
45
48
50 //-------------------------------------------------------------
52 //-------------------------------------------------------------
54public:
56 GX_FORCE_INLINE void onLostDevice(void) override {}
57
59 GX_FORCE_INLINE b32 onResetDevice(void) override { return true; }
60
62 GX_FORCE_INLINE void onRender(void) override {}
63
65 //-------------------------------------------------------------
67 //-------------------------------------------------------------
69public:
70#if GX_USE_DX11
72 ID3D11ComputeShader* getD3D11ComputeShader(void) const { return _pD3D11ComputeShader; }
73#endif // GX_USE_DX11
74
76 //-------------------------------------------------------------
78 //-------------------------------------------------------------
80private:
81#if GX_USE_DX11
82 ID3D11ComputeShader* _pD3D11ComputeShader;
83#elif defined(_PS5)
84 void* _pUseBuffer;
85#endif //_PS5
86
88};
89
90GX_CORE_NAMESPACE_END()
#define GX_PROHIBIT_CLASS_BASE_REFERENCE(__CLASS__)
GxClassBaseReference継承の禁止宣言(new以外の生成禁止 + コピー禁止)
Definition GxBase.h:244
コンピュートシェーダを管理する
Definition GxRenderComputeShader.h:21
GX_FORCE_INLINE void onRender(void) override
描画通知
Definition GxRenderComputeShader.h:62
GX_FORCE_INLINE b32 onResetDevice(void) override
デバイスのリセット後に通知
Definition GxRenderComputeShader.h:59
GX_FORCE_INLINE void onLostDevice(void) override
デバイスが消失した時点で通知
Definition GxRenderComputeShader.h:56
描画関連の依存をこのクラスで吸収します
Definition GxRenderDevice.h:450
b32 initialize(const GxRenderDeviceInitialInformation *pInitialInformation)
初期化関数
Definition GxRenderDevice.cpp:1017
シェーダ共通の処理を記述
Definition GxRenderShader.h:20
32bitブーリアン
Definition GxDefine.h:173