シャドウライトクラス More...
#include <GxUnitLight.h>
Protected Member Functions | |
操作 | |
b32 | setup (void) override |
初期化 | |
void | forceAsyncUpdate (void) override |
強制並列更新(pause中も実行) | |
![]() | |
GxUnitLightDirectionalBase (void) | |
デフォルトコンストラクタ | |
![]() | |
GxUnitLightBase (void) | |
デフォルトコンストラクタ | |
constexpr void | setType (TYPE type) |
タイプを設定 | |
constexpr void | setRange (f32 range) |
効果範囲を設定 | |
![]() | |
virtual void | updateSpaceGraph (GxOtFrustumCulling *pOctree) |
b32 | setup (void) override |
初期化 | |
void | preAsyncUpdate (void) override |
並列更新(asyncUpdateの前に実行される) | |
void | asyncUpdate (void) override |
並列更新 | |
void | forceAsyncUpdate (void) override |
強制並列更新(pause中も実行) | |
void | render (void) override |
描画 | |
![]() | |
virtual void | postAsyncUpdate (void) |
並列更新(asyncUpdateの後に実行される) | |
virtual void | sequentialUpdate (void) |
逐次更新 | |
virtual b32 | setRenderMaterial (GxRenderMaterial *pMaterial, const GxResModel::GxMeshGroup *pMeshGroup) |
マテリアルの描画設定 | |
template<typename T > | |
T * | addModule (void) |
モジュールを作成 | |
template<typename T > | |
void | removeModule (void) |
モジュールを削除 | |
初期化 | |
GxUnitLightShadow (void) | |
デフォルトコンストラクタ | |
void | cleanup (void) override |
delete直前に呼び出される関数 | |
アクセサ | |
GX_FORCE_INLINE const GxColorHDR & | getAmbientColor (void) const |
アンビエントカラーを取得 | |
GX_FORCE_INLINE void | setAmbientColor (const GxColorHDR &color) |
アンビエントカラーを設定 | |
GX_FORCE_INLINE b32 | isShadowEnable (void) const |
シャドウ有効/無効を取得 | |
GX_FORCE_INLINE void | setShadowEnable (b32 enable) |
シャドウ有効/無効を設定 | |
constexpr f32 | getShadowNearZ (void) const |
シャドウのニア | |
constexpr void | setShadowNearZ (f32 nearZ) |
シャドウのニア | |
constexpr f32 | getShadowFarZ (void) const |
シャドウのファー | |
constexpr void | setShadowFarZ (f32 farZ) |
シャドウのファー | |
constexpr f32 | getShadowNearFade (void) const |
シャドウのニアのフェード幅 | |
constexpr void | setShadowNearFade (f32 nearFade) |
シャドウのニアのフェード幅 | |
constexpr f32 | getShadowFarFade (void) const |
シャドウのファーのフェード幅 | |
constexpr void | setShadowFarFade (f32 farFade) |
シャドウのファーのフェード幅 | |
constexpr f32 | getShadowSplitParam (void) const |
シャドウのカスケード分割パラメータ | |
constexpr void | setShadowSplitParam (f32 splitParam) |
シャドウのカスケード分割パラメータ | |
constexpr f32 | getShadowFirstFarZ (void) const |
シャドウマップの一段目のファー | |
constexpr void | setShadowFirstFarZ (f32 farZ) |
シャドウマップの一段目のファー | |
constexpr f32 | getShadowWorldYMax (void) const |
シャドウを落とすY上限を取得 | |
constexpr void | setShadowWorldYMax (f32 worldYMax) |
シャドウを落とすY上限を設定 | |
constexpr f32 | getShadowWorldYMin (void) const |
シャドウを落とすY下限を取得 | |
constexpr void | setShadowWorldYMin (f32 worldYMin) |
シャドウを落とすY下限を設定 | |
constexpr f32 | getShadowOffset (void) const |
シャドウのオフセットを取得 | |
constexpr void | setShadowOffset (f32 offset) |
シャドウのオフセットを設定 | |
GX_FORCE_INLINE b32 | isProjectionMapEnable (void) const |
投影マップ有効/無効を取得 | |
GX_FORCE_INLINE void | setProjectionMapEnable (b32 enable) |
投影マップ有効/無効を設定 | |
constexpr GxResTexture * | getResProjectionMap (u32 index) const |
投影マップを取得 | |
constexpr void | setResProjectionMap (u32 index, GxResTexture *resTexture) |
投影マップを設定 | |
constexpr f32 | getProjectionMapScaling (void) const |
投影マップのスケーリングを取得 | |
constexpr void | setProjectionMapScaling (f32 scaling) |
投影マップのスケーリングを設定 | |
GX_FORCE_INLINE GxVector2 | getProjectionMapUVVelocity (u32 index) const |
投影マップのUVスクロール速度を取得 | |
GX_FORCE_INLINE void | setProjectionMapUVVelocity (u32 index, const GxVector2 &velocity) |
投影マップのUVスクロール速度を設定 | |
constexpr f32 | getProjectionMapIntensityMax (void) const |
投影マップの最大輝度を取得 | |
constexpr void | setProjectionMapIntensityMax (f32 intensity) |
投影マップの最大輝度を設定 | |
constexpr f32 | getProjectionMapIntensityMin (void) const |
投影マップの最小輝度を取得 | |
constexpr void | setProjectionMapIntensityMin (f32 intensity) |
投影マップの最小輝度を設定 | |
GX_FORCE_INLINE GxVector3 | getProjectionMapUVOrigin (void) const |
投影マップのUV原点を取得 | |
GX_FORCE_INLINE void | setProjectionMapUVOrigin (const GxVector3 &origin) |
投影マップのUV原点を設定 | |
GxMatrix44 | calculateProjectionMapMatrix (const GxMatrix44 &inverseCameraView) const |
投影マップ行列を取得 | |
GX_FORCE_INLINE GxVector2 | getProjectionMapUVOffset (u32 index) const |
投影マップのUVオフセットを取得 | |
GX_FORCE_INLINE GxVector4 | getProjectionMapParam (void) const |
投影マップのパラメータを取得 | |
Additional Inherited Members | |
![]() | |
enum class | TYPE { UNKNOWN , DIRECTIONAL , POINT , SPOT , MAX } |
ライトタイプ More... | |
![]() | |
enum class | MOVABLE { NONE , STATIC , DYNAMIC , MAX } |
可動性定義 More... | |
enum class | CULLING_FRUSTUM { NORMAL , SHADOW_0 , SHADOW_1 , SHADOW_2 , SHADOW_3 , POINT_SHADOW_0 , POINT_SHADOW_1 , REFLECTION , POST , OTHER , MAX } |
フラスタムカリング定義 More... | |
![]() | |
enum class | STATE { SETUP , RUNNING , DELETE_ } |
状態 More... | |
enum | ATTRIBUTE { ATTRIBUTE_UPDATE = (1 << 0) , ATTRIBUTE_SELECTED = (1 << 1) , ATTRIBUTE_LOCK = (1 << 2) , ATTRIBUTE_SLOW = (1 << 3) , ATTRIBUTE_NOSERIALIZE = (1 << 4) } |
属性 More... | |
![]() | |
void | updateWorldMatrix (void) override |
ワールドマトリクスの更新 | |
GX_FORCE_INLINE const GxVector3 & | getLightVector (void) const |
ライトベクトルを取得 | |
void | setLightVector (const GxVector3 &lightVector) |
ライトベクトルを設定 | |
![]() | |
GX_FORCE_INLINE b32 | isLightEnable (void) const |
ライト有効/無効を取得 | |
GX_FORCE_INLINE void | setLightEnable (b32 enable) |
ライト有効/無効を設定 | |
constexpr TYPE | getType (void) const |
タイプを取得 | |
constexpr u32 | getGroup (void) const |
グループを取得 | |
constexpr void | setGroup (u32 group) |
グループを設定 | |
constexpr f32 | getRange (void) const |
効果範囲を取得 | |
virtual GX_FORCE_INLINE const GxColorHDR & | getColor (void) const |
カラーを取得 | |
GX_FORCE_INLINE void | setColor (const GxColorHDR &color) |
カラーを設定 | |
constexpr u32 | getPriority (void) const |
優先度を取得 | |
constexpr void | setPriority (u32 priority) |
優先度を設定 | |
![]() | |
GxUnitLocate (void) | |
コンストラクタ | |
void | cleanup (void) override |
delete直前に呼び出される関数 | |
GX_FORCE_INLINE const GxMatrixAffine & | getWorldMatrix (void) const |
ワールドマトリクスの取得 | |
void | getWorldMatrix (GxMatrixAffine &matrix) const |
ワールドマトリクスの取得(再計算を行う) | |
GX_FORCE_INLINE void | setWorldMatrix (const GxMatrixAffine &matrix) |
ワールドマトリクスの設定 | |
GX_FORCE_INLINE GxMatrixAffine * | getWorldMatrixAddress (void) |
ワールドマトリクスアドレスの取得 | |
GX_FORCE_INLINE const GxVector3 & | getPosition (void) const |
位置の取得 | |
virtual GX_FORCE_INLINE void | setPosition (const GxVector3 &position) |
位置の設定 | |
GX_FORCE_INLINE const GxVector3 & | getLocalPosition (void) const |
ローカル位置の取得 | |
virtual GX_FORCE_INLINE void | setLocalPosition (const GxVector3 &position) |
ローカル位置の設定 | |
GX_FORCE_INLINE GxQuaternion | getQuaternion (void) const |
回転値の取得 | |
GX_FORCE_INLINE void | setQuaternion (const GxQuaternion &quaternion) |
回転値の設定 | |
GX_FORCE_INLINE const GxQuaternion & | getLocalQuaternion (void) const |
ローカル回転値の取得 | |
GX_FORCE_INLINE void | setLocalQuaternion (const GxQuaternion &quaternion) |
ローカル回転値の設定 | |
GX_FORCE_INLINE GxVector3 | getScale (void) const |
拡縮率の取得 | |
virtual GX_FORCE_INLINE void | setScale (const GxVector3 &scale) |
拡縮率の設定 | |
GX_FORCE_INLINE const GxVector3 & | getLocalScale (void) const |
ローカル拡縮率の取得 | |
virtual GX_FORCE_INLINE void | setLocalScale (const GxVector3 &scale) |
ローカル拡縮率の設定 | |
GX_FORCE_INLINE const GxShapeSphere & | getBoundingSphere (void) const |
バウンディング球を取得 | |
GX_FORCE_INLINE void | setBoundingSphere (const GxShapeSphere &sphere) |
バウンディング球を設定 | |
void | getBoundingSphereWorld (GxShapeSphere &sphere) const |
ワールド座標のバウンディング球の取得 | |
GX_FORCE_INLINE b32 | isCulling (RENDER_VIEW view, u32 subView) const |
カリングされているか判定 | |
GX_FORCE_INLINE b32 | isCullingEnable (void) const |
カリングが有効かを取得 | |
GX_FORCE_INLINE void | setCullingEnable (b32 flag) |
カリングの有効設定 | |
GX_FORCE_INLINE b32 | enabledHierarchicalCulling (void) const |
階層カリングを有効にするオブジェクトかどうか? | |
GX_FORCE_INLINE void | setHierarchicalCulling (b32 flag) |
階層カリングを有効にするかどうか?を設定(規定値は無効 | |
GX_FORCE_INLINE b32 | isDoneHierarchicalCulling (void) const |
階層カリングが既に行われた後かどうか?を判断する | |
GX_FORCE_INLINE void | doneHierarchicalCulling (b32 flag) |
階層カリングを既に行ったかどうか?を設定する | |
constexpr u32 | getCullingState (void) const |
カリングの結果のフラスタムの内外ステータスを取得する。 | |
constexpr void | setCullingState (u32 flag) |
カリングの結果のフラスタムの内外ステータスを保持する。 | |
constexpr void | clearCullingState (void) |
カリングの結果のフラスタムの内外ステータスを保持する。 | |
GX_FORCE_INLINE b32 | isMovable (MOVABLE movable) const |
可動性を判定 | |
void | setMovable (MOVABLE movable) |
可動性を設定 | |
GX_FORCE_INLINE b32 | isDirtyMovable (void) const |
可動性の変更を判定 | |
GX_FORCE_INLINE void | setDirtyMovable (b32 enable) |
可動性の変更を設定 | |
void | kill (void) override |
消去リクエスト | |
virtual void | frustumCulling (void *pFrustum) |
カリングを実行 | |
virtual void | forceSetCullingFlag (u32 argument) |
オブジェクトのカリングフラグを強制設定 | |
virtual void | buildSpaceGraph (void *pOctree) |
空間木に追加 | |
virtual void | eraseSpaceGraph (void *pOctree) |
空間木から削除 | |
virtual GX_FORCE_INLINE void | updateLocalMatrix (void) |
ローカルマトリクスの更新 | |
void | addX (f32 value) |
X軸方向に移動 | |
void | addY (f32 value) |
Y軸方向に移動 | |
void | addZ (f32 value) |
Z軸方向に移動 | |
void | addPosition (const GxVector3 &moveVector) |
指定方向に移動 | |
void | addQuaternion (const GxQuaternion &quaternion) |
クウォータニオン加算 | |
void | rotateAxisY (const GxVector3 &vector, f32 radian) |
Y軸を回転軸として、ワールドのZ軸を指定方向に回転 | |
void | rotateAxisZ (const GxVector3 &vector, f32 radian) |
Z軸を回転軸として、ワールドのY軸を指定方向に回転 | |
b32 | isAbleAddToOctree (void) |
8分木に登録可能か判定 | |
b32 | isAbleDeleteFromOctree (void) |
8分木から削除可能か判定 | |
![]() | |
GxUnitBase (void) | |
コンストラクタ | |
constexpr f32 | getDeltaTimeFactor (void) const |
デルタタイム係数を取得 | |
constexpr void | setDeltaTimeFactor (f32 deltaTimeFactor) |
デルタタイム係数を設定 | |
constexpr f32 | getDeltaTime (void) const |
デルタタイムを取得 | |
constexpr void | setDeltaTime (f32 deltaTime) |
デルタタイムを設定 | |
constexpr f32 | getDeltaTimeRatio (void) const |
デルタタイムレート(通常のフレームレートの何倍か)を取得 | |
constexpr void | setDeltaTimeRatio (f32 deltaTimeRatio) |
デルタタイムレート(通常のフレームレートの何倍か)を設定 | |
constexpr STATE | getState (void) const |
状態を取得 | |
constexpr void | setState (STATE state) |
状態を設定(ユーザーは使用してはならない内部使用) | |
GX_FORCE_INLINE b32 | isEnable (void) const |
有効か判定 | |
constexpr u32 | getAttribute (void) const |
属性を取得 | |
GX_FORCE_INLINE b32 | isAttribute (ATTRIBUTE attribute) const |
属性を判定 | |
GX_FORCE_INLINE void | setAttribute (ATTRIBUTE attribute, b32 enable) |
属性を設定 | |
GX_FORCE_INLINE b32 | isRender (void) const |
描画フラグ判定 | |
void | setRender (b32 enable, b32 withChildren=false) |
描画フラグを設定 | |
GX_FORCE_INLINE GxFlag32Index< RENDER_VIEW > | getRenderViewFlag (void) const |
描画するビューフラグを取得 | |
GX_FORCE_INLINE b32 | isRenderView (RENDER_VIEW view) const |
描画するビューを判定 | |
GX_FORCE_INLINE void | setRenderView (RENDER_VIEW view, b32 enable) |
描画するビューを設定 | |
GX_FORCE_INLINE b32 | isRenderSubView (RENDER_SUB_VIEW subView) const |
描画するサブビューを判定 | |
GX_FORCE_INLINE void | setRenderSubView (RENDER_SUB_VIEW subView, b32 enable) |
描画するサブビューを設定 | |
GX_FORCE_INLINE b32 | isUpdateEnable (UPDATE_TYPE updateType) const |
更新を呼ぶかを判定 | |
GX_FORCE_INLINE void | setUpdateEnable (UPDATE_TYPE updateType, b32 enable) |
更新を呼ぶかを設定 | |
GX_FORCE_INLINE void | getPropertyAttributeUpdate (void *const pValue) |
プロパティ用:更新処理の属性を取得 | |
GX_FORCE_INLINE void | setPropertyAttributeUpdate (const void *const pValue) |
プロパティ用:更新処理の属性を設定 | |
template<typename T > | |
T * | getModule (void) const |
モジュールを取得 | |
constexpr u32 | getChildCount (void) const |
子ユニット数を取得 | |
constexpr GxUnitBase * | getChild (u32 index) const |
子ユニットを取得 | |
constexpr GxUnitBase * | getParent (void) const |
親ユニットを取得 | |
void | setParent (GxUnitBase *pParent) |
親ユニットを設定 | |
constexpr GxResUnitInstance * | getResUnitInstance (void) const |
ユニットインスタンスリソースを取得 | |
void | setResUnitInstance (GxResUnitInstance *pResUnitInstance) |
ユニットインスタンスリソースを設定 | |
constexpr void | getPropertyResUnitInstance (void *const pValue) |
ユニットインスタンスリソースプロパティの取得 | |
void | setPropertyResUnitInstance (const void *const pValue) |
ユニットインスタンスリソースプロパティの設定 | |
GX_FORCE_INLINE const GxTypedObject * | getDefaultObject (void) override |
デフォルトオブジェクトを取得 | |
constexpr GxUnitBase * | getDefaultUnit (void) const |
デフォルトユニットを取得 | |
void | setDefaultUnit (GxUnitBase *pDefaultUnit) |
デフォルトユニットを設定 | |
void | sleep (f32 time) |
スリープ(スクリプト用) | |
template<typename T > | |
T * | createAndAddChild (u32 listProcessNumber=U32_MAX, u32 listKindNumber=U32_MAX, b32 isSerialize=false, const GxRtti *pRtti=nullptr) |
子ユニットを追加作成 | |
![]() | |
GxClassBaseReference (void) | |
コンストラクタ | |
GxClassBaseReference (const GxClassBaseReference &base) | |
コピーコンストラクタ | |
~GxClassBaseReference (void) override | |
デストラクタ | |
constexpr GxClassBaseReference & | operator= (const GxClassBaseReference &base) |
代入演算子 | |
virtual s32 | addReference (void) |
参照カウンタを加算 | |
virtual s32 | release (void) |
解放 | |
virtual s32 | getReferenceCount (void) const |
参照カウンタを取得 | |
constexpr void | setDelayReleaseCount (s32 count) |
遅延解放カウンタを設定 | |
void | setDelayReleaseCountInfinity (b32 on) |
無限解放待ちの設定 | |
![]() | |
constexpr | GxClassBaseRoot (void) |
コンストラクタ | |
constexpr | GxClassBaseRoot (const GxClassBaseRoot &) |
コピーコンストラクタ | |
virtual | ~GxClassBaseRoot (void) |
デストラクタ | |
constexpr GxClassBaseRoot & | operator= (const GxClassBaseRoot &) |
代入演算子 | |
virtual GxRtti & | getRtti (void) const =0 |
Rttiの取得 | |
GX_FORCE_INLINE b32 | isDefaultObject (void) |
デフォルトオブジェクト判定 | |
![]() | |
static void | initializeDelayRelease (void) |
遅延解放リストの初期化 | |
static void | terminateDelayRelease (void) |
遅延解放リストの終了 | |
static void | updateDelayRelease (void) |
遅延解放リストの更新 | |
static b32 | isDelayReleaseEnable (void) |
遅延解放システムの有効判定 | |
static u32 | getDelayReleaseListCount (void) |
遅延解放待ちの数を取得 | |
![]() | |
static GX_FORCE_INLINE GxRtti & | __getStaticRtti (void) |
Rttiの取得 | |
![]() | |
static constexpr s32 | DELAY_RELEASE_COUNT_INFINITY = -1 |
遅延解放の無限待ち定義 | |
![]() | |
static CULLING_FRUSTUM | getFrustumType (const RENDER_SUB_VIEW subview) |
サブビューモードからカリングフラスタムのタイプを取得 | |
![]() | |
s32 | _referenceCount |
参照カウンタ | |
s32 | _delayReleaseCount |
遅延解放カウンタ | |
シャドウライトクラス
GxMatrix44 GxUnitLightShadow::calculateProjectionMapMatrix | ( | const GxMatrix44 & | inverseCameraView | ) | const |
投影マップ行列を取得
inverseCameraView | [in] 逆ビュー行列 |
|
overridevirtual |
|
overrideprotectedvirtual |
|
overrideprotectedvirtual |