OROCHI
 
Loading...
Searching...
No Matches
GxUnitSsr.h
Go to the documentation of this file.
1//===========================================================================
9//===========================================================================
10#pragma once
11
12GX_SHADER_NAMESPACE_BEGIN()
13
14//===========================================================================
16//===========================================================================
17class GxUnitSsr : public GxUnitBase
18{
19 //-----------------------------------------------------------
21 //-----------------------------------------------------------
23public:
24 GX_RTTI_CLASS_NAME_ICON(GxUnitSsr, GxUnitBase, "SSR", GxRtti::ICON_TYPE::MATERIAL)
25 // ClassBaseReference継承クラス用禁止宣言
27
28
29 struct GxParameter : public GxStructBase
30 {
31 //-----------------------------------------------------------
33 //-----------------------------------------------------------
35
36 GX_RTTI_STRUCT(GxParameter)
37
38
39 //-----------------------------------------------------------
41 //-----------------------------------------------------------
43
46 : _enable(false)
47 , _intensity(1.0f)
48 , _flipUVLine(0.5f)
49 , _enableAll(true)
50 , _distance(5)
51 , _quality(100)
52 , _depth(0.1f)
53 {}
54
56 //-----------------------------------------------------------
58 //-----------------------------------------------------------
60
67 f32 _depth;
68
70 };
71
73 //-----------------------------------------------------------
75 //-----------------------------------------------------------
77public:
79 GxUnitSsr(void);
80
82 void cleanup(void) override;
83
85 //-----------------------------------------------------------
87 //-----------------------------------------------------------
89protected:
91 void forceAsyncUpdate(void) override;
92
94 //-----------------------------------------------------------
96 //-----------------------------------------------------------
98public:
100 GX_FORCE_INLINE const GxParameter& getParameter(void) const { return _parameter; }
102 GX_FORCE_INLINE void setParameter(const GxParameter& parameter) { _parameter = parameter; }
103
105 //-----------------------------------------------------------
107 //-----------------------------------------------------------
109private:
110 GxParameter _parameter;
111
113};
114
115GX_SHADER_NAMESPACE_END()
#define GX_PROHIBIT_CLASS_BASE_REFERENCE(__CLASS__)
GxClassBaseReference継承の禁止宣言(new以外の生成禁止 + コピー禁止)
Definition GxBase.h:244
@ MATERIAL
マテリアル
ユニット基礎クラス
Definition GxUnitBase.h:45
スクリーンスペースリフレクションユニットクラス
Definition GxUnitSsr.h:18
GX_FORCE_INLINE const GxParameter & getParameter(void) const
パラメータを取得
Definition GxUnitSsr.h:100
GX_FORCE_INLINE void setParameter(const GxParameter &parameter)
パラメータを設定
Definition GxUnitSsr.h:102
Definition GxBase.h:24
パラメータ構造体
Definition GxUnitSsr.h:30
f32 _distance
反射距離
Definition GxUnitSsr.h:65
f32 _flipUVLine
反転UVライン
Definition GxUnitSsr.h:63
f32 _depth
許容深度
Definition GxUnitSsr.h:67
b32 _enable
有効
Definition GxUnitSsr.h:61
f32 _quality
精度
Definition GxUnitSsr.h:66
b32 _enableAll
全体に有効
Definition GxUnitSsr.h:64
f32 _intensity
強さ
Definition GxUnitSsr.h:62
32bitブーリアン
Definition GxDefine.h:173