13GX_SHADER_NAMESPACE_BEGIN()
18#define USE_HARDWARE_PCF (1)
19#if defined(_WINDOWS)|| defined(_PS4) || defined(_PS5) || defined(_XBOX_XS)
21#define GX_USE_MULTISAMPLE (0)
23#define GX_USE_MULTISAMPLE (1)
25#define GX_USE_OVERPAINT (1)
27#define GX_USE_MULTISAMPLE (0)
28#define GX_USE_OVERPAINT (0)
49 friend class GxUnitLightPointShadow;
67 enum class DEVELOP_RENDER_MODE
79 WIRE_FRAME_NO_DEPTH_TEST,
83 GX_ENUM_TABLE_MAX(DEVELOP_RENDER_MODE)
93 GX_RTTI_STRUCT(GxModelPolygonCountInfo)
102 constexpr u32 getPolygonCountAll(
void)
const {
return _background + _character + _others + _instance; }
265 struct GxLightContext
296 void update(
void)
override;
346 b32 createLightProbeMap(u32 probeCount);
365 u32 setLightParameter(
RENDER_VIEW view, u32 lightCount);
367 u32 setTiledLightParameter(
RENDER_VIEW view, u32 lightCount,
const GxLightContext* pLightContext, u32 x, u32 y);
378 constexpr GxUnitLightProbe* getBakingLightProbeUnit(
void)
const {
return _pBakingLightProbeUnit; }
380 constexpr u32 getBakingLightProbeIndex(
void)
const {
return _bakingLightProbeIndex; }
384 constexpr GxResMaterial* getResMaterialDefault(
void)
const {
return _pResMaterialDefualt; }
386 constexpr void setPropertyModelPolygonCountInfo(
const void*
const ) {}
388 GX_FORCE_INLINE
void getPropertyModelPolygonCountInfo(
void*
const pValue) { *
static_cast<const GxModelPolygonCountInfo**
>(pValue) = getModelPolygonCountInfo(); }
449 constexpr DEVELOP_RENDER_MODE getDevelopRenderMode(
void)
const {
return _developRenderMode; }
451 constexpr void setDevelopRenderMode(DEVELOP_RENDER_MODE mode) { _developRenderMode = mode; }
454 const GxModelPolygonCountInfo* getModelPolygonCountInfo(
void);
457 constexpr u32 getRenderPolygonCount(
void) {
return _renderPolygonCount; }
459 constexpr u32 getRenderPolygonCountShadow(
void) {
return _renderPolygonCountShadow; }
461 constexpr u32 getRenderPolygonCountPointShadow(
void) {
return _renderPolygonCountPointShadow; }
463 void addRenderPolygonCount(u32 count);
465 void addRenderPolygonCountShadow(u32 count);
467 void addRenderPolygonCountPointShadow(u32 count);
548#if GX_USE_MULTISAMPLE && GX_USE_OVERPAINT
550 constexpr f32 getOverpaintAlpha(
void){
return _overpaintAlpha; }
552 constexpr void setOverpaintAlpha(f32 alpha){ _overpaintAlpha=alpha; }
643#if GX_ENABLE_HTILE_STENCIL_MASK
644 GxResShaderCompute* _pResMaskStencilRegionComputeShader;
691#if GX_USE_MULTISAMPLE && GX_USE_OVERPAINT
693 GX_HANDLE _handleOverpaintDepthMapSampler;
708 GX_HANDLE _handleShadowBufferSamplerState;
726 GX_HANDLE _handleProjectionMapSamplerState;
730#if defined(_PS4) || defined(_PS5)
793 u32 _bakedLightProbeCount;
795 u32 _bakingLightProbeIndex;
799 DEVELOP_RENDER_MODE _developRenderMode;
800 GxModelPolygonCountInfo _modelPolygonCountInfo;
801 u32 _renderPolygonCount;
802 u32 _renderPolygonCountShadow;
803 u32 _renderPolygonCountPointShadow;
817GX_FORCE_INLINE
GxSysRender* getGxSysRender(
void) {
return static_cast<GxSysRender*
>(getGxSysRenderBase()); }
819GX_SHADER_NAMESPACE_END()
#define GX_PROHIBIT_CLASS_BASE(__CLASS__)
GxClassBase継承の禁止宣言
Definition GxBase.h:240
void GxTypedObject
その他
Definition GxDefine.h:213
u32 GX_HANDLE
ハンドル
Definition GxDefine.h:214
RENDER_VIEW
描画優先度(ビュー)
Definition GxRender.h:442
オブジェクト基底クラス
Definition GxBase.h:88
static constexpr u32 VALUE_4
4
Definition GxMath.h:121
static constexpr u32 VALUE_16
16
Definition GxMath.h:123
static constexpr u32 VALUE_1
1
Definition GxMath.h:119
static constexpr u32 VALUE_4K
4K
Definition GxMath.h:131
プロパティクラス
Definition GxProperty.h:48
マテリアル構造体
Definition GxRenderMaterial.h:18
テクスチャクラス
Definition GxRenderTexture.h:19
頂点バッファを管理する
Definition GxRenderVertexBuffer.h:20
頂点シェーダに渡す頂点の宣言を管理する
Definition GxRenderVertexDeclaration.h:22
マテリアルリソース
Definition GxResMaterial.h:18
LOD
LOD定義
Definition GxResModel.h:33
シェーダパッケージリソースクラス
Definition GxResShaderPackage.h:19
GX_FORCE_INLINE GX_HANDLE getMaterialParameterHandleByName(GX_CSTR name) const
マテリアルで設定するパラメータのハンドルを名前から取得
Definition GxResShaderPackage.h:156
GX_FORCE_INLINE GX_HANDLE getMaterialFunctionsHandleByVirtualName(GX_CSTR name) const
マテリアルで設定する関数のハンドルを仮想名から取得
Definition GxResShaderPackage.h:109
GX_FORCE_INLINE GX_HANDLE getMaterialFunctionsHandleByName(GX_CSTR name) const
マテリアルで設定する関数のハンドルを名前から取得
Definition GxResShaderPackage.h:104
GX_FORCE_INLINE GX_HANDLE getMaterialParameterHandleByVirtualName(GX_CSTR name) const
マテリアルで設定する関数のハンドルを仮想名から取得
Definition GxResShaderPackage.h:161
ピクセルシェーダリソース
Definition GxResShader.h:247
頂点シェーダリソース
Definition GxResShader.h:164
テクスチャリソース
Definition GxResTexture.h:23
実行時型情報クラス
Definition GxRtti.h:154
箱形状クラス
Definition GxShape.h:333
static const u32 SPHERICAL_HARMONICS_DIMENSION_MAX
球面調和関数の最大次数
Definition GxSysLight.h:45
塗りつぶし矩形クラス
Definition GxSysRender.h:121
b32 create(RECT_PRIMITIVE)
生成
Definition GxSysRender.cpp:4925
RECT_PRIMITIVE
矩形プリミティブ定義
Definition GxSysRender.h:129
@ STRIP_B
格子アーティファクト対策のトライストリップ
@ FAN
ファン(OROCHIではサポートしていない!!!!)
@ STRIP_A
格子アーティファクト対策のトライストリップ
GxRenderVertexDeclaration * _pRenderDeclaration
頂点宣言
Definition GxSysRender.h:165
~GxFillRectangle(void)
デストラクタ
Definition GxSysRender.cpp:4914
void draw(void)
描画
Definition GxSysRender.cpp:5042
s32 _vertexCount
頂点数
Definition GxSysRender.h:168
GxFillRectangle(void)
デフォルトコンストラクタ
Definition GxSysRender.cpp:4905
GxRenderVertexBuffer * _pRenderVertexBuffer
頂点バッファ
Definition GxSysRender.h:166
RECT_PRIMITIVE _rectPrimitive
矩形プリミティブ
Definition GxSysRender.h:167
描画システムクラス
Definition GxSysRenderBase.h:115
描画システムクラス
Definition GxSysRender.h:37
constexpr f32 getStaticEnvironmentMapBrightness(RENDER_VIEW view=RENDER_VIEW::_0) const
静的環境マップの明るさを取得
Definition GxSysRender.h:531
void createMatirxToFit(GxMatrixAffine &outMatrix, const GxAABB &aabb)
フラスタムのフィットする変換行列を作成
Definition GxSysRender.cpp:4396
GxShaderPackage::GxShaderCode * _pEffectZShaderCode
エフェクトZシェーダーコード
Definition GxSysRender.h:611
b32 _tiledLighting
タイルライティングフラグ
Definition GxSysRender.h:651
GX_HANDLE _handleSSAOParam5
SSAOパラメータ5ハンドル
Definition GxSysRender.h:764
f32 _globalOcclusionRadius
グローバルオクルージョン半径
Definition GxSysRender.h:656
GX_HANDLE _handlePointLightOrientation
ポイントライト回転ハンドル
Definition GxSysRender.h:753
GxUnitLightBase * _pUnitLightPointList[static_cast< s32 >(RENDER_VIEW::_3D_MAX)][POINT_LIGHT_COUNT_MAX]
ポイントライトユニットリスト
Definition GxSysRender.h:662
GxResShaderPackage * _pSSSMShaderPackage
SSSMシェーダーパッケージ
Definition GxSysRender.h:613
GxUnitLightShadow * _pRegistedUnitLightShadows[DIRECTIONAL_SHADOW_LIGHT_COUNT_MAX]
登録シャドウライトユニット
Definition GxSysRender.h:659
GX_HANDLE _handlePointShadowLightSpot
ポイントシャドウライトスポットハンドル
Definition GxSysRender.h:749
GX_HANDLE _handleProjectionMapFunctions
プロジェクションマップ関数ハンドル
Definition GxSysRender.h:772
virtual void initializeShaderPackage(void)
シェーダパッケージの初期化
Definition GxSysRender.cpp:479
virtual void updateShadowMatrixStable(RENDER_VIEW view, const GxVector3 &sunVector, GxShadowDataView *pShadowDataView, f32 yMax, f32 yMin)
シャドウ行列の更新
Definition GxSysRender.cpp:3633
static constexpr u32 CASCADE_SHADOW_SPLIT_MAX
最大カスケードシャドウ分割数
Definition GxSysRender.h:53
constexpr GxResModel::LOD getWholeLodMode(void) const
全体LODモードを取得
Definition GxSysRender.h:539
GX_FORCE_INLINE b32 isEnvironmentMapEnable(void) const
動的環境マップ有効/無効を判定
Definition GxSysRender.h:512
GX_HANDLE _handleApplyFog
フォグ適用ハンドル
Definition GxSysRender.h:777
constexpr f32 getEnvironmentMapFar(void) const
環境マップの取得ポジションを取得
Definition GxSysRender.h:524
void renderUnit(void) override
ユニットの描画
Definition GxSysRender.cpp:961
f32 _environmentMapWaitCount
動的環境マップの描画待ちカウント
Definition GxSysRender.h:682
GX_FORCE_INLINE const GxUnitFog::GxParameter & getFogParameter(void) const
フォグのパラメータを取得
Definition GxSysRender.h:476
virtual void updateShadowSplit(void)
シャドウカスケード分割の更新
Definition GxSysRender.cpp:3408
GX_HANDLE _handleMetallicRoughnessMapSampler
メタリックラフネスサンプラ
Definition GxSysRender.h:701
GX_FORCE_INLINE b32 isLodEnable(void) const
LOD有効判定
Definition GxSysRender.h:541
GxRenderTexture * _pTextureShadowBufferVRWide
VR用シャドウバッファテクスチャ
Definition GxSysRender.h:592
GX_HANDLE _handleShadowLerp
シャドウ補間ハンドル
Definition GxSysRender.h:738
void terminate(void) override
終了処理
Definition GxSysRender.cpp:335
b32 _useLiSPSM
LiSPSM有効フラグ
Definition GxSysRender.h:667
constexpr f32 getShadowFarDepth(RENDER_VIEW view, u32 cascadeLevel) const
シャドウFar深度を取得
Definition GxSysRender.h:431
GX_HANDLE _handleMultiSampleCompositeScale
マルチサンプルコンポジット拡縮ハンドル
Definition GxSysRender.h:789
GX_HANDLE _handleNormalMapSampler
法線マップサンプラ
Definition GxSysRender.h:697
b32 _dummyLightEnable
ダミーライトフラグ
Definition GxSysRender.h:652
GX_FORCE_INLINE const GxUnitSsao::GxParameter & getSsaoParameter(void) const
SSAOのパラメータを取得
Definition GxSysRender.h:481
GX_HANDLE _handlePointShadowLightOrientation
ポイントシャドウライト回転ハンドル
Definition GxSysRender.h:748
constexpr GxUnitLightShadow * getShadowLight(void) const
シャドウライトを取得
Definition GxSysRender.h:392
GX_FORCE_INLINE const GxMatrix44 & getShadowRenderMatrix(RENDER_VIEW view, u32 cascadeLevel) const
シャドウ行列を取得
Definition GxSysRender.h:421
constexpr GxUnitLightShadow * getRegistedShadowLightAtView(RENDER_VIEW view) const
指定したビューに登録されているシャドウライトを取得
Definition GxSysRender.h:394
u32 _cascadeShadowSplit[static_cast< s32 >(RENDER_VIEW::_3D_MAX)]
カスケードシャドウ分割数
Definition GxSysRender.h:664
GX_FORCE_INLINE void setDummyLightEnable(b32 enable)
ダミーライト有効/無効を設定
Definition GxSysRender.h:493
GX_HANDLE _handlePointShadowLightColor
ポイントシャドウライト色ハンドル
Definition GxSysRender.h:745
GX_HANDLE _handleEnvironmentSampler
環境サンプラ
Definition GxSysRender.h:711
GxResShaderPackage * _pMultiSampleShaderPackage
マルチサンプルシェーダーパッケージ
Definition GxSysRender.h:601
GxShaderPackage::GxShaderCode * _pOpacityMapShaderCode
不透明マップシェーダーコード
Definition GxSysRender.h:627
GxUnitLightBase * _pUnitLightPointShadow[static_cast< s32 >(RENDER_VIEW::_3D_MAX)][POINT_SHADOW_LIGHT_COUNT_MAX]
ポイントシャドウライトユニット
Definition GxSysRender.h:660
GX_HANDLE _handleShadowBufferSampler
シャドウバッファサンプラ
Definition GxSysRender.h:703
GX_FORCE_INLINE b32 isUseLiSPSM(void) const
LiSPSM使用/不使用を判定
Definition GxSysRender.h:495
f32 _environmentMapNear
環境マップ最低描画距離
Definition GxSysRender.h:680
GX_HANDLE _handleAlphaTest
アルファテストハンドル
Definition GxSysRender.h:775
GX_HANDLE _handleSSRParameter
SSRパラメータハンドル
Definition GxSysRender.h:766
GxResShaderPixel * _pResPrimitivePixelShaderSemiTransparence
プリミティブ半透明用ピクセルシェーダー
Definition GxSysRender.h:634
GxShaderPackage::GxShaderCode * _pSSSMShaderCode
SSSMシェーダーコード
Definition GxSysRender.h:614
b32 _isShaderPackageReady
シェーダーパッケージ準備完了フラグ
Definition GxSysRender.h:811
b32 createOpacityMap(void)
不透明マップ作成
Definition GxSysRender.cpp:4565
GxUnitSsr::GxParameter _ssrParameter
SSRパラメータ
Definition GxSysRender.h:650
GX_HANDLE _handleProjectionMapUVOffset
プロジェクションマップUVオフセットハンドル
Definition GxSysRender.h:768
b32 initialize(const GxClassBase *pInitialInformation) override
初期化
Definition GxSysRender.cpp:412
constexpr BRDF_TYPE getBrdfType(void) const
BRDFタイプを取得
Definition GxSysRender.h:471
GX_FORCE_INLINE GX_HANDLE getModelMaterialParameterHandleByName(GX_CSTR name) const
モデルマテリアルのパラメータハンドルを名前から取得
Definition GxSysRender.h:569
b32 renderInitialize(void)
描画初期化
Definition GxSysRender.cpp:4705
GX_HANDLE _handleProjectionMapMatrix
プロジェクションマップ行列ハンドル
Definition GxSysRender.h:767
GX_HANDLE _handleFogColor
フォグ色ハンドル
Definition GxSysRender.h:782
GX_HANDLE _handleLightProbeMapSamplers[static_cast< u32 >(GxSysLight::LIGHT_PROBE_TEXTURE::MAX)]
ライトプローブマップサンプラ
Definition GxSysRender.h:716
GX_FORCE_INLINE void setFogParameter(const GxUnitFog::GxParameter ¶meter)
フォグのパラメータを設定
Definition GxSysRender.h:478
GxResShaderPixel * _pResShadowMapFrustumClipPixelShader
シャドウマップフラスタムクリップ用ピクセルシェーダー
Definition GxSysRender.h:641
virtual void pickupLight(void)
ライトのピックアップ
Definition GxSysRender.cpp:4082
GX_HANDLE _handleSSAOParam
SSAOパラメータ1ハンドル
Definition GxSysRender.h:760
constexpr GxRenderTexture * getOpacityMap(void) const
不透明マップを取得
Definition GxSysRender.h:441
GX_HANDLE _handleFogParameter2
フォグパラメータ2ハンドル
Definition GxSysRender.h:781
constexpr f32 getShadowFarZ(RENDER_VIEW view, u32 cascadeLevel) const
シャドウFarを取得
Definition GxSysRender.h:425
GX_HANDLE _handleShadowEnable
シャドウ有効ハンドル
Definition GxSysRender.h:788
GX_FORCE_INLINE GX_HANDLE getModelMaterialFunctionsHandleByName(GX_CSTR name) const
モデルマテリアルの関数ハンドルを名前から取得
Definition GxSysRender.h:559
b32 _useShadowMapFrustumClip
シャドウマップフラスタムクリップ有効フラグ
Definition GxSysRender.h:668
constexpr GxUnitLightBase * getPointShadowLight(RENDER_VIEW view, u32 index=0) const
ポイントシャドウライトを取得
Definition GxSysRender.h:396
b32 _maskEnable
マスク有効フラグ
Definition GxSysRender.h:675
GX_HANDLE _handlePrimitiveOutputGamma
プリミティブガンマ出力ハンドル
Definition GxSysRender.h:786
constexpr void setCascadeShadowSplitCount(RENDER_VIEW view, u32 count)
カスケードシャドウの分割数を設定(最大数)
Definition GxSysRender.h:413
f32 _environmentMapWaitFrame
動的環境マップの描画待ち時間 単位[フレーム]
Definition GxSysRender.h:683
GX_FORCE_INLINE b32 isDummyLightEnable(void) const
ダミーライト有効/無効を判定
Definition GxSysRender.h:491
GxUnitSsao::GxParameter _ssaoParameter
SSAOパラメータ
Definition GxSysRender.h:649
GX_HANDLE _handleDitherEnable
ディザー有効ハンドル
Definition GxSysRender.h:785
SHADOW_MATRIX_TYPE
シャドウ行列タイプ
Definition GxSysRender.h:246
void extendToWorldMaxMin(GxAABB &aabb, const GxMatrixAffine &lightViewMatrix, f32 yMax, f32 yMin)
AABBをYmax/minに収めるまで延ばす
Definition GxSysRender.cpp:4413
GX_FORCE_INLINE void setMaskEnable(b32 enable)
マスク有効設定
Definition GxSysRender.h:536
GxResShaderPixel * _pModelHighSpeedPixelShader
モデルハイスピードレンダリング用ピクセルシェーダー
Definition GxSysRender.h:624
static constexpr u32 SHADOW_BUFFER_SIZE
シャドウバッファサイズ
Definition GxSysRender.h:63
GX_HANDLE _handleDepthMapSampler
深度マップサンプラ
Definition GxSysRender.h:698
GX_HANDLE _handlePointShadowMatrix
ポイントシャドウ行列ハンドル
Definition GxSysRender.h:744
GxShadowDataView _shadowDataView[static_cast< s32 >(RENDER_VIEW::_3D_MAX)]
シャドウデータ
Definition GxSysRender.h:666
u32 _pointLightCount[static_cast< s32 >(RENDER_VIEW::_3D_MAX)]
ポイントライト数
Definition GxSysRender.h:663
GX_FORCE_INLINE GX_HANDLE getModelMaterialParameterHandleByVirtualName(GX_CSTR name) const
モデルマテリアルのパラメータハンドルを仮想名から取得
Definition GxSysRender.h:574
GX_HANDLE _handleProjectionMapParam
プロジェクションマップパラメータハンドル
Definition GxSysRender.h:769
GxResShaderVertex * _pModelHighSpeedVertexShader
モデルハイスピードレンダリング用頂点シェーダー
Definition GxSysRender.h:623
GX_HANDLE _handleApplyFogColor
フォグ色適用ハンドル
Definition GxSysRender.h:778
GX_HANDLE _handleSSAOBufferSamplerState
SSAOバッファサンプラステートハンドル
Definition GxSysRender.h:765
void setShadowMatrixType(SHADOW_MATRIX_TYPE type)
シャドウマトリクスの生成方式を設定
Definition GxSysRender.cpp:4883
GxMatrixAffine getPointShadowMatrix(const GxUnitLightBase *pPointShadowLight, b32 lookBehind)
ポイントシャドウ行列を取得
Definition GxSysRender.cpp:4198
constexpr f32 getShadowNearZ(RENDER_VIEW view, u32 cascadeLevel) const
シャドウNearを取得
Definition GxSysRender.h:423
GX_HANDLE _handleShadowLightAmbientColor
シャドウライト環境色ハンドル
Definition GxSysRender.h:741
constexpr void setEnvironmentMapNear(f32 nearZ)
環境マップの取得ポジションを設定
Definition GxSysRender.h:522
GxResShaderPackage * _pEffectZShaderPackage
エフェクトZシェーダーパッケージ
Definition GxSysRender.h:610
GX_FORCE_INLINE void setUseHardwarePcf(b32 use)
ハードウェアPCF使用/不使用を設定
Definition GxSysRender.h:501
GX_FORCE_INLINE GxResShaderPackage * getModelShaderPackage(void) override
モデル用シェーダパッケージを取得
Definition GxSysRender.h:556
GX_HANDLE _handleSSAOParam4
SSAOパラメータ4ハンドル
Definition GxSysRender.h:763
GX_FORCE_INLINE void setSsrParameter(const GxUnitSsr::GxParameter ¶meter)
SSRパラメータを設定
Definition GxSysRender.h:488
GxRenderTexture * getShadowBuffer(RENDER_VIEW view=RENDER_VIEW::_0) const
カスケードシャドウマップを取得
Definition GxSysRender.cpp:4857
b32 environmentMapDrawCountDown(void)
環境マップウェイトカウント
Definition GxSysRender.cpp:4545
GX_HANDLE _handleLightProbeMapSampler
ライトプローブマップサンプラ
Definition GxSysRender.h:717
GX_HANDLE _handleProjectionMapSampler[2]
プロジェクションマップサンプラ
Definition GxSysRender.h:724
GX_HANDLE _handleLightProbe[GxSysLight::SPHERICAL_HARMONICS_DIMENSION_MAX][3]
ライトプローブ
Definition GxSysRender.h:718
GX_FORCE_INLINE const GxVector3 & getShadowRenderLightDirection(RENDER_VIEW view) const
描画用のシャドウライトの方向を取得
Definition GxSysRender.h:419
GX_FORCE_INLINE void setSsaoParameter(const GxUnitSsao::GxParameter ¶meter)
SSAOパラメータを設定
Definition GxSysRender.h:483
GX_FORCE_INLINE b32 isMaskEnable(void) const
マスク有効判定
Definition GxSysRender.h:534
u32 scissoringFrustum(const GxVector3 *pSrc, GxVector3 *pDst, u32 dstCount, f32 yMax, f32 yMin)
視推台をYmax/minで切る
Definition GxSysRender.cpp:4334
GX_FORCE_INLINE GxFillRectangle * getFillRectangle(void)
塗りつぶし矩形を取得
Definition GxSysRender.h:580
u32 _renderCascadeShadowSplit[static_cast< s32 >(RENDER_VIEW::_3D_MAX)]
描画カスケードシャドウ分割数
Definition GxSysRender.h:665
GX_HANDLE _handleSpecularMapSampler
反射光マップサンプラ
Definition GxSysRender.h:700
GX_HANDLE _handleCascadeShadowMapFunctions
カスケードシャドウマップ関数ハンドル
Definition GxSysRender.h:770
constexpr s32 getPointShadowSamplingType(void) const
ポイントシャドウのサンプリングタイプを取得
Definition GxSysRender.h:544
constexpr u32 getRendrCascadeShadowSplitCount(RENDER_VIEW view) const
カスケードシャドウの分割数を取得(描画に使われている数)
Definition GxSysRender.h:417
GxShaderPackage::GxShaderCode * _pLinearZShaderCode
リニアZシェーダーコード
Definition GxSysRender.h:608
GxShaderPackage::GxShaderCode * _pSSRShaderCode
SSRシェーダーコード
Definition GxSysRender.h:620
GxUnitLightShadow * setShadowLight(GxUnitLightShadow *pLight)
シャドウライトを設定
Definition GxSysRender.cpp:786
GX_HANDLE _handleColorSpaceAdjustment
カラースペース調整ハンドル
Definition GxSysRender.h:729
GxShaderPackage::GxShaderCode * _pMultiSampleShaderCode
マルチサンプルシェーダーコード
Definition GxSysRender.h:602
f32 _environmentMapFar
環境マップ最高描画距離
Definition GxSysRender.h:681
GX_HANDLE _handleOpacityMapSampler
不透明マップサンプラ
Definition GxSysRender.h:714
GxResShaderPackage * _pSSAOShaderPackage
SSAOシェーダーパッケージ
Definition GxSysRender.h:616
GX_HANDLE _handleShadowLightColor
シャドウライト色ハンドル
Definition GxSysRender.h:740
GX_FORCE_INLINE void setEnvironmentMapPosition(const GxVector3 &position)
環境マップの取得ポジションを設定
Definition GxSysRender.h:518
b32 _useHardwarePcf
ハードウェアPCF有効フラグ
Definition GxSysRender.h:669
virtual void updateShadowMatrixLisPSM(RENDER_VIEW view, const GxVector3 &sunVector, GxShadowDataView *pShadowDataView, f32 yMax, f32 yMin)
シャドウ行列の更新
Definition GxSysRender.cpp:3947
GX_HANDLE _handleSSAOInverseViewProjection
SSAO逆ビュープロジェクションハンドル
Definition GxSysRender.h:759
GxResShaderPackage * _pSemiTransparenceCompositeShaderPackage
半透明コンポジットシェーダーパッケージ
Definition GxSysRender.h:629
void setRenderMaterial(GxRenderMaterial *pMaterial)
マテリアル設定
Definition GxSysRender.cpp:4726
GxFillRectangle _fillRectangle
塗りつぶし矩形
Definition GxSysRender.h:809
b32 _enableSSAO
SSAO有効フラグ
Definition GxSysRender.h:653
GX_FORCE_INLINE const GxVector3 & getEnvironmentMapPosition(void) const
環境マップの取得ポジションを取得
Definition GxSysRender.h:516
f32 _staticEnvironmentMapBrightness[static_cast< s32 >(RENDER_VIEW::_3D_MAX)]
環境マップの明るさ
Definition GxSysRender.h:674
f32 _localFalloffRadius
ローカル非表示半径閾値
Definition GxSysRender.h:655
GX_HANDLE _handleLightProbeExtent
ライトプローブの拡縮
Definition GxSysRender.h:722
GX_HANDLE _handlePointLightParam
ポイントライトパラメータハンドル
Definition GxSysRender.h:752
constexpr u32 getCascadeShadowSplitCount(RENDER_VIEW view) const
カスケードシャドウの分割数を取得(最大数)
Definition GxSysRender.h:415
GX_HANDLE _handleLightProbePosition
ライトプローブの座標
Definition GxSysRender.h:721
static constexpr u32 DIRECTIONAL_SHADOW_LIGHT_COUNT_MAX
ディレクショナルライト最大数
Definition GxSysRender.h:55
GX_HANDLE _handlePointShadowLightParam
ポイントシャドウライトパラメータハンドル
Definition GxSysRender.h:747
GxRect getShadowBufferViewportRect(u32 index, RENDER_VIEW view) const
カスケードシャドウマップのビューポート矩形を取得
Definition GxSysRender.cpp:862
GX_HANDLE _handlePointShadowSamplingType
ポイントシャドウサンプリングタイプハンドル
Definition GxSysRender.h:755
GX_HANDLE _handleLightProbeCount
ライトプローブ数
Definition GxSysRender.h:720
GxRenderVertexDeclaration * _pShadowMapFrustumClipVertexDeclaration
シャドウマップフラスタムクリップ用頂点宣言
Definition GxSysRender.h:639
GxUnitFog::GxParameter _fogParameter
フォグパラメータ
Definition GxSysRender.h:648
GX_HANDLE _handleShadowBufferSize
シャドウバッファサイズハンドル
Definition GxSysRender.h:739
GX_FORCE_INLINE b32 isUseHardwarePcf(void) const
ハードウェアPCF使用/不使用を判定
Definition GxSysRender.h:499
GX_HANDLE _handlePointLightColor
ポイントライト色ハンドル
Definition GxSysRender.h:750
GxShaderPackage::GxShaderCode * _pLightingShaderCode
ライティングシェーダーコード
Definition GxSysRender.h:605
void unregistShadowLight(GxUnitLightShadow *pLight)
シャドウライトの登録解除
Definition GxSysRender.cpp:820
GxRenderTexture * _pEnvironmentMapDepthStencil
環境マップ深度テクスチャ
Definition GxSysRender.h:594
GX_HANDLE _handleSSAOInverseView
SSAO逆ビューハンドル
Definition GxSysRender.h:757
GxResShaderPixel * _pResPrimitivePixelShaderTextureSemiTransparence
プリミティブ半透明テクスチャ用ピクセルシェーダー
Definition GxSysRender.h:635
GxRenderTexture * _pWhiteTexture
白レンダーテクスチャ
Definition GxSysRender.h:810
constexpr void setPointShadowSamplingType(s32 type)
ポイントシャドウのサンプリングタイプを設定
Definition GxSysRender.h:546
b32 _enableOpacityMap
不透明マップ有効フラグ
Definition GxSysRender.h:673
GX_HANDLE _handlePointLightPosition
ポイントライト座標ハンドル
Definition GxSysRender.h:751
BRDF_TYPE
ライティング計算定義
Definition GxSysRender.h:175
@ BLINN_PHONG
Blinn-Phong.
GX_FORCE_INLINE b32 isShaderPackageReady(void) const
シェーダパッケージの準備がOKかを取得
Definition GxSysRender.h:355
b32 _velocityMapEnable
速度マップ有効フラグ
Definition GxSysRender.h:672
GX_HANDLE _handlePointShadowMapFunctions
ポイントシャドウマップ関数ハンドル
Definition GxSysRender.h:771
GX_HANDLE _handleDiffuseMapSampler
拡散光マップサンプラ
Definition GxSysRender.h:699
GX_HANDLE _handleRenderTargetSamplerMS
レンダーターゲットマルチサンプラ
Definition GxSysRender.h:728
s32 _pointShadowSamplingType
ポイントシャドウのサンプリングタイプ
Definition GxSysRender.h:688
GX_HANDLE _handleAlphaTestParameter
アルファテストパラメータハンドル
Definition GxSysRender.h:776
u32 _pointShadowLightCount[static_cast< s32 >(RENDER_VIEW::_3D_MAX)]
ポイントシャドウライト数
Definition GxSysRender.h:661
GxResShaderPackage * _pOpacityMapShaderPackage
不透明マップシェーダーパッケージ
Definition GxSysRender.h:626
GX_HANDLE _handleScreenParameter
スクリーンパラメータハンドル
Definition GxSysRender.h:774
f32 _localOcclusionRadius
ローカルオクルージョン半径
Definition GxSysRender.h:654
GxResShaderPackage * _pModelShaderPackage
モデル用シェーダーパッケージ
Definition GxSysRender.h:622
GX_HANDLE _handleShadowLightDirection
シャドウライト方向ハンドル
Definition GxSysRender.h:742
GX_FORCE_INLINE b32 isOpacityMapEnable(void) const
不透明マップ有効/無効を判定
Definition GxSysRender.h:507
b32 _useShadowMatrixOrtho
シャドウ正射影行列有効フラグ
Definition GxSysRender.h:671
GX_FORCE_INLINE const GxVector4 & getShadowSampleLerpParameter(RENDER_VIEW view) const
シャドウサンプリングの線形補間用パラメータを取得
Definition GxSysRender.h:433
GX_HANDLE _handleShadowMatrix
シャドウ行列ハンドル
Definition GxSysRender.h:736
virtual void updateShadowMatrixOrtho(RENDER_VIEW view, const GxVector3 &sunVector, GxShadowDataView *pShadowDataView, f32 yMax, f32 yMin)
シャドウ行列の更新
Definition GxSysRender.cpp:3539
GX_FORCE_INLINE void setUseLiSPSM(b32 use)
LiSPSM使用/不使用を設定
Definition GxSysRender.h:497
constexpr void setBrdfType(BRDF_TYPE type)
BRDFタイプを設定
Definition GxSysRender.h:473
static constexpr u32 POINT_LIGHT_COUNT_MAX
ポイントライト最大数
Definition GxSysRender.h:60
GxRenderTexture * _pTextureOpacity
不透明描画用テクスチャ
Definition GxSysRender.h:595
GX_HANDLE _handleProjectionMatrix
プロジェクション行列ハンドル
Definition GxSysRender.h:734
void createCameraFrustumCorner(const GxMatrixAffine &inverseViewMatrix, f32 nearZ, f32 farZ, f32 fov, f32 aspect, GxVector3 *pDst, u32 dstCount)
カメラの視推台の八隅を求める
Definition GxSysRender.cpp:4276
b32 createRealTimeEnvironmentMap(void)
動的環境マップ作成
Definition GxSysRender.cpp:4514
GxVector3 _environmentMapPosition
環境マップ設定ポジション
Definition GxSysRender.h:679
GX_HANDLE _handleProjectionMatrix2D
2Dプロジェクション行列ハンドル
Definition GxSysRender.h:733
GX_HANDLE _handleStaticEnvironmentMapBrightness
環境マップ明るさハンドル
Definition GxSysRender.h:783
GxResShaderPackage * _pSSRShaderPackage
SSRシェーダーパッケージ
Definition GxSysRender.h:619
b32 _lodEnable
LODが有効か
Definition GxSysRender.h:686
void update(void) override
更新
Definition GxSysRender.cpp:692
GX_FORCE_INLINE void setOpacityMapEnable(b32 enable)
不透明マップ有効/無効を設定
Definition GxSysRender.h:509
GxResShaderPixel * _pResPrimitivePixelShaderHud
プリミティブHUD用ピクセルシェーダー
Definition GxSysRender.h:636
GX_HANDLE _handlePointShadowLightPosition
ポイントシャドウライト座標ハンドル
Definition GxSysRender.h:746
GxRenderTexture * _pTextureShadowBuffer
シャドウバッファテクスチャ
Definition GxSysRender.h:591
GxResShaderPackage * _pLightingShaderPackage
ライティングシェーダーパッケージ
Definition GxSysRender.h:604
void updateShadowLight(RENDER_VIEW view)
シャドウライトを更新
Definition GxSysRender.cpp:837
GxShaderPackage::GxShaderCode * _pSSAOShaderCode
SSAOシェーダーコード
Definition GxSysRender.h:617
GxResShaderPackage * _pLinearZShaderPackage
リニアZシェーダーパッケージ
Definition GxSysRender.h:607
GX_HANDLE _handleFishEyeParameter
魚眼パラメータハンドル
Definition GxSysRender.h:743
GX_FORCE_INLINE const GxShapeBox & getShadowCullingBox(RENDER_VIEW view, u32 cascadeLevel) const
シャドウパスのカリングボックスを取得
Definition GxSysRender.h:427
GX_HANDLE _handleSemiTransparenceSampler
半透明サンプラ
Definition GxSysRender.h:713
GX_HANDLE _handleShadowMapSampler
シャドウマップサンプラ
Definition GxSysRender.h:702
void updateOpacityMap(GxViewport *pViewport)
不透明マップ更新
Definition GxSysRender.cpp:4587
GxUnitLightShadow * _pUnitLightShadow
シャドウライトユニット
Definition GxSysRender.h:658
~GxSysRender(void) override
デストラクタ
Definition GxSysRender.h:281
GxResModel::LOD _wholeLodMode
全体LODモード
Definition GxSysRender.h:685
GX_FORCE_INLINE void setShaderPackageReady(b32 isReady)
シェーダパッケージの準備がOKかを設定
Definition GxSysRender.h:357
GX_HANDLE _handleSSAOParam3
SSAOパラメータ3ハンドル
Definition GxSysRender.h:762
GX_FORCE_INLINE GxSize getShadowMapResolution(void) const
シャドウマップの解像度を取得
Definition GxSysRender.h:411
constexpr GxRenderTexture * getEnvironmentMap(void) const
動的環境マップを取得
Definition GxSysRender.h:439
constexpr f32 getEnvironmentMapNear(void) const
環境マップの取得ポジションを取得
Definition GxSysRender.h:520
GX_FORCE_INLINE const GxUnitSsr::GxParameter & getSsrParameter(void) const
SSRのパラメータを取得
Definition GxSysRender.h:486
GX_HANDLE _handleApplyFogMaterial
フォグマテリアル適用ハンドル
Definition GxSysRender.h:779
GX_FORCE_INLINE void setEnvironmentMapEnable(b32 enable)
動的環境マップ有効/無効を設定
Definition GxSysRender.h:514
GX_HANDLE _handleSSAOInverseProjection
SSAO逆プロジェクションハンドル
Definition GxSysRender.h:758
GX_HANDLE _handleFogParameter
フォグパラメータハンドル
Definition GxSysRender.h:780
GxVector4 getPointShadowFishEyeParameter(const GxUnitLightBase *pPointShadowLight, b32 useOffset)
ポイントシャドウ用魚眼パラメータを取得
Definition GxSysRender.cpp:4230
GX_HANDLE _handleLightingEnable
ライティング有効ハンドル
Definition GxSysRender.h:787
static constexpr u32 POINT_SHADOW_LIGHT_COUNT_MAX
ポイントシャドウライト最大数
Definition GxSysRender.h:57
GX_FORCE_INLINE const GxMatrix44 & getShadowSampleMatrix(RENDER_VIEW view, u32 cascadeLevel) const
シャドウサンプリング行列を取得
Definition GxSysRender.h:429
GX_HANDLE _handleLightProbeParameter
ライトプローブパラメータ
Definition GxSysRender.h:719
GX_HANDLE _handleDevelopRender
開発用描画ハンドル
Definition GxSysRender.h:784
GX_HANDLE _handleInversProjectionMatrix
プロジェクション逆行列ハンドル
Definition GxSysRender.h:735
GxSysRender(void)
デフォルトコンストラクタ
Definition GxSysRender.cpp:136
GX_HANDLE _handleShadowFar
シャドウFarハンドル
Definition GxSysRender.h:737
GxShaderPackage::GxShaderCode * _pSemiTransparenceCompositeShaderCode
半透明コンポジットシェーダーコード
Definition GxSysRender.h:630
GX_HANDLE _handlePointLightSpot
ポイントライトスポットハンドル
Definition GxSysRender.h:754
constexpr void setStaticEnvironmentMapBrightness(f32 brightness, RENDER_VIEW view=RENDER_VIEW::_0)
静的環境マップの明るさを設定
Definition GxSysRender.h:529
GX_FORCE_INLINE void setVelocityMapEnable(b32 enable)
速度マップ有効/無効を設定
Definition GxSysRender.h:505
GX_HANDLE _handleSSAOParam2
SSAOパラメータ2ハンドル
Definition GxSysRender.h:761
GxResShaderVertex * _pResShadowMapFrustumClipVertexShader
シャドウマップフラスタムクリップ用頂点シェーダー
Definition GxSysRender.h:640
constexpr GxRenderTexture * getWhiteTexture(void) const
Get white filled 1x1px texture.
Definition GxSysRender.h:583
GX_HANDLE _handleBRDF
BRDFハンドル
Definition GxSysRender.h:773
f32 _globalFallOffRadius
グローバル非表示半径閾値
Definition GxSysRender.h:657
GxResShaderPixel * _pResPrimitivePixelShaderTextureHud
プリミティブHUDテクスチャ用ピクセルシェーダー
Definition GxSysRender.h:637
void registShadowLight(GxUnitLightShadow *pLight)
シャドウライトの登録
Definition GxSysRender.cpp:798
GX_HANDLE _handleRenderTargetSampler
レンダーターゲットサンプラ
Definition GxSysRender.h:712
virtual void updateShadowMatrix(void)
シャドウ行列の更新
Definition GxSysRender.cpp:3473
constexpr void setEnvironmentMapFar(f32 farZ)
環境マップの取得ポジションを設定
Definition GxSysRender.h:526
GX_HANDLE _handleCameraParam
カメラパラメータハンドル
Definition GxSysRender.h:756
GX_HANDLE _handleLightProbeSampler
ライトプローブサンプラ
Definition GxSysRender.h:723
GxRenderTexture * _pEnvironmentMap
環境マップテクスチャ
Definition GxSysRender.h:593
s32 primitiveCustomShaderCallback(void *pSource, void *pArgument)
プリミティブ用カスタムシェーダコールバック
Definition GxSysRender.cpp:4684
BRDF_TYPE _brdfType
BRDFタイプ
Definition GxSysRender.h:647
SHADOW_MATRIX_TYPE getShadowMatrixType(void)
シャドウマトリクスの生成方式を取得
Definition GxSysRender.cpp:4866
GX_FORCE_INLINE void setShadowMapResolution(const GxSize &resolution)
シャドウマップの解像度を設定
Definition GxSysRender.h:409
GX_HANDLE _handleSSAOBufferSampler
SSAOバッファサンプラ
Definition GxSysRender.h:715
b32 _enableEnvironmentMap
環境マップ起動
Definition GxSysRender.h:678
GxSize _shadowBufferResolution
シャドウバッファ解像度
Definition GxSysRender.h:670
GX_FORCE_INLINE GX_HANDLE getModelMaterialFunctionsHandleByVirtualName(GX_CSTR name) const
モデルマテリアルの関数ハンドルを仮想名から取得
Definition GxSysRender.h:564
constexpr u32 getPointShadowLightCount(RENDER_VIEW view) const
ポイントシャドウライトの個数を取得
Definition GxSysRender.h:398
GX_FORCE_INLINE b32 isVelocityMapEnable(void) const
速度マップ有効/無効を判定
Definition GxSysRender.h:503
GxResShaderCompute * _pResComputeShader
ライトプローブ計算用シェーダ
Definition GxSysRender.h:632
GX_HANDLE _handleLinearZMapSampler
リニアZマップサンプラ
Definition GxSysRender.h:710
ライト基礎クラス
Definition GxUnitLightBase.h:19
ライトプローブクラス
Definition GxUnitLightProbe.h:18
シャドウライトクラス
Definition GxUnitLight.h:19
モデルクラス
Definition GxUnitModel.h:19
4×4行列(行優先)
Definition GxMatrix.h:607
アフィン変換行列(行優先)
Definition GxMatrix.h:330
矩形
Definition GxStruct.h:951
シェーダコード
Definition GxShaderPackage.h:52
サイズ
Definition GxStruct.h:730
AABB構造体
Definition GxSysRender.h:255
void initialize(const GxVector3 *pPoint, u32 pointMax)
初期化
Definition GxSysRender.cpp:4840
GxVector3 _min
最小値
Definition GxSysRender.h:260
GxVector3 _max
最大値
Definition GxSysRender.h:259
カスケードシャドウ構造体
Definition GxSysRender.h:188
GxMatrix44 _cullingMatrix
カリング行列
Definition GxSysRender.h:203
GxVector3 _frustumClipTriangleList[(12 *2 *2+4) *3]
フラスタムクリップポリゴンリスト
Definition GxSysRender.h:209
GxMatrix44 _sampleMatrix
サンプル行列
Definition GxSysRender.h:207
f32 _nearZ
近クリップ
Definition GxSysRender.h:205
GxMatrix44 _renderMatrix
描画行列
Definition GxSysRender.h:202
u32 _frustumClipTriangleCount
フラスタムクリップポリゴン数
Definition GxSysRender.h:210
GxShapeBox _cullingBox
カリングボックス
Definition GxSysRender.h:204
f32 _farZ
遠クリップ
Definition GxSysRender.h:206
f32 _farDepth
遠深度
Definition GxSysRender.h:208
シャドウデータ構造体
Definition GxSysRender.h:217
GxVector3 _renderLightDirection
ライト方向
Definition GxSysRender.h:232
f32 _farFade
遠フェード
Definition GxSysRender.h:236
f32 _nearZ
近クリップ
Definition GxSysRender.h:233
f32 _nearFade
近フェード
Definition GxSysRender.h:235
f32 _farZ
遠クリップ
Definition GxSysRender.h:234
GxVector4 _sampleLerpParameter
サンプル補間パラメータ
Definition GxSysRender.h:237
GxShadowDataCascade _dataCascade[CASCADE_SHADOW_SPLIT_MAX]
カスケードデータ
Definition GxSysRender.h:231
パラメータ構造体
Definition GxUnitFog.h:43
SSAOパラメータ
Definition GxUnitSsao.h:30
パラメータ構造体
Definition GxUnitSsr.h:30
2次元ベクトル
Definition GxVector.h:34
3次元ベクトル
Definition GxVector.h:245
4次元ベクトル
Definition GxVector.h:582
32bitブーリアン
Definition GxDefine.h:173