include/AK/Plugin/AkReflectGameData.h
説明を見る。00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028 #ifndef _AK_REFLECT_GAMEDATA_H_
00029 #define _AK_REFLECT_GAMEDATA_H_
00030
00031 #include <AK/SoundEngine/Common/AkTypes.h>
00032
00033 #define AK_MAX_NUM_TEXTURE 4
00034
00035
00036 struct AkImageSourceName
00037 {
00038 AkImageSourceName()
00039 : uNumChar(0)
00040 , pName(NULL)
00041 {
00042 }
00043
00044 void SetName(const char * in_pName)
00045 {
00046 pName = in_pName;
00047 if (pName)
00048 {
00049 uNumChar = (AkUInt32)strlen(in_pName);
00050 }
00051 else
00052 {
00053 uNumChar = 0;
00054 }
00055 }
00056
00057 AkUInt32 uNumChar;
00058 const char * pName;
00059 };
00060
00061 struct AkImageSourceTexture
00062 {
00063 AkImageSourceTexture()
00064 : uNumTexture(1)
00065 {
00066 arTextureID[0] = AK_INVALID_UNIQUE_ID;
00067 }
00068
00069 AkUInt32 uNumTexture;
00070 AkUniqueID arTextureID[AK_MAX_NUM_TEXTURE];
00071 };
00072
00073 struct AkImageSourceParams
00074 {
00075 AkImageSourceParams()
00076 : fDistanceScalingFactor(1.f)
00077 , fLevel(1.f)
00078 {
00079 sourcePosition.X = 0.f;
00080 sourcePosition.Y = 0.f;
00081 sourcePosition.Z = 0.f;
00082 }
00083
00084 AkImageSourceParams(AkVector in_sourcePosition, AkReal32 in_fDistanceScalingFactor, AkReal32 in_fLevel)
00085 : sourcePosition(in_sourcePosition)
00086 , fDistanceScalingFactor(in_fDistanceScalingFactor)
00087 , fLevel(in_fLevel)
00088 {
00089 }
00090
00091 AkVector sourcePosition;
00092 AkReal32 fDistanceScalingFactor;
00093 AkReal32 fLevel;
00094 };
00095
00096 struct AkReflectImageSource
00097 {
00098 AkReflectImageSource()
00099 : uID((AkImageSourceID)-1)
00100 , params()
00101 , texture()
00102 , name()
00103 {}
00104
00105 AkReflectImageSource(AkImageSourceID in_uID, AkVector in_sourcePosition, AkReal32 in_fDistanceScalingFactor, AkReal32 in_fLevel)
00106 : uID(in_uID)
00107 , params(in_sourcePosition, in_fDistanceScalingFactor, in_fLevel)
00108 , texture()
00109 , name()
00110 {
00111 }
00112
00113 void SetName(const char * in_pName)
00114 {
00115 name.SetName(in_pName);
00116 }
00117
00118 AkImageSourceID uID;
00119 AkImageSourceParams params;
00120 AkImageSourceTexture texture;
00121 AkImageSourceName name;
00122 };
00123
00124
00125 struct AkReflectGameData
00126 {
00127 AkGameObjectID listenerID;
00128 AkUInt32 uNumImageSources;
00129 AkReflectImageSource arSources[1];
00130
00131
00132 AkReflectGameData()
00133 : listenerID( AK_INVALID_GAME_OBJECT )
00134 , uNumImageSources(0)
00135 {}
00136
00137
00138 static AkUInt32 GetSize(AkUInt32 in_uNumSources)
00139 {
00140 return (in_uNumSources > 0) ? sizeof(AkReflectGameData) + (in_uNumSources - 1) * sizeof(AkReflectImageSource) : sizeof(AkReflectGameData);
00141 }
00142 };
00143 #endif // _AK_REFLECT_GAMEDATA_H_
あなたのプロジェクトについて教えてください。ご不明な点はありませんか。
プロジェクトを登録していただくことで、ご利用開始のサポートをいたします。
Wwiseからはじめよう