シェーダパッケージオリジナルリソースクラス More...
#include <GxResShaderPackage.h>
Public Member Functions | |
操作 | |
b32 | load (GxStream &stream, u32 dataSize) |
リソース読み込み | |
![]() | |
b32 | load (GxStream &stream, u32 dataSize) |
リソース読み込み | |
GX_FORCE_INLINE GxShaderPackage::GxShaderCode * | allocateShaderCode (void) |
シェーダコード作成 | |
GX_FORCE_INLINE GxRenderVertexShader * | getVertexShader (GxShaderPackage::GxShaderCode *pShaderCode) |
頂点シェーダ取得 | |
GX_FORCE_INLINE GxRenderPixelShader * | getPixelShader (GxShaderPackage::GxShaderCode *pShaderCode) |
ピクセルシェーダ取得 | |
GX_FORCE_INLINE b32 | getShader (GxShaderPackage::GxShaderCode *pShaderCode, GxRenderVertexShader *&pVertexShader, GxRenderPixelShader *&pPixelShader) |
シェーダ取得 | |
constexpr u32 | getProgramFunctionsCount (void) const |
プログラムで設定する関数の数 | |
constexpr u32 | getMaterialFunctionsCount (void) const |
マテリアルで設定する関数の数 | |
constexpr u32 | getProgramParameterCount (void) const |
プログラムで設定するパラメータの数 | |
constexpr u32 | getMaterialParameterCount (void) const |
マテリアルで設定するパラメータの数 | |
GX_FORCE_INLINE GX_HANDLE | getProgramFunctionsHandleByName (GX_CSTR name) const |
プログラムで設定する関数のハンドルを名前から取得 | |
GX_FORCE_INLINE GX_HANDLE | getMaterialFunctionsHandleByName (GX_CSTR name) const |
マテリアルで設定する関数のハンドルを名前から取得 | |
GX_FORCE_INLINE GX_HANDLE | getProgramFunctionsHandleByVirtualName (GX_CSTR name) const |
プログラムで設定する関数のハンドルを仮想名から取得 | |
GX_FORCE_INLINE GX_HANDLE | getMaterialFunctionsHandleByVirtualName (GX_CSTR name) const |
マテリアルで設定する関数のハンドルを仮想名から取得 | |
GX_FORCE_INLINE GX_CSTR | getProgramFunctionsName (GX_HANDLE handle) const |
プログラムで設定する関数の名前を取得 | |
GX_FORCE_INLINE GX_CSTR | getMaterialFunctionsName (GX_HANDLE handle) const |
マテリアルで設定する関数の名前を取得 | |
GX_FORCE_INLINE GX_CSTR | getProgramFunctionsVirtualName (GX_HANDLE handle) const |
プログラムで設定する関数の仮想名を取得 | |
GX_FORCE_INLINE GX_CSTR | getMaterialFunctionsVirtualName (GX_HANDLE handle) const |
マテリアルで設定する関数の仮想名を取得 | |
GX_FORCE_INLINE GX_CSTR | getProgramFunctionsValueName (GX_HANDLE handle, u32 value) const |
プログラムで設定する関数の値の名前を取得 | |
GX_FORCE_INLINE GX_CSTR | getMaterialFunctionsValueName (GX_HANDLE handle, u32 value) const |
マテリアルで設定する関数の値の名前を取得 | |
GX_FORCE_INLINE GX_CSTR | getProgramFunctionsValueVirtualName (GX_HANDLE handle, u32 value) const |
プログラムで設定する関数の値の仮想名を取得 | |
GX_FORCE_INLINE GX_CSTR | getMaterialFunctionsValueVirtualName (GX_HANDLE handle, u32 value) const |
マテリアルで設定する関数の値の仮想名を取得 | |
GX_FORCE_INLINE u32 | getProgramFunctionsValueByName (GX_HANDLE handle, GX_CSTR name) const |
プログラムで設定する関数の値を名前から取得 | |
GX_FORCE_INLINE u32 | getMaterialFunctionsValueByName (GX_HANDLE handle, GX_CSTR name) const |
マテリアルで設定する関数の値を名前から取得 | |
GX_FORCE_INLINE u32 | getProgramFunctionsValueByVirtualName (GX_HANDLE handle, GX_CSTR name) const |
プログラムで設定する関数の値を仮想名から取得 | |
GX_FORCE_INLINE u32 | getMaterialFunctionsValueByVirtualName (GX_HANDLE handle, GX_CSTR name) const |
マテリアルで設定する関数の値を仮想名から取得 | |
GX_FORCE_INLINE u32 | getProgramFunctionsValueCount (GX_HANDLE handle) const |
プログラムで設定する関数の値数 | |
GX_FORCE_INLINE u32 | getMaterialFunctionsValueCount (GX_HANDLE handle) const |
マテリアルで設定する関数の値数 | |
GX_FORCE_INLINE GX_HANDLE | getProgramParameterHandleByName (GX_CSTR name) const |
プログラムで設定するパラメータのハンドルを名前から取得 | |
GX_FORCE_INLINE GX_HANDLE | getMaterialParameterHandleByName (GX_CSTR name) const |
マテリアルで設定するパラメータのハンドルを名前から取得 | |
GX_FORCE_INLINE GX_HANDLE | getProgramParameterHandleByVirtualName (GX_CSTR name) const |
プログラムで設定する関数のハンドルを仮想名から取得 | |
GX_FORCE_INLINE GX_HANDLE | getMaterialParameterHandleByVirtualName (GX_CSTR name) const |
マテリアルで設定する関数のハンドルを仮想名から取得 | |
GX_FORCE_INLINE GX_CSTR | getProgramParameterName (GX_HANDLE handle) const |
プログラムで設定するパラメータの名前を取得 | |
GX_FORCE_INLINE GX_CSTR | getMaterialParameterName (GX_HANDLE handle) const |
マテリアルで設定するパラメータの名前を取得 | |
GX_FORCE_INLINE GX_CSTR | getProgramParameterVirtualName (GX_HANDLE handle) const |
プログラムで設定するパラメータの仮想名を取得 | |
GX_FORCE_INLINE GX_CSTR | getMaterialParameterVirtualName (GX_HANDLE handle) const |
マテリアルで設定するパラメータの仮想名を取得 | |
GX_FORCE_INLINE GxShaderLanguage::PARAMETER_TYPE | getProgramParameterType (GX_HANDLE handle) const |
プログラムで設定するパラメータのタイプを取得 | |
GX_FORCE_INLINE GxShaderLanguage::PARAMETER_TYPE | getMaterialParameterType (GX_HANDLE handle) const |
マテリアルで設定するパラメータのタイプを取得 | |
GX_FORCE_INLINE GxShaderPackage & | getShaderPackage (void) |
シェーダーパッケージを取得 | |
void | cleanup (void) override |
解放 | |
![]() | |
s32 | release (void) override |
解放 | |
virtual GX_FORCE_INLINE void | callback (void) |
constexpr u64 | getId (void) const |
ID取得 | |
GX_FORCE_INLINE void | setPath (GX_CSTR path) |
パス設定 | |
constexpr GX_CSTR | getPath (void) const |
パス取得 | |
constexpr u32 | getFileSize (void) const |
ファイルサイズ取得 | |
constexpr u32 | getSize (void) const |
サイズ取得 | |
constexpr GxResBase * | getConfig (void) const |
コンフィグ取得 | |
constexpr ASYNC_STATE | getAsyncState (void) const |
非同期ステート取得 | |
GX_FORCE_INLINE b32 | isAsyncState (ASYNC_STATE asyncState) const |
非同期ステート判定 | |
GX_FORCE_INLINE b32 | isAsyncStateWorking (void) const |
非同期動作中判定 | |
constexpr ASYNC_PRIORITY | getAsyncPriority (void) const |
非同期優先度取得 | |
GX_FORCE_INLINE b32 | isUsable (void) const |
使用可能判定 | |
constexpr GX_CSTR | getExtension (void) const |
拡張子取得 | |
constexpr u32 | getMagicNumber (void) const |
マジックナンバー取得 | |
constexpr u32 | getVersion (void) const |
バージョン取得 | |
GX_FORCE_INLINE void | setOriginalPath (GX_CSTR path) |
オリジナルパス設定 | |
constexpr GX_CSTR | getOriginalPath (void) const |
オリジナルパス取得 | |
GX_FORCE_INLINE b32 | isResourceBaseAttribute (RESOURCE_BASE_ATTRIBUTE attribute) const |
リソース属性判定 | |
![]() | |
GxClassBaseReference (void) | |
コンストラクタ | |
GxClassBaseReference (const GxClassBaseReference &base) | |
コピーコンストラクタ | |
~GxClassBaseReference (void) override | |
デストラクタ | |
constexpr GxClassBaseReference & | operator= (const GxClassBaseReference &base) |
代入演算子 | |
virtual s32 | addReference (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の取得 | |
virtual GX_FORCE_INLINE const GxTypedObject * | getDefaultObject (void) |
デフォルトオブジェクトを取得 | |
GX_FORCE_INLINE b32 | isDefaultObject (void) |
デフォルトオブジェクト判定 | |
Protected Member Functions | |
初期化 | |
GxResShaderPackageGxsl (void) | |
デフォルトコンストラクタ | |
![]() | |
GxResShaderPackage (void) | |
デフォルトコンストラクタ | |
![]() | |
GxResBase (void) | |
コンストラクタ (※本クラスの直接インスタンス化禁止) | |
void | createCallback (void *pUser) |
生成時コールバック | |
b32 | load (GxStream &stream, u32 size) |
ロード | |
b32 | loadBinary (GxStream &stream) |
バイナリリソースのロード | |
constexpr void | setId (u64 id) |
ID設定 | |
constexpr void | setFileSize (u32 fileSize) |
ファイルサイズ設定 | |
constexpr void | setSize (u32 size) |
サイズ設定 | |
GX_FORCE_INLINE void | setConfig (GxResBase *pConfig) |
コンフィグ設定 | |
constexpr void | setAsyncState (ASYNC_STATE asyncState) |
非同期ステート設定 | |
constexpr void | setAsyncPriority (ASYNC_PRIORITY asyncPriority) |
非同期優先度設定 | |
constexpr GX_HANDLE | getAsyncHandle (void) const |
非同期読込みハンドル取得 | |
constexpr void | setAsyncHandle (GX_HANDLE handle) |
非同期読込みハンドル設定 | |
GX_FORCE_INLINE void | setUsable (b32 flag) |
使用可能設定 | |
GX_FORCE_INLINE GxZlib & | getZlib (void) |
Zlib取得 | |
constexpr void * | getDataFromSystem (void) |
システム受け渡しデータを取得 | |
GX_FORCE_INLINE void | setResourceBaseAttribute (RESOURCE_BASE_ATTRIBUTE attribute, b32 enable) |
リソース属性設定 | |
Additional Inherited Members | |
![]() | |
enum class | ASYNC_STATE { LOADING = 0 , COMPLETE , CANCEL_REQUAST , INITIALIZED , ERROR_ = -1 , CANCELED = -2 } |
非同期ロード状態 More... | |
enum class | ASYNC_PRIORITY { NORMAL = 0 , LOW } |
非同期ロード優先 More... | |
enum class | RESOURCE_BASE_ATTRIBUTE { USE_DATA_FROM_SYSTEM , ANY_PATH_RESOURCE , USE_MAIN_MEMORY , REGISTERED_NON_REPLACED , ASYNC_SET_RESOURCE } |
基底リソース属性定義 More... | |
![]() | |
static void | registerCustomProperty (void) |
カスタムプロパティ登録 | |
static void | customPropertyToString (GxProperty &property, GxTypedObject *pOwner, u32 index, GxString *pString, u32 &stringCount) |
カスタムプロパティ処理 (プロパティ → 文字列) | |
static void | customPropertyFromString (GxProperty &property, GxTypedObject *pOwner, u32 index, GxString *pString, u32 stringCount) |
カスタムプロパティ処理 (文字列 → プロパティ) | |
static u32 | customPropertyGetSerializedBinarySize (GxProperty &property, GxTypedObject *pOwner, u32 index) |
カスタムプロパティ処理 (シリアライズ後バイナリサイズ取得) | |
static void * | customPropertySerializeBinary (GxProperty &property, GxTypedObject *pOwner, u32 index, void *pData) |
カスタムプロパティ処理 (バイナリシリアライズ) | |
static const void * | customPropertyDeserializeBinary (GxProperty &property, GxTypedObject *pOwner, u32 index, const void *pData) |
カスタムプロパティ処理 (バイナリデシリアライズ) | |
![]() | |
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 const u32 | RESOURCE_VERSION = 2 |
リソースバージョン定義 | |
static constexpr u32 | RESOURCE_PATH_MAX = GxMath::VALUE_256 |
リソースパス最大長 | |
static constexpr u32 | RESOURCE_CUSTOM_PROPERTY_STRING_NUM = GxMath::VALUE_2 |
リソースカスタムプロパティ文字列登録数 (クラス名 + パス) | |
static constexpr u32 | RESOURCE_PATH_ENCRYPT_KEY_NUM = GxMath::VALUE_8 |
暗号化キー個数 | |
![]() | |
static constexpr s32 | DELAY_RELEASE_COUNT_INFINITY = -1 |
遅延解放の無限待ち定義 | |
![]() | |
GxShaderPackage | _shaderPackage |
シェーダパッケージ | |
![]() | |
s32 | _referenceCount |
参照カウンタ | |
s32 | _delayReleaseCount |
遅延解放カウンタ | |
シェーダパッケージオリジナルリソースクラス
リソース読み込み
stream | [in,out] 読み込み元ストリーム |
dataSize | [in] データサイズ |