OROCHI
 
Loading...
Searching...
No Matches
GxResCollisionMesh Class Reference

メッシュコリジョンリソースクラス More...

#include <GxResCollisionMesh.h>

Inheritance diagram for GxResCollisionMesh:
Collaboration diagram for GxResCollisionMesh:

Classes

struct  GxHeader
 ヘッダー定義 More...
 

Public Member Functions

定義
 GX_RTTI_RESOURCE_ICON (GxResCollisionMesh, GxResBase, GxRtti::ICON_TYPE::MESH)
 
初期化
 GxResCollisionMesh (void)
 デフォルトコンストラクタ
 
void cleanup (void) override
 delete直前に呼び出される関数
 
アクセサ
constexpr GxVector3getVertexBuffer (void) const
 頂点データバッファ取得
 
constexpr u32 * getIndexBuffer (void) const
 インデックスバッファ取得
 
constexpr u32 * getHitFlagBuffer (void) const
 当たり属性バッファ取得
 
constexpr s32 * getMaterialBuffer (void) const
 素材情報バッファ取得
 
constexpr btBvhTriangleMeshShape * getBtTriangleMeshShape (void) const
 BULLETメッシュシェイプ取得
 
constexpr u32 getVertexCount (void) const
 頂点データ個数取得
 
constexpr u32 getIndexCount (void) const
 インデックス個数取得
 
constexpr u32 getTriangleCount (void) const
 トライアングル個数取得
 
constexpr u32 getMaterialCount (void) const
 マテリアル数の取得
 
constexpr u32 * getMaterialTriangleCount (void) const
 各マテリアルの三角形数の取得
 
- Public Member Functions inherited from GxResBase
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 GxResBasegetConfig (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
 リソース属性判定
 
- Public Member Functions inherited from GxClassBaseReference
 GxClassBaseReference (void)
 コンストラクタ
 
 GxClassBaseReference (const GxClassBaseReference &base)
 コピーコンストラクタ
 
 ~GxClassBaseReference (void) override
 デストラクタ
 
constexpr GxClassBaseReferenceoperator= (const GxClassBaseReference &base)
 代入演算子
 
virtual s32 addReference (void)
 参照カウンタを加算
 
virtual s32 getReferenceCount (void) const
 参照カウンタを取得
 
constexpr void setDelayReleaseCount (s32 count)
 遅延解放カウンタを設定
 
void setDelayReleaseCountInfinity (b32 on)
 無限解放待ちの設定
 
- Public Member Functions inherited from GxClassBaseRoot
constexpr GxClassBaseRoot (void)
 コンストラクタ
 
constexpr GxClassBaseRoot (const GxClassBaseRoot &)
 コピーコンストラクタ
 
virtual ~GxClassBaseRoot (void)
 デストラクタ
 
constexpr GxClassBaseRootoperator= (const GxClassBaseRoot &)
 代入演算子
 
virtual GxRttigetRtti (void) const =0
 Rttiの取得
 
virtual GX_FORCE_INLINE const GxTypedObjectgetDefaultObject (void)
 デフォルトオブジェクトを取得
 
GX_FORCE_INLINE b32 isDefaultObject (void)
 デフォルトオブジェクト判定
 

Protected Attributes

メンバ変数
void * _pBuffer
 バイナリデータバッファ
 
u32 _size
 バイナリデータサイズ
 
GxVector3_pVertex
 頂点データバッファ
 
u32 _vertexCount
 頂点データ個数
 
u32 * _pIndex
 インデックスバッファ
 
u32 _indexCount
 インデックス個数
 
u32 * _pHitFlags
 当たり属性バッファ
 
s32 * _pMaterials
 素材情報バッファ
 
u32 _triangleCount
 トライアングル個数
 
btTriangleIndexVertexArray * _pBtTriangleIndexVertexArray
 BULLETインデックスバッファ
 
btBvhTriangleMeshShape * _pBtTriangleMeshShape
 BULLETメッシュシェイプ
 
void * _pBtOptimizedBvhBuffer
 btOptimizedBvhバッファ
 
u32 _btOptimizedBvhSize
 btOptimizedBvhサイズ
 
btVector3 * _pBtAabbMin
 AABBボックス最小値
 
btVector3 * _pBtAabbMax
 AABBボックス最大値
 
u32 _materialCount
 マテリアル数
 
u32 * _pMaterialTriangleCount
 マテリアルの三角形数バッファ
 
GX_STR _materialNameArray
 マテリアル名バッファ
 
u32 * _pMaterialNameSizeArray
 マテリアル名サイズバッファ
 
GxResBackgroundCollisionSet_pHitflag
 ヒットフラグリソース
 
- Protected Attributes inherited from GxClassBaseReference
s32 _referenceCount
 参照カウンタ
 
s32 _delayReleaseCount
 遅延解放カウンタ
 

操作

b32 load (GxStream &stream, u32 size)
 ロード
 

Additional Inherited Members

- Public Types inherited from GxResBase
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 Public Member Functions inherited from GxResBase
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 Public Member Functions inherited from GxClassBaseReference
static void initializeDelayRelease (void)
 遅延解放リストの初期化
 
static void terminateDelayRelease (void)
 遅延解放リストの終了
 
static void updateDelayRelease (void)
 遅延解放リストの更新
 
static b32 isDelayReleaseEnable (void)
 遅延解放システムの有効判定
 
static u32 getDelayReleaseListCount (void)
 遅延解放待ちの数を取得
 
- Static Public Member Functions inherited from GxClassBaseRoot
static GX_FORCE_INLINE GxRtti__getStaticRtti (void)
 Rttiの取得
 
- Static Public Attributes inherited from GxResBase
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 Public Attributes inherited from GxClassBaseReference
static constexpr s32 DELAY_RELEASE_COUNT_INFINITY = -1
 遅延解放の無限待ち定義
 
- Protected Member Functions inherited from GxResBase
 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 GxZlibgetZlib (void)
 Zlib取得
 
constexpr void * getDataFromSystem (void)
 システム受け渡しデータを取得
 
GX_FORCE_INLINE void setResourceBaseAttribute (RESOURCE_BASE_ATTRIBUTE attribute, b32 enable)
 リソース属性設定
 

Detailed Description

メッシュコリジョンリソースクラス

Member Function Documentation

◆ cleanup()

void GxResCollisionMesh::cleanup ( void )
overridevirtual

delete直前に呼び出される関数

Reimplemented from GxResBase.

◆ load()

b32 GxResCollisionMesh::load ( GxStream & stream,
u32 size )

ロード

Parameters
stream[in,out] 入力ストリーム
size[in] 入力データサイズ
Returns
成功ならtrue
Here is the call graph for this function:

The documentation for this class was generated from the following files: