12GX_SOUND_NAMESPACE_BEGIN()
63#if defined(_WINDOWS) || defined(_XBOX_XS)
65 class GxEngineCallback :
public IXAudio2EngineCallback
73 void OnProcessingPassStart(
void) {}
75 void OnProcessingPassEnd(
void) {}
78 void OnCriticalError(HRESULT error) { GX_ERROR(
false,
"GxUnitSound error(0x%x)", error); }
85#if defined(_WINDOWS) || defined(_XBOX_XS)
119 void update(
void)
override;
122 GX_FORCE_INLINE
b32 isPause(
void)
const override {
return _isPause; }
139#if defined(_WINDOWS) || defined(_XBOX_XS)
141 constexpr IXAudio2* getXaudio2(
void)
const {
return _pXAudio2; }
143 constexpr IXAudio2MasteringVoice* getXaudio2MasteringVoice(
void)
const {
return _pXAudio2MasteringVoice; }
145 GX_FORCE_INLINE
const XAUDIO2_VOICE_DETAILS& getXaudio2VoiceDetails(
void)
const {
return _xaudio2VoiceDetails; }
147 GX_FORCE_INLINE
const X3DAUDIO_HANDLE& getX3dAudioHandle(
void)
const {
return _x3dAudioHandle; }
149 GX_FORCE_INLINE
const X3DAUDIO_LISTENER& getX3dAudioListener(
void)
const {
return _x3dAudioListener; }
152 constexpr GxUnitLocate* getListenerUnit(void) const { return _pListenerUnit; }
165#if defined(_WINDOWS) || defined(_XBOX_XS)
166 GxEngineCallback _callback;
168 IXAudio2MasteringVoice* _pXAudio2MasteringVoice;
169 XAUDIO2_VOICE_DETAILS _xaudio2VoiceDetails;
170 X3DAUDIO_HANDLE _x3dAudioHandle;
171 X3DAUDIO_LISTENER _x3dAudioListener;
180GX_SOUND_NAMESPACE_END()
#define GX_PROHIBIT_CLASS_BASE(__CLASS__)
GxClassBase継承の禁止宣言
Definition GxBase.h:240
オブジェクト基底クラス
Definition GxBase.h:88
JSON解析用ノード
Definition GxJson.h:108
サウンドリソースクラス
Definition GxResSound.h:18
サウンドシステム基底クラス
Definition GxSysSoundBase.h:55
サウンドシステムクラス
Definition GxSysSound.h:57
constexpr void setListenerUnit(GxUnitLocate *pUnit)
リスナーユニットを設定
Definition GxSysSound.h:154
GX_FORCE_INLINE b32 isPause(void) const override
一時停止判定
Definition GxSysSound.h:122
void pause(b32 enable) override
一時停止設定
Definition GxSysSound.cpp:146
GxUnitSoundInteractive * createSoundInteractive(GX_CSTR path0, GX_CSTR path1, f32 controlValue=0.f, s32 loopCount=LOOP_DEFAULT, f32 volume=1.0f, f32 pitch=1.0f, f32 fadeTime=0.f)
インタラクティブサウンドを作成
Definition GxSysSound.cpp:218
b32 initialize(const GxClassBase *pInitialInformationBase) override
初期化
Definition GxSysSound.cpp:58
void terminate(void) override
終了処理
Definition GxSysSound.cpp:95
void update(void) override
更新処理
Definition GxSysSound.cpp:107
GxSysSound(void)
デフォルトコンストラクタ
Definition GxSysSound.cpp:44
GxUnitSound * createSound(GxResSound *pResSound, s32 loopCount=LOOP_DEFAULT, f32 volume=1.0f, f32 pitch=1.0f, b32 is3D=true, GxUnitLocate *pParent=nullptr)
サウンドユニットを作成
Definition GxSysSound.cpp:161
static const s32 LOOP_DEFAULT
デフォルトのループ回数の設定値
Definition GxSysSound.h:84
~GxSysSound(void) override
デストラクタ
Definition GxSysSound.h:105
GxUnitSound * createStream(GX_CSTR path, s32 loopCount=LOOP_DEFAULT, f32 volume=1.0f, f32 pitch=1.0f, b32 is3D=true, f32 fadeTime=0.f, GxUnitLocate *pParent=nullptr)
ストリーミングユニットを作成
Definition GxSysSound.cpp:187
static const s32 LOOP_INFINITY
無限ループの設定値
Definition GxSysSound.h:88
座標ユニット基礎クラス
Definition GxUnitLocate.h:23
サウンド再生ユニット
Definition GxUnitSound.h:18
インタラクティブサウンド再生ユニット
Definition GxUnitSoundInteractive.h:18
static constexpr GxSysSoundBase * getSingletonPointer(void)
Definition GxSingleton.h:59
3次元ベクトル
Definition GxVector.h:245
32bitブーリアン
Definition GxDefine.h:173