CriAtomEx3d API


構成

struct  CriAtomExVectorTag
 3次元ベクトル構造体 [詳細]
struct  CriAtomEx3dSourceConfigTag
 3D音源ハンドル作成用コンフィグ構造体 [詳細]
struct  CriAtomEx3dSourceListConfigTag
 3D音源ハンドルリスト作成用コンフィグ構造体 [詳細]
struct  CriAtomEx3dListenerConfigTag
 3Dリスナーハンドル作成用コンフィグ構造体 [詳細]
struct  CriAtomEx3dRegionConfigTag
 3Dリージョンハンドル作成用コンフィグ構造体 [詳細]
struct  CriAtomEx3dTransceiverConfigTag
 3Dトランシーバーハンドル作成用コンフィグ構造体 [詳細]

マクロ定義

#define criAtomEx3dSource_SetDefaultConfig(p_config)
 3D音源ハンドル作成用コンフィグ構造体にデフォルト値をセット
#define criAtomEx3dSourceList_SetDefaultConfig(p_config)
 3D音源ハンドルリスト作成用コンフィグ構造体にデフォルト値をセット
#define criAtomEx3dListener_SetDefaultConfig(p_config)
 3Dリスナーハンドル作成用コンフィグ構造体にデフォルト値をセット
#define criAtomEx3dRegion_SetDefaultConfig(p_config)
 3Dリージョンハンドル作成用コンフィグ構造体にデフォルト値をセット
#define criAtomEx3dTransceiver_SetDefaultConfig(p_config)
 3Dトランシーバーハンドル作成用コンフィグ構造体にデフォルト値をセット
#define criAtomEx3dSource_SetMinMaxDistance(ex_3d_source, min_attenuation_distance, max_attenuation_distance)   criAtomEx3dSource_SetMinMaxAttenuationDistance((ex_3d_source), (min_attenuation_distance), (max_attenuation_distance))
 3D音源の最小距離/最大距離の設定
#define criAtomEx3dSource_ChangeDefaultMinMaxDistance(min_attenuation_distance, max_attenuation_distance)   criAtomEx3dSource_ChangeDefaultMinMaxAttenuationDistance((min_attenuation_distance), (max_attenuation_distance))
 3D音源の最小距離/最大距離のデフォルト値変更

型定義

typedef CriAtomExVectorTag CriAtomExVector
 3次元ベクトル構造体
typedef CriAtomEx3dSourceConfigTag CriAtomEx3dSourceConfig
 3D音源ハンドル作成用コンフィグ構造体
typedef CriAtomEx3dSourceListConfigTag CriAtomEx3dSourceListConfig
 3D音源ハンドルリスト作成用コンフィグ構造体
typedef CriAtomEx3dListenerConfigTag CriAtomEx3dListenerConfig
 3Dリスナーハンドル作成用コンフィグ構造体
typedef CriAtomEx3dSourceObj * CriAtomEx3dSourceHn
 3D音源ハンドル
typedef CriAtomEx3dSourceListObj * CriAtomEx3dSourceListHn
 3D音源ハンドルリスト
typedef CriAtomEx3dListenerObj * CriAtomEx3dListenerHn
 3Dリスナーハンドル
typedef CriAtomEx3dRegionConfigTag CriAtomEx3dRegionConfig
 3Dリージョンハンドル作成用コンフィグ構造体
typedef CriAtomEx3dRegionObj * CriAtomEx3dRegionHn
 3Dリージョンハンドル
typedef CriAtomEx3dTransceiverConfigTag CriAtomEx3dTransceiverConfig
 3Dトランシーバーハンドル作成用コンフィグ構造体
typedef CriAtomEx3dTransceiverObj * CriAtomEx3dTransceiverHn
 3Dトランシーバーハンドル

関数

CriSint32 CRIAPI criAtomEx3dSource_CalculateWorkSize (const CriAtomEx3dSourceConfig *config)
 3D音源ハンドルの作成に必要なワーク領域サイズの計算
CriAtomEx3dSourceHn CRIAPI criAtomEx3dSource_Create (const CriAtomEx3dSourceConfig *config, void *work, CriSint32 work_size)
 3D音源ハンドルの作成
void CRIAPI criAtomEx3dSource_Destroy (CriAtomEx3dSourceHn ex_3d_source)
 3D音源ハンドルの破棄
void CRIAPI criAtomEx3dSource_Update (CriAtomEx3dSourceHn ex_3d_source)
 3D音源の更新
void CRIAPI criAtomEx3dSource_ResetParameters (CriAtomEx3dSourceHn ex_3d_source)
 3D音源パラメーターの初期化
void CRIAPI criAtomEx3dSource_SetPosition (CriAtomEx3dSourceHn ex_3d_source, const CriAtomExVector *position)
 3D音源の位置の設定
CriAtomExVector CRIAPI criAtomEx3dSource_GetPosition (CriAtomEx3dSourceHn ex_3d_source)
 3D音源の位置の設定
void CRIAPI criAtomEx3dSource_SetVelocity (CriAtomEx3dSourceHn ex_3d_source, const CriAtomExVector *velocity)
 3D音源の速度の設定
void CRIAPI criAtomEx3dSource_SetOrientation (CriAtomEx3dSourceHn ex_3d_source, const CriAtomExVector *front, const CriAtomExVector *top)
 3D音源の向きの設定
void CRIAPI criAtomEx3dSource_SetConeParameter (CriAtomEx3dSourceHn ex_3d_source, CriFloat32 inside_angle, CriFloat32 outside_angle, CriFloat32 outside_volume)
 3D音源のサウンドコーンパラメーターの設定
void CRIAPI criAtomEx3dSource_ChangeDefaultConeParameter (CriFloat32 inside_angle, CriFloat32 outside_angle, CriFloat32 outside_volume)
 3D音源のサウンドコーンパラメーターのデフォルト値変更
void CRIAPI criAtomEx3dSource_SetMinMaxAttenuationDistance (CriAtomEx3dSourceHn ex_3d_source, CriFloat32 min_attenuation_distance, CriFloat32 max_attenuation_distance)
 3D音源の最小距離/最大距離の設定
void CRIAPI criAtomEx3dSource_ChangeDefaultMinMaxAttenuationDistance (CriFloat32 min_attenuation_distance, CriFloat32 max_attenuation_distance)
 3D音源の最小距離/最大距離のデフォルト値変更
void CRIAPI criAtomEx3dSource_SetInteriorPanField (CriAtomEx3dSourceHn ex_3d_source, CriFloat32 source_radius, CriFloat32 interior_distance)
 3D音源のインテリアパンニング境界距離の設定
void CRIAPI criAtomEx3dSource_ChangeDefaultInteriorPanField (CriFloat32 source_radius, CriFloat32 interior_distance)
 3D音源のインテリアパンニング境界距離のデフォルト値変更
void CRIAPI criAtomEx3dSource_SetDopplerFactor (CriAtomEx3dSourceHn ex_3d_source, CriFloat32 doppler_factor)
 3D音源のドップラー係数の設定
void CRIAPI criAtomEx3dSource_ChangeDefaultDopplerFactor (CriFloat32 doppler_factor)
 3D音源のドップラー係数のデフォルト値変更
void CRIAPI criAtomEx3dSource_SetVolume (CriAtomEx3dSourceHn ex_3d_source, CriFloat32 volume)
 3D音源のボリュームの設定
void CRIAPI criAtomEx3dSource_ChangeDefaultVolume (CriFloat32 volume)
 3D音源のボリュームのデフォルト値変更
void CRIAPI criAtomEx3dSource_SetMaxAngleAisacDelta (CriAtomEx3dSourceHn ex_3d_source, CriFloat32 max_delta)
 角度AISACコントロール値の最大変化量の設定
void CRIAPI criAtomEx3dSource_SetDistanceAisacControlId (CriAtomEx3dSourceHn ex_3d_source, CriUint16 aisac_control_id)
 距離AISACコントロールIDの設定
void CRIAPI criAtomEx3dSource_SetListenerBasedAzimuthAngleAisacControlId (CriAtomEx3dSourceHn ex_3d_source, CriUint16 aisac_control_id)
 リスナー基準方位角AISACコントロールIDの設定
void CRIAPI criAtomEx3dSource_SetListenerBasedElevationAngleAisacControlId (CriAtomEx3dSourceHn ex_3d_source, CriUint16 aisac_control_id)
 リスナー基準仰俯角AISACコントロールIDの設定
void CRIAPI criAtomEx3dSource_SetSourceBasedAzimuthAngleAisacControlId (CriAtomEx3dSourceHn ex_3d_source, CriUint16 aisac_control_id)
 音源基準方位角AISACコントロールIDの設定
void CRIAPI criAtomEx3dSource_SetSourceBasedElevationAngleAisacControlId (CriAtomEx3dSourceHn ex_3d_source, CriUint16 aisac_control_id)
 音源基準仰俯角AISACコントロールIDの設定
void CRIAPI criAtomEx3dSource_Set3dRegionHn (CriAtomEx3dSourceHn ex_3d_source, CriAtomEx3dRegionHn ex_3d_region)
 3D音源ハンドルに対する3Dリージョンハンドルの設定
CriSint32 CRIAPI criAtomEx3dSourceList_CalculateWorkSize (const CriAtomEx3dSourceListConfig *config)
 3D音源ハンドルリストの作成に必要なワーク領域サイズの計算
CriAtomEx3dSourceListHn CRIAPI criAtomEx3dSourceList_Create (const CriAtomEx3dSourceListConfig *config, void *work, CriSint32 work_size)
 3D音源ハンドルリストの作成
void CRIAPI criAtomEx3dSourceList_Destroy (CriAtomEx3dSourceListHn ex_3d_source_list)
 3D音源ハンドルリストの破棄
void CRIAPI criAtomEx3dSourceList_Add (CriAtomEx3dSourceListHn ex_3d_source_list, CriAtomEx3dSourceHn ex_3d_source)
 3D音源ハンドルリストへの3D音源ハンドルの追加
void CRIAPI criAtomEx3dSourceList_Remove (CriAtomEx3dSourceListHn ex_3d_source_list, CriAtomEx3dSourceHn ex_3d_source)
 3D音源ハンドルリストから3D音源ハンドルの削除
void CRIAPI criAtomEx3dSourceList_RemoveAll (CriAtomEx3dSourceListHn ex_3d_source_list)
 3D音源ハンドルリストから3D音源ハンドルの全削除
CriSint32 CRIAPI criAtomEx3dListener_CalculateWorkSize (const CriAtomEx3dListenerConfig *config)
 3Dリスナーハンドルの作成に必要なワーク領域サイズの計算
CriAtomEx3dListenerHn CRIAPI criAtomEx3dListener_Create (const CriAtomEx3dListenerConfig *config, void *work, CriSint32 work_size)
 3Dリスナーハンドルの作成
void CRIAPI criAtomEx3dListener_Destroy (CriAtomEx3dListenerHn ex_3d_listener)
 3Dリスナーハンドルの破棄
void CRIAPI criAtomEx3dListener_Update (CriAtomEx3dListenerHn ex_3d_listener)
 3Dリスナーの更新
void CRIAPI criAtomEx3dListener_ResetParameters (CriAtomEx3dListenerHn ex_3d_listener)
 3D音源パラメーターの初期化
void CRIAPI criAtomEx3dListener_SetPosition (CriAtomEx3dListenerHn ex_3d_listener, const CriAtomExVector *position)
 3Dリスナーの位置の設定
CriAtomExVector CRIAPI criAtomEx3dListener_GetPosition (CriAtomEx3dListenerHn ex_3d_listener)
 3Dリスナーの位置の取得
void CRIAPI criAtomEx3dListener_SetVelocity (CriAtomEx3dListenerHn ex_3d_listener, const CriAtomExVector *velocity)
 3Dリスナーの速度の設定
void CRIAPI criAtomEx3dListener_SetOrientation (CriAtomEx3dListenerHn ex_3d_listener, const CriAtomExVector *front, const CriAtomExVector *top)
 3Dリスナーの向きの設定
void CRIAPI criAtomEx3dListener_SetDopplerMultiplier (CriAtomEx3dListenerHn ex_3d_listener, CriFloat32 doppler_multiplier)
 3Dリスナーのドップラー倍率の設定
void CRIAPI criAtomEx3dListener_SetFocusPoint (CriAtomEx3dListenerHn ex_3d_listener, const CriAtomExVector *focus_point)
 3Dリスナーの注目点の設定
void CRIAPI criAtomEx3dListener_SetDistanceFocusLevel (CriAtomEx3dListenerHn ex_3d_listener, CriFloat32 distance_focus_level)
 距離センサのフォーカスレベルの設定
void CRIAPI criAtomEx3dListener_SetDirectionFocusLevel (CriAtomEx3dListenerHn ex_3d_listener, CriFloat32 direction_focus_level)
 方向センサのフォーカスレベルの設定
void CRIAPI criAtomEx_EnableCalculationAisacControlFrom3dPosition (CriBool flag)
 パンタイプがパン3Dの時に、距離減衰AISACと角度AISACコントロール値を音源に反映するか設定
CriBool CRIAPI criAtomEx_IsEnableCalculationAisacControlFrom3dPosition (void)
 パンタイプがパン3Dの時に、距離減衰AISACと角度AISACコントロール値を音源に反映しているか取得
void CRIAPI criAtomEx3dListener_Set3dRegionHn (CriAtomEx3dListenerHn ex_3d_listener, CriAtomEx3dRegionHn ex_3d_region)
 3Dリスナーハンドルに対する3Dリージョンハンドルの設定
CriSint32 CRIAPI criAtomEx3dRegion_CalculateWorkSize (const CriAtomEx3dRegionConfig *config)
 3Dリージョンハンドルの作成に必要なワーク領域サイズの計算
CriAtomEx3dRegionHn CRIAPI criAtomEx3dRegion_Create (const CriAtomEx3dRegionConfig *config, void *work, CriSint32 work_size)
 3Dリージョンハンドルの作成
void CRIAPI criAtomEx3dRegion_Destroy (CriAtomEx3dRegionHn ex_3d_region)
 3Dリージョンハンドルの破棄
CriSint32 CRIAPI criAtomEx3dTransceiver_CalculateWorkSize (const CriAtomEx3dTransceiverConfig *config)
 3Dトランシーバーハンドルの作成に必要なワーク領域サイズの計算
CriAtomEx3dTransceiverHn CRIAPI criAtomEx3dTransceiver_Create (const CriAtomEx3dTransceiverConfig *config, void *work, CriSint32 work_size)
 3Dトランシーバーハンドルの作成
void CRIAPI criAtomEx3dTransceiver_Destroy (CriAtomEx3dTransceiverHn ex_3d_transceiver)
 3Dトランシーバーハンドルの破棄
void CRIAPI criAtomEx3dTransceiver_Update (CriAtomEx3dTransceiverHn ex_3d_transceiver)
 3Dトランシーバーの更新
void CRIAPI criAtomEx3dTransceiver_SetInputPosition (CriAtomEx3dTransceiverHn ex_3d_transceiver, const CriAtomExVector *position)
 3Dトランシーバー入力の位置の設定
void CRIAPI criAtomEx3dTransceiver_SetOutputPosition (CriAtomEx3dTransceiverHn ex_3d_transceiver, const CriAtomExVector *position)
 3Dトランシーバー出力の位置の設定
void CRIAPI criAtomEx3dTransceiver_SetInputOrientation (CriAtomEx3dTransceiverHn ex_3d_transceiver, const CriAtomExVector *front, const CriAtomExVector *top)
 3Dトランシーバー入力の向きの設定
void CRIAPI criAtomEx3dTransceiver_SetOutputOrientation (CriAtomEx3dTransceiverHn ex_3d_transceiver, const CriAtomExVector *front, const CriAtomExVector *top)
 3Dトランシーバー出力の向きの設定
void CRIAPI criAtomEx3dTransceiver_SetOutputConeParameter (CriAtomEx3dTransceiverHn ex_3d_transceiver, CriFloat32 inside_angle, CriFloat32 outside_angle, CriFloat32 outside_volume)
 3Dトランシーバー出力のサウンドコーンパラメーターの設定
void CRIAPI criAtomEx3dTransceiver_SetOutputMinMaxAttenuationDistance (CriAtomEx3dTransceiverHn ex_3d_transceiver, CriFloat32 min_attenuation_distance, CriFloat32 max_attenuation_distance)
 3Dトランシーバーの最小距離/最大距離の設定
void CRIAPI criAtomEx3dTransceiver_SetOutputInteriorPanField (CriAtomEx3dTransceiverHn ex_3d_transceiver, CriFloat32 transceiver_radius, CriFloat32 interior_distance)
 3Dトランシーバー出力のインテリアパンニング境界距離の設定
void CRIAPI criAtomEx3dTransceiver_SetInputCrossFadeField (CriAtomEx3dTransceiverHn ex_3d_transceiver, CriFloat32 direct_audio_radius, CriFloat32 crossfade_distance)
 3Dトランシーバー入力のクロスフェード境界距離の設定
void CRIAPI criAtomEx3dTransceiver_SetOutputVolume (CriAtomEx3dTransceiverHn ex_3d_transceiver, CriFloat32 volume)
 3Dトランシーバー出力のボリュームの設定
void CRIAPI criAtomEx3dTransceiver_AttachAisac (CriAtomEx3dTransceiverHn ex_3d_transceiver, const CriChar8 *global_aisac_name)
 3DトランシーバーにAISACを取り付ける
void CRIAPI criAtomEx3dTransceiver_DetachAisac (CriAtomEx3dTransceiverHn ex_3d_transceiver, const CriChar8 *global_aisac_name)
 3DトランシーバーからAISACを取り外す
void CRIAPI criAtomEx3dTransceiver_SetMaxAngleAisacDelta (CriAtomEx3dTransceiverHn ex_3d_transceiver, CriFloat32 max_delta)
 角度AISACコントロール値の最大変化量の設定
void CRIAPI criAtomEx3dTransceiver_SetDistanceAisacControlId (CriAtomEx3dTransceiverHn ex_3d_transceiver, CriUint16 aisac_control_id)
 距離AISACコントロールIDの設定
void CRIAPI criAtomEx3dTransceiver_SetListenerBasedAzimuthAngleAisacControlId (CriAtomEx3dTransceiverHn ex_3d_transceiver, CriUint16 aisac_control_id)
 リスナー基準方位角AISACコントロールIDの設定
void CRIAPI criAtomEx3dTransceiver_SetListenerBasedElevationAngleAisacControlId (CriAtomEx3dTransceiverHn ex_3d_transceiver, CriUint16 aisac_control_id)
 リスナー基準仰俯角AISACコントロールIDの設定
void CRIAPI criAtomEx3dTransceiver_SetTransceiverOutputBasedAzimuthAngleAisacControlId (CriAtomEx3dTransceiverHn ex_3d_transceiver, CriUint16 aisac_control_id)
 3Dトランシーバー出力基準方位角AISACコントロールIDの設定
void CRIAPI criAtomEx3dTransceiver_SetTransceiverOutputBasedElevationAngleAisacControlId (CriAtomEx3dTransceiverHn ex_3d_transceiver, CriUint16 aisac_control_id)
 3Dトランシーバー出力基準仰俯角AISACコントロールIDの設定
void CRIAPI criAtomEx3dTransceiver_Set3dRegionHn (CriAtomEx3dTransceiverHn ex_3d_transceiver, CriAtomEx3dRegionHn ex_3d_region)
 3Dトランシーバーハンドルに対する3Dリージョンハンドルの設定

マクロ定義

#define criAtomEx3dSource_SetDefaultConfig ( p_config   ) 

値:

{\
    (p_config)->enable_voice_priority_decay = CRI_FALSE;\
}
3D音源ハンドル作成用コンフィグ構造体にデフォルト値をセット

引数:
[out] p_config 3D音源ハンドル作成用コンフィグ構造体へのポインタ
説明:
3D音源ハンドル作成用コンフィグ構造体( CriAtomEx3dSourceConfig )に、デフォルトの値をセットします。
参照:
CriAtomEx3dSourceConfig

#define criAtomEx3dSourceList_SetDefaultConfig ( p_config   ) 

値:

{\
    (p_config)->reserved = 0;\
}
3D音源ハンドルリスト作成用コンフィグ構造体にデフォルト値をセット

引数:
[out] p_config 3D音源ハンドルリスト作成用コンフィグ構造体へのポインタ
説明:
3D音源ハンドルリスト作成用コンフィグ構造体( CriAtomEx3dSourceListConfig )に、デフォルトの値をセットします。
参照:
CriAtomEx3dSourceListConfig

#define criAtomEx3dListener_SetDefaultConfig ( p_config   ) 

値:

{\
    (p_config)->reserved = 0;\
}
3Dリスナーハンドル作成用コンフィグ構造体にデフォルト値をセット

引数:
[out] p_config 3Dリスナーハンドル作成用コンフィグ構造体へのポインタ
説明:
3Dリスナーハンドル作成用コンフィグ構造体( CriAtomEx3dListenerConfig )に、デフォルトの値をセットします。
参照:
CriAtomEx3dListenerConfig

#define criAtomEx3dRegion_SetDefaultConfig ( p_config   ) 

値:

{\
    (p_config)->reserved = 0;\
}
3Dリージョンハンドル作成用コンフィグ構造体にデフォルト値をセット

引数:
[out] p_config 3Dリージョンハンドル作成用コンフィグ構造体へのポインタ
説明:
3Dリージョンハンドル作成用コンフィグ構造体( CriAtomEx3dRegionConfig )に、デフォルトの値をセットします。
参照:
CriAtomEx3dRegionConfig

#define criAtomEx3dTransceiver_SetDefaultConfig ( p_config   ) 

値:

{\
    (p_config)->reserved = 0;\
}
3Dトランシーバーハンドル作成用コンフィグ構造体にデフォルト値をセット

引数:
[out] p_config 3Dトランシーバーハンドル作成用コンフィグ構造体へのポインタ
説明:
3Dトランシーバーハンドル作成用コンフィグ構造体( CriAtomEx3dTransceiverConfig )に、デフォルトの値をセットします。
参照:
CriAtomEx3dTransceiverConfig

#define criAtomEx3dSource_SetMinMaxDistance ( ex_3d_source,
min_attenuation_distance,
max_attenuation_distance   )     criAtomEx3dSource_SetMinMaxAttenuationDistance((ex_3d_source), (min_attenuation_distance), (max_attenuation_distance))

3D音源の最小距離/最大距離の設定

引数:
[in] ex_3d_source 3D音源ハンドル
[in] min_attenuation_distance 最小距離
[in] max_attenuation_distance 最大距離
説明:
3D音源の最小距離/最大距離を設定します。
最小距離は、これ以上音量が大きくならない距離を表します。最大距離は、最小音量になる距離を表します。
ライブラリ初期化時のデフォルト値は以下のとおりです。
  • 最小距離:0.0f
  • 最大距離:0.0f
デフォルト値は、criAtomEx3dSource_ChangeDefaultMinMaxAttenuationDistance 関数にて変更可能です。
データ側に当該パラメーターが設定されている場合に本関数を呼び出すと、データ側の値を上書き(無視)して適用されます。
注意:
設定したパラメーターを実際に適用するには、criAtomEx3dSource_Update 関数を呼び出す必要があります。
参照:
criAtomEx3dSource_Update, criAtomEx3dSource_ChangeDefaultMinMaxDistance

#define criAtomEx3dSource_ChangeDefaultMinMaxDistance ( min_attenuation_distance,
max_attenuation_distance   )     criAtomEx3dSource_ChangeDefaultMinMaxAttenuationDistance((min_attenuation_distance), (max_attenuation_distance))

3D音源の最小距離/最大距離のデフォルト値変更

引数:
[in] min_attenuation_distance 最小距離
[in] max_attenuation_distance 最大距離
説明:
3D音源の最小距離/最大距離のデフォルト値を変更します。
本関数によってデフォルト値を変更すると、以降に作成する3D音源ハンドル( CriAtomEx3dSourceHn )の 最小距離/最大距離の初期値が本関数で設定した値となります。
注意:
当該パラメーターに関して「ツール側で値が変更されていない(デフォルト状態)」データの場合、暗黙的にデフォルト値が適用されます。
そのため、本関数でデフォルト値を変更すると、ツールでの編集時に意図していたパラメーターと異なってしまう可能性があります。
但し、以下に該当するデータは本関数の影響を受けません。
  • ツールのプロパティにて、最小距離/最大距離の初期値設定を0.0以外に設定している
  • インゲームプレビュー用にビルドしている
参照:
criAtomEx3dSource_SetMinMaxDistance


型定義

typedef struct CriAtomExVectorTag CriAtomExVector

3次元ベクトル構造体

説明:
3次元ベクトルを扱うための構造体です。
参照:
CriAtomEx3dListener, CriAtomEx3dSource

typedef struct CriAtomEx3dSourceConfigTag CriAtomEx3dSourceConfig

3D音源ハンドル作成用コンフィグ構造体

説明:
3D音源ハンドルを作成する場合に使用する構造体です。
将来パラメーターが追加される可能性があるため、 本構造体を使用する際には criAtomEx3dSource_SetDefaultConfig マクロを使用し、 構造体の初期化を行ってください。
参照:
criAtomEx3dSource_SetDefaultConfig, criAtomEx3dSource_CalculateWorkSize, criAtomEx3dSource_Create

typedef struct CriAtomEx3dSourceListConfigTag CriAtomEx3dSourceListConfig

3D音源ハンドルリスト作成用コンフィグ構造体

説明:
3D音源ハンドルリストを作成する場合に使用する構造体です。
現状指定可能なパラメーターはありませんが、将来パラメーターが追加される可能性があるため、 本構造体を使用する際には criAtomEx3dSourceList_SetDefaultConfig マクロを使用し、 構造体の初期化を行ってください。
参照:
criAtomEx3dSourceList_SetDefaultConfig, criAtomEx3dSourceList_CalculateWorkSize, criAtomEx3dSourceList_Create

typedef struct CriAtomEx3dListenerConfigTag CriAtomEx3dListenerConfig

3Dリスナーハンドル作成用コンフィグ構造体

説明:
3Dリスナーハンドルを作成する場合に使用する構造体です。
現状指定可能なパラメーターはありませんが、将来パラメーターが追加される可能性があるため、 本構造体を使用する際には criAtomEx3dListener_SetDefaultConfig マクロを使用し、 構造体の初期化を行ってください。
参照:
criAtomEx3dListener_SetDefaultConfig, criAtomEx3dListener_CalculateWorkSize, criAtomEx3dListener_Create

typedef CriAtomEx3dSourceObj* CriAtomEx3dSourceHn

3D音源ハンドル

説明:
3D音源を扱うためのハンドルです。
3Dポジショニング機能に使用します。

3D音源のパラメーター、位置情報の設定等は、3D音源ハンドルを介して実行されます。
参照:
criAtomEx3dSource_Create

typedef CriAtomEx3dSourceListObj* CriAtomEx3dSourceListHn

3D音源ハンドルリスト

説明:
3D音源ハンドルを管理するリストハンドルです。
3Dポジショニング機能におけるマルチポジショニング再生に使用します。
参照:
criAtomEx3dSourceList_Create

typedef CriAtomEx3dListenerObj* CriAtomEx3dListenerHn

3Dリスナーハンドル

説明:
3Dリスナーを扱うためのハンドルです。
3Dポジショニング機能に使用します。

3Dリスナーのパラメーター、位置情報の設定等は、3Dリスナーハンドルを介して実行されます。
参照:
criAtomEx3dListener_Create

typedef struct CriAtomEx3dRegionConfigTag CriAtomEx3dRegionConfig

3Dリージョンハンドル作成用コンフィグ構造体

説明:
3Dリージョンハンドルを作成する場合に使用する構造体です。
現状指定可能なパラメーターはありませんが、将来パラメーターが追加される可能性があるため、 本構造体を使用する際には criAtomEx3dRegion_SetDefaultConfig マクロを使用し、 構造体の初期化を行ってください。
参照:
criAtomEx3dRegion_SetDefaultConfig, criAtomEx3dRegion_CalculateWorkSize, criAtomEx3dRegion_Create

typedef CriAtomEx3dRegionObj* CriAtomEx3dRegionHn

3Dリージョンハンドル

説明:
3Dリージョンを扱うためのハンドルです。
3Dトランシーバー機能に使用します。
参照:
criAtomEx3dRegion_Create

typedef struct CriAtomEx3dTransceiverConfigTag CriAtomEx3dTransceiverConfig

3Dトランシーバーハンドル作成用コンフィグ構造体

説明:
3Dトランシーバーハンドルを作成する場合に使用する構造体です。
現状指定可能なパラメーターはありませんが、将来パラメーターが追加される可能性があるため、 本構造体を使用する際には criAtomEx3dTransceiver_SetDefaultConfig マクロを使用し、 構造体の初期化を行ってください。
参照:
criAtomEx3dTransceiver_SetDefaultConfig, criAtomEx3dTransceiver_CalculateWorkSize, criAtomEx3dTransceiver_Create

typedef CriAtomEx3dTransceiverObj* CriAtomEx3dTransceiverHn

3Dトランシーバーハンドル

説明:
3Dトランシーバーを扱うためのハンドルです。
3Dトランシーバー機能に使用します。

3Dトランシーバーのパラメーター、位置情報の設定等は、3Dトランシーバーハンドルを介して実行されます。
参照:
criAtomEx3dTransceiver_Create


関数

CriSint32 CRIAPI criAtomEx3dSource_CalculateWorkSize ( const CriAtomEx3dSourceConfig config  ) 

3D音源ハンドルの作成に必要なワーク領域サイズの計算

引数:
[in] config 3D音源ハンドル作成用コンフィグ構造体へのポインタ
戻り値:
CriSint32 3D音源ハンドル作成用ワークサイズ
戻り値:
0以上 正常に処理が完了
-1 エラーが発生
説明:
3D音源ハンドルを作成するために必要な、ワーク領域のサイズを取得します。
アロケーターを登録せずに3D音源ハンドルを作成する場合、 あらかじめ本関数で計算したワーク領域サイズ分のメモリを ワーク領域として criAtomEx3dSource_Create 関数にセットする必要があります。

3D音源ハンドルの作成に必要なワークメモリのサイズは、3D音源ハンドル作成用コンフィグ 構造体( CriAtomEx3dSourceConfig )の内容によって変化します。

引数にNULLを指定した場合、デフォルト設定 ( criAtomEx3dSource_SetDefaultConfig 適用時と同じパラメーター)で ワーク領域サイズを計算します。
ワーク領域サイズ計算時に失敗した場合、戻り値は -1 になります。
ワーク領域サイズの計算に失敗した理由については、エラーコールバックの メッセージで確認可能です。
備考:
引数 config の情報は、関数内でのみ参照されます。
関数を抜けた後は参照されませんので、関数実行後に config の領域を解放しても 問題ありません。
参照:
criAtomEx3dSource_Create, CriAtomEx3dSourceConfig

CriAtomEx3dSourceHn CRIAPI criAtomEx3dSource_Create ( const CriAtomEx3dSourceConfig config,
void *  work,
CriSint32  work_size 
)

3D音源ハンドルの作成

引数:
[in] config 3D音源ハンドル作成用コンフィグ構造体へのポインタ
[in] work 3D音源ハンドル作成用ワーク領域へのポインタ
[in] work_size 3D音源ハンドル作成用ワークサイズ
戻り値:
CriAtomEx3dSourceHn 3D音源ハンドル
説明:
3D音源ハンドル作成用コンフィグに基づいて、3D音源ハンドルを作成します。
作成に成功すると、3D音源ハンドルを返します。
3D音源ハンドルを作成する際には、ワーク領域としてメモリを渡す必要があります。
必要なメモリのサイズは、 criAtomEx3dSource_CalculateWorkSize 関数で計算します。
criAtomEx_SetUserAllocator マクロを使用してアロケーターを登録済みの場合、 本関数にワーク領域を指定する必要はありません。)
注意:
本関数を実行する前に、ライブラリを初期化しておく必要があります。

参照:
criAtomEx3dSource_CalculateWorkSize, criAtomEx3dSource_Destroy

void CRIAPI criAtomEx3dSource_Destroy ( CriAtomEx3dSourceHn  ex_3d_source  ) 

3D音源ハンドルの破棄

引数:
[in] ex_3d_source 3D音源ハンドル
説明:
3D音源ハンドルを破棄します。
本関数を実行した時点で、3D音源ハンドル作成時に確保されたリソースが全て解放されます。
また、引数に指定した3D音源ハンドルも無効になります。
3D音源ハンドルをセットしたAtomExプレーヤーで再生している音声がある場合、 本関数を実行する前に、それらの音声を停止するか、そのAtomExプレーヤーを破棄してください。
参照:
criAtomEx3dSource_Create

void CRIAPI criAtomEx3dSource_Update ( CriAtomEx3dSourceHn  ex_3d_source  ) 

3D音源の更新

引数:
[in] ex_3d_source 3D音源ハンドル
説明:
3D音源に設定されているパラメーターを使用して、3D音源を更新します。
本関数では、3D音源に設定されている全てのパラメーターを更新します。 パラメーターをひとつ変更する度に本関数にて更新処理を行うよりも、 複数のパラメーターを変更してから更新処理を行った方が効率的です。
例:
 CriAtomExVector pos;
 CriAtomExVector vel;
 
 // Set position
 pos.x = 0.0f
 pos.y = 0.0f
 pos.z = 1.0f
 criAtomEx3dSource_SetPosition(source, &pos);
 // Set velocity
 vel.x = 1.0f
 vel.y = 0.0f
 vel.z = 0.0f
 criAtomEx3dSource_SetVelocity(source, &vel);
 
 // Update source parameters
 criAtomEx3dSource_Update(source);
注意:
本関数はAtomExプレーヤーのパラメーター更新(criAtomExPlayer_UpdateAll, criAtomExPlayer_Update) とは独立して動作します。3D音源のパラメーターを変更した際は、本関数にて更新処理を行ってください。

void CRIAPI criAtomEx3dSource_ResetParameters ( CriAtomEx3dSourceHn  ex_3d_source  ) 

3D音源パラメーターの初期化

引数:
[in] ex_3d_source 3D音源ハンドル
説明:
3D音源に設定されているパラメーターをクリアし、初期値に戻します。
注意:
クリアしたパラメーターを実際に適用するには、criAtomEx3dSource_Update 関数を呼び出す必要があります。
参照:
criAtomEx3dSource_Update

void CRIAPI criAtomEx3dSource_SetPosition ( CriAtomEx3dSourceHn  ex_3d_source,
const CriAtomExVector position 
)

3D音源の位置の設定

引数:
[in] ex_3d_source 3D音源ハンドル
[in] position 位置ベクトル
説明:
3D音源の位置を設定します。
位置は、距離減衰、および定位計算に使用されます。
位置は、3次元ベクトルで指定します。
デフォルト値は(0.0f, 0.0f, 0.0f)です。
データ側には位置は設定できないため、常に本関数での設定値が使用されます。
注意:
設定したパラメーターを実際に適用するには、criAtomEx3dSource_Update 関数を呼び出す必要があります。
参照:
criAtomEx3dSource_Update

CriAtomExVector CRIAPI criAtomEx3dSource_GetPosition ( CriAtomEx3dSourceHn  ex_3d_source  ) 

3D音源の位置の設定

引数:
[in] ex_3d_source 3D音源ハンドル
説明:
3D音源の位置を取得します。
位置は、3次元ベクトルで取得します。

void CRIAPI criAtomEx3dSource_SetVelocity ( CriAtomEx3dSourceHn  ex_3d_source,
const CriAtomExVector velocity 
)

3D音源の速度の設定

引数:
[in] ex_3d_source 3D音源ハンドル
[in] velocity 速度ベクトル
説明:
3D音源の速度を設定します。
速度は、ドップラー効果の計算に使用されます。
速度は、3次元ベクトルで指定します。速度の単位は、1秒あたりの移動距離です。 デフォルト値は(0.0f, 0.0f, 0.0f)です。
データ側には速度は設定できないため、常に本関数での設定値が使用されます。
注意:
設定したパラメーターを実際に適用するには、criAtomEx3dSource_Update 関数を呼び出す必要があります。
参照:
criAtomEx3dSource_Update

void CRIAPI criAtomEx3dSource_SetOrientation ( CriAtomEx3dSourceHn  ex_3d_source,
const CriAtomExVector front,
const CriAtomExVector top 
)

3D音源の向きの設定

引数:
[in] ex_3d_source 3D音源ハンドル
[in] front 前方ベクトル
[in] top 上方ベクトル
説明:
3D音源の向きを設定します。
本関数で設定した向きは、サウンドコーンの向きとして設定されます。
サウンドコーンは、音源から音が発生する方向を表し、音の指向性の表現に使用されます。
サウンドコーンの向きは、3次元ベクトルで指定します。設定された向きベクトルは、ライブラリ内部で正規化して使用されます。
データ側にはサウンドコーンの向きは設定できないため、常に本関数での設定値が使用されます。
デフォルト値以下のとおりです。
  • 前方ベクトル:(0.0f, 0.0f, 1.0f)
  • 上方ベクトル:(0.0f, 1.0f, 0.0f)
備考:
サウンドコーンの向きを設定した場合、上方ベクトルは無視され、前方ベクトルのみが使用されます。
また、Ambisonics再生を使用している場合、本関数で指定した向きおよびリスナーの向きに従ってAmbisonicsが回転します。
注意:
設定したパラメーターを実際に適用するには、criAtomEx3dSource_Update 関数を呼び出す必要があります。
また、Ambiosnicsに対してサウンドコーンを適用することは出来ません。
参照:
criAtomEx3dSource_SetConeParameter, criAtomEx3dSource_Update

void CRIAPI criAtomEx3dSource_SetConeParameter ( CriAtomEx3dSourceHn  ex_3d_source,
CriFloat32  inside_angle,
CriFloat32  outside_angle,
CriFloat32  outside_volume 
)

3D音源のサウンドコーンパラメーターの設定

引数:
[in] ex_3d_source 3D音源ハンドル
[in] inside_angle サウンドコーンのインサイドアングル
[in] outside_angle サウンドコーンのアウトサイドアングル
[in] outside_volume サウンドコーンのアウトサイドボリューム
説明:
3D音源のサウンドコーンパラメーターを設定します。
サウンドコーンは、音源から音が発生する方向を表し、音の指向性の表現に使用されます。
サウンドコーンは、内側コーン、外側コーンで構成されます。インサイドアングルは内側コーンの角度、 アウトサイドアングルは外側コーンの角度、アウトサイドボリュームは外側コーンの角度以上の方向での音量をそれぞれ表します。
内側コーンの角度より小さい角度の方向では、コーンによる減衰を受けません。 内側コーンと外側コーンの間の方向では、徐々にアウトサイドボリュームまで減衰します。
インサイドアングルおよびアウトサイドアングルは、0.0f〜360.0fを度で指定します。
アウトサイドボリュームは、0.0f〜1.0fを振幅に対する倍率で指定します(単位はデシベルではありません)。
ライブラリ初期化時のデフォルト値は以下のとおりであり、コーンによる減衰は行われません。
  • インサイドアングル:360.0f
  • アウトサイドアングル:360.0f
  • アウトサイドボリューム:0.0f
デフォルト値は、criAtomEx3dSource_ChangeDefaultConeParameter 関数にて変更可能です。
データ側に当該パラメーターが設定されている場合に本関数を呼び出すと、以下のように適用されます。
  • インサイドアングル:加算
  • アウトサイドアングル:加算
  • アウトサイドボリューム:乗算
注意:
設定したパラメーターを実際に適用するには、criAtomEx3dSource_Update 関数を呼び出す必要があります。
参照:
criAtomEx3dSource_Update, criAtomEx3dSource_ChangeDefaultConeParameter

void CRIAPI criAtomEx3dSource_ChangeDefaultConeParameter ( CriFloat32  inside_angle,
CriFloat32  outside_angle,
CriFloat32  outside_volume 
)

3D音源のサウンドコーンパラメーターのデフォルト値変更

引数:
[in] inside_angle サウンドコーンのインサイドアングル
[in] outside_angle サウンドコーンのアウトサイドアングル
[in] outside_volume サウンドコーンのアウトサイドボリューム
説明:
3D音源のサウンドコーンパラメーターのデフォルト値を変更します。
本関数によってデフォルト値を変更すると、以降に作成する3D音源ハンドル( CriAtomEx3dSourceHn )の サウンドコーンパラメーターの初期値が本関数で設定した値となります。
ライブラリ初期化時のデフォルト値については、 criAtomEx3dSource_SetConeParameter 関数を参照して下さい。
注意:
当該パラメーターに関して「ツール側で値が変更されていない(デフォルト状態)」データの場合、暗黙的にデフォルト値が適用されます。
そのため、本関数でデフォルト値を変更すると、ツールでの編集時に意図していたパラメーターと異なってしまう可能性があります。
但し、インゲームプレビュー用にビルドされたデータは本関数の影響を受けません。
参照:
criAtomEx3dSource_SetConeParameter

void CRIAPI criAtomEx3dSource_SetMinMaxAttenuationDistance ( CriAtomEx3dSourceHn  ex_3d_source,
CriFloat32  min_attenuation_distance,
CriFloat32  max_attenuation_distance 
)

3D音源の最小距離/最大距離の設定

引数:
[in] ex_3d_source 3D音源ハンドル
[in] min_attenuation_distance 最小距離
[in] max_attenuation_distance 最大距離
説明:
3D音源の最小距離/最大距離を設定します。
最小距離は、これ以上音量が大きくならない距離を表します。最大距離は、最小音量になる距離を表します。
ライブラリ初期化時のデフォルト値は以下のとおりです。
  • 最小距離:0.0f
  • 最大距離:0.0f
デフォルト値は、criAtomEx3dSource_ChangeDefaultMinMaxAttenuationDistance 関数にて変更可能です。
データ側に当該パラメーターが設定されている場合に本関数を呼び出すと、データ側の値を上書き(無視)して適用されます。
注意:
設定したパラメーターを実際に適用するには、criAtomEx3dSource_Update 関数を呼び出す必要があります。
参照:
criAtomEx3dSource_Update, criAtomEx3dSource_ChangeDefaultMinMaxAttenuationDistance

void CRIAPI criAtomEx3dSource_ChangeDefaultMinMaxAttenuationDistance ( CriFloat32  min_attenuation_distance,
CriFloat32  max_attenuation_distance 
)

3D音源の最小距離/最大距離のデフォルト値変更

引数:
[in] min_attenuation_distance 最小距離
[in] max_attenuation_distance 最大距離
説明:
3D音源の最小距離/最大距離のデフォルト値を変更します。
本関数によってデフォルト値を変更すると、以降に作成する3D音源ハンドル( CriAtomEx3dSourceHn )の 最小距離/最大距離の初期値が本関数で設定した値となります。
ライブラリ初期化時のデフォルト値については、 criAtomEx3dSource_SetMinMaxAttenuationDistance 関数を参照して下さい。<br
注意:
当該パラメーターに関して「ツール側で値が変更されていない(デフォルト状態)」データの場合、暗黙的にデフォルト値が適用されます。
そのため、本関数でデフォルト値を変更すると、ツールでの編集時に意図していたパラメーターと異なってしまう可能性があります。
但し、以下に該当するデータは本関数の影響を受けません。
  • ツールのプロパティにて、最小距離/最大距離の初期値設定を0.0以外に設定している
  • インゲームプレビュー用にビルドしている
参照:
criAtomEx3dSource_SetMinMaxAttenuationDistance

void CRIAPI criAtomEx3dSource_SetInteriorPanField ( CriAtomEx3dSourceHn  ex_3d_source,
CriFloat32  source_radius,
CriFloat32  interior_distance 
)

3D音源のインテリアパンニング境界距離の設定

引数:
[in] ex_3d_source 3D音源ハンドル
[in] source_radius 3D音源の半径
[in] interior_distance インテリア距離
説明:
3D音源のインテリアパンニング境界距離の設定をします。
3D音源の半径は、3D音源を球としたときの半径です。
インテリア距離は、インテリアパンニング適用される3D音源の半径からの距離です。
3D音源の半径内では、インテリアパンニング適用されますが、インテリア距離が0.0と扱われるため、 全てのスピーカーから同じ音量で音声が再生されます。
インテリア距離内では、インテリアパンニング適用されます。
インテリア距離外では、インテリアパンニング適用されず、音源位置に最も近い1つ、 または2つのスピーカーから音声が再生されます。
ライブラリ初期化時のデフォルト値は以下のとおりです。
  • 3D音源の半径:0.0f
  • インテリア距離:0.0f(3D音源の最小距離に依存)
デフォルト値は、 criAtomEx3dSource_ChangeDefaultInteriorPanField 関数にて変更可能です。
また、現在ツールにて当該パラメーターを設定できないため、常に本関数での設定値が使用されます。
注意:
設定したパラメーターを実際に適用するには、criAtomEx3dSource_Update 関数を呼び出す必要があります。
参照:
criAtomEx3dSource_Update, criAtomEx3dSource_ChangeDefaultInteriorPanField

void CRIAPI criAtomEx3dSource_ChangeDefaultInteriorPanField ( CriFloat32  source_radius,
CriFloat32  interior_distance 
)

3D音源のインテリアパンニング境界距離のデフォルト値変更

引数:
[in] source_radius 3D音源の半径
[in] interior_distance インテリア距離
説明:
3D音源のインテリアパンニング境界距離のデフォルト値を変更します。
本関数によってデフォルト値を変更すると、以降に作成する3D音源ハンドル( CriAtomEx3dSourceHn )の インテリアパンニング境界距離の初期値が本関数で設定した値となります。
ライブラリ初期化時のデフォルト値については、 criAtomEx3dSource_SetInteriorPanField 関数を参照して下さい。
参照:
criAtomEx3dSource_SetInteriorPanField

void CRIAPI criAtomEx3dSource_SetDopplerFactor ( CriAtomEx3dSourceHn  ex_3d_source,
CriFloat32  doppler_factor 
)

3D音源のドップラー係数の設定

引数:
[in] ex_3d_source 3D音源ハンドル
[in] doppler_factor ドップラー係数
説明:
3D音源のドップラー係数を設定します。
ドップラー係数は、音速を340m/sとして計算されたドップラー効果に対して、誇張表現するための倍率を指定します。
例えば、2.0fを指定すると、音速を340m/sとして計算したピッチを2倍して適用します。
0.0fを指定すると、ドップラー効果は無効になります。 ライブラリ初期化時のデフォルト値は0.0fです。
デフォルト値は、criAtomEx3dSource_ChangeDefaultDopplerFactor 関数にて変更可能です。
データ側に当該パラメーターが設定されている場合に本関数を呼び出すと、データ側の値を上書き(無視)して適用されます。
注意:
設定したパラメーターを実際に適用するには、criAtomEx3dSource_Update 関数を呼び出す必要があります。
参照:
criAtomEx3dSource_Update, criAtomEx3dSource_ChangeDefaultDopplerFactor

void CRIAPI criAtomEx3dSource_ChangeDefaultDopplerFactor ( CriFloat32  doppler_factor  ) 

3D音源のドップラー係数のデフォルト値変更

引数:
[in] doppler_factor ドップラー係数
説明:
3D音源のドップラー係数のデフォルト値を変更します。
本関数によってデフォルト値を変更すると、以降に作成する3D音源ハンドル( CriAtomEx3dSourceHn )の ドップラー係数の初期値が本関数で設定した値となります。
ライブラリ初期化時のデフォルト値については、 criAtomEx3dSource_SetDopplerFactor 関数を参照して下さい。
注意:
当該パラメーターに関して「ツール側で値が変更されていない(デフォルト状態)」データの場合、暗黙的にデフォルト値が適用されます。
そのため、本関数でデフォルト値を変更すると、ツールでの編集時に意図していたパラメーターと異なってしまう可能性があります。
但し、インゲームプレビュー用にビルドされたデータは本関数の影響を受けません。
参照:
criAtomEx3dSource_SetDopplerFactor

void CRIAPI criAtomEx3dSource_SetVolume ( CriAtomEx3dSourceHn  ex_3d_source,
CriFloat32  volume 
)

3D音源のボリュームの設定

引数:
[in] ex_3d_source 3D音源ハンドル
[in] volume ボリューム
説明:
3D音源のボリュームを設定します。
3D音源のボリュームは、定位に関わる音量(L,R,SL,SR)にのみ影響し、LFEやセンターへの出力レベルには影響しません。
ボリューム値には、0.0f〜1.0fの範囲で実数値を指定します。
ボリューム値は音声データの振幅に対する倍率です(単位はデシベルではありません)。
例えば、1.0fを指定した場合、原音はそのままのボリュームで出力されます。
0.5fを指定した場合、原音波形の振幅を半分にしたデータと同じ音量(-6dB)で 音声が出力されます。
0.0fを指定した場合、音声はミュートされます(無音になります)。
ライブラリ初期化時のデフォルト値は1.0fです。
デフォルト値は、criAtomEx3dSource_ChangeDefaultVolume 関数にて変更可能です。
データ側に当該パラメーターが設定されている場合に本関数を呼び出すと、データ側の値と乗算して適用されます。
注意:
設定したパラメーターを実際に適用するには、criAtomEx3dSource_Update 関数を呼び出す必要があります。
参照:
criAtomEx3dSource_Update, criAtomEx3dSource_ChangeDefaultVolume

void CRIAPI criAtomEx3dSource_ChangeDefaultVolume ( CriFloat32  volume  ) 

3D音源のボリュームのデフォルト値変更

引数:
[in] volume ボリューム
説明:
3D音源のボリュームのデフォルト値を変更します。
本関数によってデフォルト値を変更すると、以降に作成する3D音源ハンドル( CriAtomEx3dSourceHn )の ボリュームの初期値が本関数で設定した値となります。
ライブラリ初期化時のデフォルト値については、 criAtomEx3dSource_SetVolume 関数を参照して下さい。
注意:
当該パラメーターに関して「ツール側で値が変更されていない(デフォルト状態)」データの場合、暗黙的にデフォルト値が適用されます。
そのため、本関数でデフォルト値を変更すると、ツールでの編集時に意図していたパラメーターと異なってしまう可能性があります。
但し、インゲームプレビュー用にビルドされたデータは本関数の影響を受けません。
参照:
criAtomEx3dSource_SetVolume

void CRIAPI criAtomEx3dSource_SetMaxAngleAisacDelta ( CriAtomEx3dSourceHn  ex_3d_source,
CriFloat32  max_delta 
)

角度AISACコントロール値の最大変化量の設定

引数:
[in] ex_3d_source 3D音源ハンドル
[in] max_delta 角度AISACコントロール値の最大変化量
説明:
角度AISACによりAISACコントロール値が変更される際の、最大変化量を設定します。
最大変化量を低めに変更すると、音源とリスナー間の相対角度が急激に変わった場合でも、 角度AISACによるAISACコントロール値の変化をスムーズにすることができます。
例えば、(0.5f / 30.0f)を設定すると、角度が0度→180度に変化した場合に、30フレームかけて変化するような変化量となります。
デフォルト値は1.0f(制限なし)です。 データ側では本パラメーターは設定できないため、常に本関数での設定値が使用されます。
注意:
設定したパラメーターを実際に適用するには、criAtomEx3dSource_Update 関数を呼び出す必要があります。
本関数で設定している最大変化量は、定位角度を元に計算されている、角度AISACコントロール値の変化にのみ適用されます。 定位角度自体には影響はありません。
参照:
criAtomEx3dSource_Update

void CRIAPI criAtomEx3dSource_SetDistanceAisacControlId ( CriAtomEx3dSourceHn  ex_3d_source,
CriUint16  aisac_control_id 
)

距離AISACコントロールIDの設定

引数:
[in] ex_3d_source 3D音源ハンドル
[in] aisac_control_id 距離AISACコントロールID
説明:
最小距離、最大距離間の距離減衰に連動するAISACコントロールIDを指定します。
本関数でAISACコントロールIDを設定した場合、デフォルトの距離減衰は無効になります。
データ側に設定されている距離AISACコントロールIDは、本関数によって上書き適用されます。
注意:
設定したパラメーターを実際に適用するには、criAtomEx3dSource_Update 関数を呼び出す必要があります。
本関数を実行すると指定した3D音源に前に設定されていたAISACコントールIDの値の変更によるパラメーター変更は無効化されますが、
再生済みの音声については前に適用されたパラメーターが適用され続けます。
指定する3D音源に紐づく音声が再生されていない状態で本関数を実行することを推奨します。
参照:
criAtomEx3dSource_Update

void CRIAPI criAtomEx3dSource_SetListenerBasedAzimuthAngleAisacControlId ( CriAtomEx3dSourceHn  ex_3d_source,
CriUint16  aisac_control_id 
)

リスナー基準方位角AISACコントロールIDの設定

引数:
[in] ex_3d_source 3D音源ハンドル
[in] aisac_control_id リスナー基準方位角AISACコントロールID
説明:
リスナーから見た音源の方位角に連動するAISACコントロールIDを指定します。
データ側に設定されているリスナー基準方位角AISACコントロールIDは、本関数によって上書き適用されます。
注意:
設定したパラメーターを実際に適用するには、criAtomEx3dSource_Update 関数を呼び出す必要があります。
本関数を実行すると指定した3D音源に前に設定されていたAISACコントールIDの値の変更によるパラメーター変更は無効化されますが、
再生済みの音声については前に適用されたパラメーターが適用され続けます。
指定する3D音源に紐づく音声が再生されていない状態で本関数を実行することを推奨します。
参照:
criAtomEx3dSource_Update

void CRIAPI criAtomEx3dSource_SetListenerBasedElevationAngleAisacControlId ( CriAtomEx3dSourceHn  ex_3d_source,
CriUint16  aisac_control_id 
)

リスナー基準仰俯角AISACコントロールIDの設定

引数:
[in] ex_3d_source 3D音源ハンドル
[in] aisac_control_id リスナー基準仰俯角AISACコントロールID
説明:
リスナーから見た音源の仰俯角に連動するAISACコントロールIDを指定します。
データ側に設定されているリスナー基準仰俯角AISACコントロールIDは、本関数によって上書き適用されます。
注意:
設定したパラメーターを実際に適用するには、criAtomEx3dSource_Update 関数を呼び出す必要があります。
本関数を実行すると指定した3D音源に前に設定されていたAISACコントールIDの値の変更によるパラメーター変更は無効化されますが、
再生済みの音声については前に適用されたパラメーターが適用され続けます。
指定する3D音源に紐づく音声が再生されていない状態で本関数を実行することを推奨します。
参照:
criAtomEx3dSource_Update

void CRIAPI criAtomEx3dSource_SetSourceBasedAzimuthAngleAisacControlId ( CriAtomEx3dSourceHn  ex_3d_source,
CriUint16  aisac_control_id 
)

音源基準方位角AISACコントロールIDの設定

引数:
[in] ex_3d_source 3D音源ハンドル
[in] aisac_control_id 音源基準方位角AISACコントロールID
説明:
音源から見たリスナーの方位角に連動するAISACコントロールIDを指定します。
データ側に設定されている音源基準方位角AISACコントロールIDは、本関数によって上書き適用されます。
注意:
設定したパラメーターを実際に適用するには、criAtomEx3dSource_Update 関数を呼び出す必要があります。
本関数を実行すると指定した3D音源に前に設定されていたAISACコントールIDの値の変更によるパラメーター変更は無効化されますが、
再生済みの音声については前に適用されたパラメーターが適用され続けます。
指定する3D音源に紐づく音声が再生されていない状態で本関数を実行することを推奨します。
参照:
criAtomEx3dSource_Update

void CRIAPI criAtomEx3dSource_SetSourceBasedElevationAngleAisacControlId ( CriAtomEx3dSourceHn  ex_3d_source,
CriUint16  aisac_control_id 
)

音源基準仰俯角AISACコントロールIDの設定

引数:
[in] ex_3d_source 3D音源ハンドル
[in] aisac_control_id 音源基準仰俯角AISACコントロールID
説明:
音源から見たリスナーの仰俯角に連動するAISACコントロールIDを指定します。
データ側に設定されている音源基準仰俯角AISACコントロールIDは、本関数によって上書き適用されます。
注意:
設定したパラメーターを実際に適用するには、criAtomEx3dSource_Update 関数を呼び出す必要があります。
本関数を実行すると指定した3D音源に前に設定されていたAISACコントールIDの値の変更によるパラメーター変更は無効化されますが、
再生済みの音声については前に適用されたパラメーターが適用され続けます。
指定する3D音源に紐づく音声が再生されていない状態で本関数を実行することを推奨します。
参照:
criAtomEx3dSource_Update

void CRIAPI criAtomEx3dSource_Set3dRegionHn ( CriAtomEx3dSourceHn  ex_3d_source,
CriAtomEx3dRegionHn  ex_3d_region 
)

3D音源ハンドルに対する3Dリージョンハンドルの設定

説明:
3D音源ハンドルに対して3Dリージョンハンドルを設定します。
注意:
同一のExPlayerに設定されている3D音源と3Dリスナーに設定されているリージョンが異なり、 かつ3D音源と同じリージョンが設定されている3Dトランシーバーがない場合、音声はミュートされます。
設定したパラメーターを実際に適用するには、criAtomEx3dSource_Update 関数を呼び出す必要があります。
参照:
criAtomEx3dRegion_Create, criAtomEx3dSource_Update

CriSint32 CRIAPI criAtomEx3dSourceList_CalculateWorkSize ( const CriAtomEx3dSourceListConfig config  ) 

3D音源ハンドルリストの作成に必要なワーク領域サイズの計算

引数:
[in] config 3D音源ハンドルリスト作成用コンフィグ構造体へのポインタ
戻り値:
CriSint32 3D音源ハンドルリスト作成用ワークサイズ
戻り値:
0以上 正常に処理が完了
-1 エラーが発生
説明:
3D音源ハンドルリストを作成するために必要なワーク領域のサイズを取得します。
アロケーターを登録せずに3D音源ハンドルリストを作成する場合、 あらかじめ本関数で計算したワーク領域サイズ分のメモリを ワーク領域として criAtomEx3dSourceList_Create 関数にセットする必要があります。

3D音源ハンドルリストの作成に必要なワークメモリのサイズは、3D音源ハンドルリストリスト作成用コンフィグ 構造体( CriAtomEx3dSourceListConfig )の内容によって変化します。

引数にNULLを指定した場合、デフォルト設定 ( criAtomEx3dSourceList_SetDefaultConfig 適用時と同じパラメーター)で ワーク領域サイズを計算します。
ワーク領域サイズ計算時に失敗した場合、戻り値は -1 になります。
ワーク領域サイズの計算に失敗した理由については、エラーコールバックの メッセージで確認可能です。
備考:
引数 config の情報は、関数内でのみ参照されます。
関数を抜けた後は参照されませんので、関数実行後に config の領域を解放しても 問題ありません。
参照:
criAtomEx3dSourceList_Create, CriAtomEx3dSourceListConfig

CriAtomEx3dSourceListHn CRIAPI criAtomEx3dSourceList_Create ( const CriAtomEx3dSourceListConfig config,
void *  work,
CriSint32  work_size 
)

3D音源ハンドルリストの作成

引数:
[in] config 3D音源ハンドルリスト作成用コンフィグ構造体へのポインタ
[in] work 3D音源ハンドルリスト作成用ワーク領域へのポインタ
[in] work_size 3D音源ハンドルリスト作成用ワークサイズ
戻り値:
CriAtomEx3dSourceListHn 3D音源ハンドルリスト
説明:
3D音源ハンドルリスト作成用コンフィグに基づいて、3D音源ハンドルリストを作成します。
作成に成功すると、3D音源ハンドルリストを返します。
3D音源ハンドルリストを作成する際には、ワーク領域としてメモリを渡す必要があります。
必要なメモリのサイズは、 criAtomEx3dSourceList_CalculateWorkSize 関数で計算します。
criAtomEx_SetUserAllocator マクロを使用してアロケーターを登録済みの場合、 本関数にワーク領域を指定する必要はありません。)
注意:
本関数を実行する前に、ライブラリを初期化しておく必要があります。

参照:
criAtomEx3dSourceList_CalculateWorkSize, criAtomEx3dSourceList_Destroy

void CRIAPI criAtomEx3dSourceList_Destroy ( CriAtomEx3dSourceListHn  ex_3d_source_list  ) 

3D音源ハンドルリストの破棄

引数:
[in] ex_3d_source_list 3D音源ハンドルリスト
説明:
3D音源ハンドルリストを破棄します。
本関数を実行した時点で、3D音源ハンドルリスト作成時に確保されたリソースが全て解放されます。
また、引数に指定した3D音源ハンドルリストも無効になります。
3D音源ハンドルリストをセットしたAtomExプレーヤーで再生している音声がある場合、 本関数を実行する前に、それらの音声を停止するか、そのAtomExプレーヤーを破棄してください。
備考:
3D音源ハンドルリストに3D音源ハンドルが追加されている状態で本関数を実行した場合、 追加されていた3D音源ハンドルは自動的に3D音源ハンドルリストから削除されます。
参照:
criAtomEx3dSourceList_Create

void CRIAPI criAtomEx3dSourceList_Add ( CriAtomEx3dSourceListHn  ex_3d_source_list,
CriAtomEx3dSourceHn  ex_3d_source 
)

3D音源ハンドルリストへの3D音源ハンドルの追加

引数:
[in] ex_3d_source_list 3D音源ハンドルリスト
[in] ex_3d_source 3D音源ハンドル
説明:
3D音源ハンドルリストに3D音源ハンドルを追加します。
追加したAtomExプレーヤーは3D音源ハンドルリストと関連付けられ、 マルチポジショニング再生が可能となります。
追加した3D音源ハンドルを3D音源ハンドルリストから削除する場合は、 criAtomEx3dSourceList_Remove 関数または criAtomEx3dSourceList_RemoveAll 関数を呼び出してください。
備考:
以下の条件に当てはまる3D音源ハンドルは3D音源ハンドルリストに追加することはできません。
  • 既にAtomExプレーヤーに設定されている
  • 既に他の3D音源ハンドルリストに追加されている
    本関数は再生中のAtomExプレーヤーに取り付けられている3D音源ハンドルリストに対しても使用可能です。
注意:
注意: 本関数は完了復帰型の関数です。
本関数を実行すると、しばらくの間Atomライブラリのサーバー処理がブロックされます。
音声再生中に本関数を実行すると、音途切れ等の不具合が発生する可能性があるため、 本関数の呼び出しはシーンの切り替わり等、負荷変動を許容できるタイミングで行ってください。
参照:
criAtomEx3dSourceList_Remove, criAtomEx3dSourceList_RemoveAll

void CRIAPI criAtomEx3dSourceList_Remove ( CriAtomEx3dSourceListHn  ex_3d_source_list,
CriAtomEx3dSourceHn  ex_3d_source 
)

3D音源ハンドルリストから3D音源ハンドルの削除

引数:
[in] ex_3d_source_list 3D音源ハンドルリスト
[in] ex_3d_source 3D音源ハンドル
説明:
3D音源ハンドルリストから追加されている3D音源ハンドルの内、指定した3D音源ハンドルを削除します。
3D音源ハンドルリストから全ての3D音源ハンドルを削除したい場合は、 criAtomEx3dSourceList_Remove 関数を 呼び出してください。
3D音源ハンドルリストに3D音源ハンドルを追加したい場合は、 criAtomEx3dSourceList_Add 関数を呼び出してください。
備考:
本関数は再生中のAtomExプレーヤーに取り付けられている3D音源ハンドルリストに対しても使用可能です。
注意:
注意: 本関数は完了復帰型の関数です。
本関数を実行すると、しばらくの間Atomライブラリのサーバー処理がブロックされます。
音声再生中に本関数を実行すると、音途切れ等の不具合が発生する可能性があるため、 本関数の呼び出しはシーンの切り替わり等、負荷変動を許容できるタイミングで行ってください。
参照:
criAtomEx3dSourceList_RemoveAll

void CRIAPI criAtomEx3dSourceList_RemoveAll ( CriAtomEx3dSourceListHn  ex_3d_source_list  ) 

3D音源ハンドルリストから3D音源ハンドルの全削除

引数:
[in] ex_3d_source_list 3D音源ハンドルリスト
説明:
3D音源ハンドルリストから追加されている全ての3D音源ハンドルを削除します。
3D音源ハンドルリストから特定の3D音源ハンドルを削除したい場合は、 criAtomEx3dSourceList_Remove 関数を 呼び出してください。
3D音源ハンドルリストに3D音源ハンドルを追加したい場合は、 criAtomEx3dSourceList_Add 関数を呼び出してください。
備考:
本関数は再生中のAtomExプレーヤーに取り付けられている3D音源ハンドルリストに対しても使用可能です。
注意:
注意: 本関数は完了復帰型の関数です。
本関数を実行すると、しばらくの間Atomライブラリのサーバー処理がブロックされます。
音声再生中に本関数を実行すると、音途切れ等の不具合が発生する可能性があるため、 本関数の呼び出しはシーンの切り替わり等、負荷変動を許容できるタイミングで行ってください。
参照:
criAtomEx3dSourceList_Remove

CriSint32 CRIAPI criAtomEx3dListener_CalculateWorkSize ( const CriAtomEx3dListenerConfig config  ) 

3Dリスナーハンドルの作成に必要なワーク領域サイズの計算

引数:
[in] config 3Dリスナーハンドル作成用コンフィグ構造体へのポインタ
戻り値:
CriSint32 3Dリスナーハンドル作成用ワークサイズ
戻り値:
0以上 正常に処理が完了
-1 エラーが発生
説明:
3Dリスナーハンドルを作成するために必要な、ワーク領域のサイズを取得します。
アロケーターを登録せずに3Dリスナーハンドルを作成する場合、 あらかじめ本関数で計算したワーク領域サイズ分のメモリを ワーク領域として criAtomEx3dListener_Create 関数にセットする必要があります。

3Dリスナーハンドルの作成に必要なワークメモリのサイズは、3Dリスナーハンドル作成用コンフィグ 構造体( CriAtomEx3dListenerConfig )の内容によって変化します。

引数にNULLを指定した場合、デフォルト設定 ( criAtomEx3dListener_SetDefaultConfig 適用時と同じパラメーター)で ワーク領域サイズを計算します。
ワーク領域サイズ計算時に失敗した場合、戻り値は -1 になります。
ワーク領域サイズの計算に失敗した理由については、エラーコールバックの メッセージで確認可能です。
備考:
引数 config の情報は、関数内でのみ参照されます。
関数を抜けた後は参照されませんので、関数実行後に config の領域を解放しても 問題ありません。
参照:
criAtomEx3dListener_Create, CriAtomEx3dListenerConfig

CriAtomEx3dListenerHn CRIAPI criAtomEx3dListener_Create ( const CriAtomEx3dListenerConfig config,
void *  work,
CriSint32  work_size 
)

3Dリスナーハンドルの作成

引数:
[in] config 3Dリスナーハンドル作成用コンフィグ構造体へのポインタ
[in] work 3Dリスナーハンドル作成用ワーク領域へのポインタ
[in] work_size 3Dリスナーハンドル作成用ワークサイズ
戻り値:
CriAtomEx3dListenerHn 3Dリスナーハンドル
説明:
3Dリスナーハンドル作成用コンフィグに基づいて、3Dリスナーハンドルを作成します。
作成に成功すると、3Dリスナーハンドルを返します。
3Dリスナーハンドルを作成する際には、ワーク領域としてメモリを渡す必要があります。
必要なメモリのサイズは、 criAtomEx3dListener_CalculateWorkSize 関数で計算します。
criAtomEx_SetUserAllocator マクロを使用してアロケーターを登録済みの場合、 本関数にワーク領域を指定する必要はありません。)
注意:
本関数を実行する前に、ライブラリを初期化しておく必要があります。

参照:
criAtomEx3dListener_CalculateWorkSize, criAtomEx3dListener_Destroy

void CRIAPI criAtomEx3dListener_Destroy ( CriAtomEx3dListenerHn  ex_3d_listener  ) 

3Dリスナーハンドルの破棄

引数:
[in] ex_3d_listener 3Dリスナーハンドル
説明:
3Dリスナーハンドルを破棄します。
本関数を実行した時点で、3Dリスナーハンドル作成時に確保されたリソースが全て解放されます。
また、引数に指定した3Dリスナーハンドルも無効になります。
3DリスナーハンドルをセットしたAtomExプレーヤーで再生している音声がある場合、 本関数を実行する前に、それらの音声を停止するか、そのAtomExプレーヤーを破棄してください。
参照:
criAtomEx3dListener_Create

void CRIAPI criAtomEx3dListener_Update ( CriAtomEx3dListenerHn  ex_3d_listener  ) 

3Dリスナーの更新

引数:
[in] ex_3d_listener 3Dリスナーハンドル
説明:
3Dリスナーに設定されているパラメーターを使用して、3Dリスナーを更新します。
本関数では、3Dリスナーに設定されている全てのパラメーターを更新します。 パラメーターをひとつ変更する度に本関数にて更新処理を行うよりも、 複数のパラメーターを変更してから更新処理を行った方が効率的です。
例:
 CriAtomExVector pos;
 CriAtomExVector vel;
 
 // Set position
 pos.x = 0.0f
 pos.y = 0.0f
 pos.z = 1.0f
 criAtomEx3dListener_SetPosition(source, &pos);
 // Set velocity
 vel.x = 1.0f
 vel.y = 0.0f
 vel.z = 0.0f
 criAtomEx3dListener_SetVelocity(source, &vel);
 
 // Update source parameters
 criAtomEx3dListener_Update(source);
注意:
本関数はAtomExプレーヤーのパラメーター更新(criAtomExPlayer_UpdateAll, criAtomExPlayer_Update) とは独立して動作します。3Dリスナーのパラメーターを変更した際は、本関数にて更新処理を行ってください。

void CRIAPI criAtomEx3dListener_ResetParameters ( CriAtomEx3dListenerHn  ex_3d_listener  ) 

3D音源パラメーターの初期化

引数:
[in] ex_3d_listener 3Dリスナーハンドル
説明:
3Dリスナーに設定されているパラメーターをクリアし、初期値に戻します。
注意:
クリアしたパラメーターを実際に適用するには、criAtomEx3dListener_Update 関数を呼び出す必要があります。
参照:
criAtomEx3dListener_Update

void CRIAPI criAtomEx3dListener_SetPosition ( CriAtomEx3dListenerHn  ex_3d_listener,
const CriAtomExVector position 
)

3Dリスナーの位置の設定

引数:
[in] ex_3d_listener 3Dリスナーハンドル
[in] position 位置ベクトル
説明:
3Dリスナーの位置を設定します。
位置は、距離減衰、および定位計算に使用されます。
位置は、3次元ベクトルで指定します。
デフォルト値は(0.0f, 0.0f, 0.0f)です。
データ側には位置は設定できないため、常に本関数での設定値が使用されます。
注意:
設定したパラメーターを実際に適用するには、criAtomEx3dListener_Update 関数を呼び出す必要があります。
参照:
criAtomEx3dListener_Update

CriAtomExVector CRIAPI criAtomEx3dListener_GetPosition ( CriAtomEx3dListenerHn  ex_3d_listener  ) 

3Dリスナーの位置の取得

引数:
[in] ex_3d_listener 3Dリスナーハンドル
説明:
3Dリスナーの位置を取得します。
位置は、3次元ベクトルで取得します。

void CRIAPI criAtomEx3dListener_SetVelocity ( CriAtomEx3dListenerHn  ex_3d_listener,
const CriAtomExVector velocity 
)

3Dリスナーの速度の設定

引数:
[in] ex_3d_listener 3Dリスナーハンドル
[in] velocity 速度ベクトル
説明:
3Dリスナーの速度を設定します。
速度は、ドップラー効果の計算に使用されます。
速度は、3次元ベクトルで指定します。速度の単位は、1秒あたりの移動距離です。 デフォルト値は(0.0f, 0.0f, 0.0f)です。
データ側には速度は設定できないため、常に本関数での設定値が使用されます。
注意:
設定したパラメーターを実際に適用するには、criAtomEx3dListener_Update 関数を呼び出す必要があります。
参照:
criAtomEx3dListener_Update

void CRIAPI criAtomEx3dListener_SetOrientation ( CriAtomEx3dListenerHn  ex_3d_listener,
const CriAtomExVector front,
const CriAtomExVector top 
)

3Dリスナーの向きの設定

引数:
[in] ex_3d_listener 3Dリスナーハンドル
[in] front 前方ベクトル
[in] top 上方ベクトル
説明:
3Dリスナーの向きを前方ベクトルと上方ベクトルで設定します。
向きは、3次元ベクトルで指定します。設定された向きベクトルは、ライブラリ内部で正規化して使用されます。
デフォルト値以下のとおりです。
  • 前方ベクトル:(0.0f, 0.0f, 1.0f)
  • 上方ベクトル:(0.0f, 1.0f, 0.0f)
データ側にはリスナーの向きは設定できないため、常に本関数での設定値が使用されます。
注意:
設定したパラメーターを実際に適用するには、criAtomEx3dListener_Update 関数を呼び出す必要があります。
参照:
criAtomEx3dListener_Update

void CRIAPI criAtomEx3dListener_SetDopplerMultiplier ( CriAtomEx3dListenerHn  ex_3d_listener,
CriFloat32  doppler_multiplier 
)

3Dリスナーのドップラー倍率の設定

引数:
[in] ex_3d_listener 3Dリスナーハンドル
[in] doppler_multiplier ドップラー倍率
説明:
3Dリスナーのドップラー倍率を設定します。この倍率はドップラー効果の計算に使用されます。
例えば、doppler_multiplierに10.0fを指定すると、ドップラー効果が通常の10倍になります。
doppler_multiplierには0.0f以上の値を指定します。 デフォルト値は1.0fです。
データ側にはリスナーのドップラー倍率は設定できないため、常に本関数での設定値が使用されます。
注意:
設定したパラメーターを実際に適用するには、criAtomEx3dListener_Update 関数を呼び出す必要があります。
参照:
criAtomEx3dListener_Update

void CRIAPI criAtomEx3dListener_SetFocusPoint ( CriAtomEx3dListenerHn  ex_3d_listener,
const CriAtomExVector focus_point 
)

3Dリスナーの注目点の設定

引数:
[in] ex_3d_listener 3Dリスナーハンドル
[in] focus_point 注目点ベクトル
説明:
3Dリスナーの注目点を設定します。
注目点は、3Dポジショニングを行うにあたって、 注目点を設定すると、リスナーの位置と注目点の間が直線で結ばれ、その直線上でマイクを移動させることができるようになります。
例えば、リスナーはカメラと常に同期させておき、主要キャラクタの位置に注目点を設定することで、状況に応じて、客観的か主観的かを柔軟に表現/調整するような使い方ができます。
なお、リスナーの位置と注目点の間で移動できるマイクは、現実世界のマイクと異なり、距離センサ(距離減衰計算用)と方向センサ(定位計算用)を分離しています。
これらを独立して操作することで、例えば「主役キャラに注目するので、距離減衰はキャラ位置基準で行いたい」「定位は画面の見た目に合わせたいため、定位計算はカメラ位置基準で行いたい」という表現を行うことができます。
デフォルト値は(0.0f, 0.0f, 0.0f)です。距離センサや方向センサのフォーカスレベルを設定しない状況では、注目点を設定する必要はありません。その場合、従来どおり、全ての3Dポジショニング計算をリスナー位置基準で行います。
注意:
設定したパラメーターを実際に適用するには、criAtomEx3dListener_Update 関数を呼び出す必要があります。
参照:
criAtomEx3dListener_Update, criAtomEx3dListener_SetDistanceFocusLevel, criAtomEx3dListener_SetDirectionFocusLevel

void CRIAPI criAtomEx3dListener_SetDistanceFocusLevel ( CriAtomEx3dListenerHn  ex_3d_listener,
CriFloat32  distance_focus_level 
)

距離センサのフォーカスレベルの設定

引数:
[in] ex_3d_listener 3Dリスナーハンドル
[in] distance_focus_level 距離センサのフォーカスレベル
説明:
距離センサのフォーカスレベルを設定します。
距離センサは、3Dポジショニング計算のうち、距離減衰計算の基準となる位置を表します。定位を無視して距離減衰のかかり具合のみを感知するマイク、といった扱いです。
フォーカスレベルは、注目点に対してどれだけセンサ(マイク)を近づけるかを表します。センサ(マイク)は、リスナー位置と注目点の間を結んだ直線上で動かすことができ、0.0fがリスナー位置、1.0fが注目点と同じ位置になります。
例えば、距離センサのフォーカスレベルを1.0f、方向センサのフォーカスレベルを0.0fとすることで、注目点を基準に距離減衰を適用し、リスナー位置を基準に定位を決定します。
デフォルト値は0.0fです。距離センサや方向センサのフォーカスレベルを設定しない状況では、従来どおり、全ての3Dポジショニング計算をリスナー位置基準で行います。
注意:
設定したパラメーターを実際に適用するには、criAtomEx3dListener_Update 関数を呼び出す必要があります。
参照:
criAtomEx3dListener_Update, criAtomEx3dListener_SetFocusPoint, criAtomEx3dListener_SetDirectionFocusLevel

void CRIAPI criAtomEx3dListener_SetDirectionFocusLevel ( CriAtomEx3dListenerHn  ex_3d_listener,
CriFloat32  direction_focus_level 
)

方向センサのフォーカスレベルの設定

引数:
[in] ex_3d_listener 3Dリスナーハンドル
[in] direction_focus_level 方向センサのフォーカスレベル
説明:
方向センサのフォーカスレベルを設定します。
方向センサは、3Dポジショニング計算のうち、定位計算の基準となる位置を表します。距離減衰を無視して定位のみを感知するマイク、といった扱いです。
方向センサの向きについては、リスナーの向き(criAtomEx3dListener_SetOrientation 関数で設定)をそのまま使用します。
フォーカスレベルは、注目点に対してどれだけセンサ(マイク)を近づけるかを表します。センサ(マイク)は、リスナー位置と注目点の間を結んだ直線上で動かすことができ、0.0fがリスナー位置、1.0fが注目点と同じ位置になります。
例えば、距離センサのフォーカスレベルを1.0f、方向センサのフォーカスレベルを0.0fとすることで、注目点を基準に距離減衰を適用し、リスナー位置を基準に定位を決定します。
デフォルト値は0.0fです。距離センサや方向センサのフォーカスレベルを設定しない状況では、従来どおり、全ての3Dポジショニング計算をリスナー位置基準で行います。
注意:
設定したパラメーターを実際に適用するには、criAtomEx3dListener_Update 関数を呼び出す必要があります。
参照:
criAtomEx3dListener_Update, criAtomEx3dListener_SetFocusPoint, criAtomEx3dListener_SetDistanceFocusLevel

void CRIAPI criAtomEx_EnableCalculationAisacControlFrom3dPosition ( CriBool  flag  ) 

パンタイプがパン3Dの時に、距離減衰AISACと角度AISACコントロール値を音源に反映するか設定

引数:
[in] flag AISACコントロール値を適用するか?(CRI_TRUE:する、CRI_FALSE:しない)
説明:
引数の flag に CRI_TRUE を設定すると、パンタイプがパン3Dの音源を再生する際に、3Dソースと3Dリスナーハンドルが
設定されているときは常に距離減衰AISACと角度AISACの計算結果が音源に適用されます。
注意:
Atomライブラリのデフォルトでは、パン3D音源に対して距離減衰AISACと角度AISACの計算結果は適用されません。
本関数はCRI Atomライブラリ Ver.2.17.19 以前の動作との互換の為に追加されました。
参照:
criAtomEx_IsEnableCalculationAisacControlFrom3dPosition

CriBool CRIAPI criAtomEx_IsEnableCalculationAisacControlFrom3dPosition ( void   ) 

パンタイプがパン3Dの時に、距離減衰AISACと角度AISACコントロール値を音源に反映しているか取得

戻り値:
CRI_TRUE 計算結果を適用している
CRI_FALSE 計算結果を適用していない
説明:
パンタイプがパン3Dの音源を再生する際に、3Dソースと3Dリスナーハンドルが
設定されているときに距離減衰AISACと角度AISACの計算結果が音源に適用されているか否かを取得します。
注意:
Atomライブラリのデフォルトでは、パン3D音源に対して距離減衰AISACと角度AISACの計算結果は適用されません。
本関数はCRI Atomライブラリ Ver.2.17.19 以前の動作との互換の為に追加されました。
参照:
criAtomEx_EnableCalculationAisacControlFrom3dPosition

void CRIAPI criAtomEx3dListener_Set3dRegionHn ( CriAtomEx3dListenerHn  ex_3d_listener,
CriAtomEx3dRegionHn  ex_3d_region 
)

3Dリスナーハンドルに対する3Dリージョンハンドルの設定

説明:
3Dリスナーハンドルに対して3Dリージョンハンドルを設定します。
注意:
同一のExPlayerに設定されている3D音源と3Dリスナーに設定されているリージョンが異なり、 かつ3D音源と同じリージョンが設定されている3Dトランシーバーがなsい場合、音声はミュートされます。
設定したパラメーターを実際に適用するには、criAtomEx3dListener_Update 関数を呼び出す必要があります。
参照:
criAtomEx3dRegion_Create, criAtomEx3dListener_Update

CriSint32 CRIAPI criAtomEx3dRegion_CalculateWorkSize ( const CriAtomEx3dRegionConfig config  ) 

3Dリージョンハンドルの作成に必要なワーク領域サイズの計算

引数:
[in] config 3Dリージョンハンドル作成用コンフィグ構造体へのポインタ
戻り値:
CriSint32 3Dリージョンハンドル作成用ワークサイズ
戻り値:
0以上 正常に処理が完了
-1 エラーが発生
説明:
3Dリージョンハンドルを作成するために必要な、ワーク領域のサイズを取得します。
アロケーターを登録せずに3Dリージョンハンドルを作成する場合、 あらかじめ本関数で計算したワーク領域サイズ分のメモリを ワーク領域として criAtomEx3dRegion_Create 関数にセットする必要があります。

3Dリージョンハンドルの作成に必要なワークメモリのサイズは、3Dリージョンハンドル作成用コンフィグ 構造体( criAtomEx3dRegionConfig )の内容によって変化します。

引数にNULLを指定した場合、デフォルト設定 ( criAtomEx3dRegion_SetDefaultConfig 適用時と同じパラメーター)で ワーク領域サイズを計算します。
ワーク領域サイズ計算時に失敗した場合、戻り値は -1 になります。
ワーク領域サイズの計算に失敗した理由については、エラーコールバックの メッセージで確認可能です。
備考:
引数 config の情報は、関数内でのみ参照されます。
関数を抜けた後は参照されませんので、関数実行後に config の領域を解放しても 問題ありません。
参照:
criAtomEx3dRegion_Create, CriAtomEx3dRegionConfig

CriAtomEx3dRegionHn CRIAPI criAtomEx3dRegion_Create ( const CriAtomEx3dRegionConfig config,
void *  work,
CriSint32  work_size 
)

3Dリージョンハンドルの作成

引数:
[in] config 3Dリージョンハンドル作成用コンフィグ構造体へのポインタ
[in] work 3Dリージョンハンドル作成用ワーク領域へのポインタ
[in] work_size 3Dリージョンハンドル作成用ワークサイズ
戻り値:
criAtomEx3dRegionHn 3Dリージョンハンドル
説明:
3Dリージョンハンドル作成用コンフィグに基づいて、3Dリージョンハンドルを作成します。
作成に成功すると、3Dリージョンハンドルを返します。
3Dリージョンハンドルを作成する際には、ワーク領域としてメモリを渡す必要があります。
必要なメモリのサイズは、 criAtomEx3dRegion_CalculateWorkSize 関数で計算します。
criAtomEx_SetUserAllocator マクロを使用してアロケーターを登録済みの場合、 本関数にワーク領域を指定する必要はありません。)
注意:
本関数を実行する前に、ライブラリを初期化しておく必要があります。

参照:
criAtomEx3dRegion_CalculateWorkSize, criAtomEx3dRegion_Destroy

void CRIAPI criAtomEx3dRegion_Destroy ( CriAtomEx3dRegionHn  ex_3d_region  ) 

3Dリージョンハンドルの破棄

引数:
[in] ex_3d_region 3Dリージョンハンドル
説明:
3Dリージョンハンドルを破棄します。
本関数を実行した時点で、3Dリージョンハンドル作成時に確保されたリソースが全て解放されます。
また、引数に指定した3Dリージョンハンドルも無効になります。
参照:
criAtomEx3dRegion_Create

CriSint32 CRIAPI criAtomEx3dTransceiver_CalculateWorkSize ( const CriAtomEx3dTransceiverConfig config  ) 

3Dトランシーバーハンドルの作成に必要なワーク領域サイズの計算

引数:
[in] config 3Dトランシーバーハンドル作成用コンフィグ構造体へのポインタ
戻り値:
CriSint32 3Dトランシーバーハンドル作成用ワークサイズ
戻り値:
0以上 正常に処理が完了
-1 エラーが発生
説明:
3Dトランシーバーハンドルを作成するために必要な、ワーク領域のサイズを取得します。
アロケーターを登録せずに3Dトランシーバーハンドルを作成する場合、 あらかじめ本関数で計算したワーク領域サイズ分のメモリを ワーク領域として criAtomEx3dTransceiver_Create 関数にセットする必要があります。

3Dトランシーバーハンドルの作成に必要なワークメモリのサイズは、3Dトランシーバーハンドル作成用コンフィグ 構造体( criAtomEx3dTransceiverConfig )の内容によって変化します。

引数にNULLを指定した場合、デフォルト設定 ( criAtomEx3dTransceiver_SetDefaultConfig 適用時と同じパラメーター)で ワーク領域サイズを計算します。
ワーク領域サイズ計算時に失敗した場合、戻り値は -1 になります。
ワーク領域サイズの計算に失敗した理由については、エラーコールバックの メッセージで確認可能です。
備考:
引数 config の情報は、関数内でのみ参照されます。
関数を抜けた後は参照されませんので、関数実行後に config の領域を解放しても 問題ありません。
参照:
criAtomEx3dTransceiver_Create, CriAtomEx3dTransceiverConfig

CriAtomEx3dTransceiverHn CRIAPI criAtomEx3dTransceiver_Create ( const CriAtomEx3dTransceiverConfig config,
void *  work,
CriSint32  work_size 
)

3Dトランシーバーハンドルの作成

引数:
[in] config 3Dトランシーバーハンドル作成用コンフィグ構造体へのポインタ
[in] work 3Dトランシーバーハンドル作成用ワーク領域へのポインタ
[in] work_size 3Dトランシーバーハンドル作成用ワークサイズ
戻り値:
criAtomEx3dTransceiverHn 3Dトランシーバーハンドル
説明:
3Dトランシーバーハンドル作成用コンフィグに基づいて、3Dトランシーバーハンドルを作成します。
作成に成功すると、3Dトランシーバーハンドルを返します。
3Dトランシーバーハンドルを作成する際には、ワーク領域としてメモリを渡す必要があります。
必要なメモリのサイズは、 criAtomEx3dTransceiver_CalculateWorkSize 関数で計算します。
criAtomEx_SetUserAllocator マクロを使用してアロケーターを登録済みの場合、 本関数にワーク領域を指定する必要はありません。)
注意:
本関数を実行する前に、ライブラリを初期化しておく必要があります。

参照:
criAtomEx3dTransceiver_CalculateWorkSize, criAtomEx3dTransceiver_Destroy

void CRIAPI criAtomEx3dTransceiver_Destroy ( CriAtomEx3dTransceiverHn  ex_3d_transceiver  ) 

3Dトランシーバーハンドルの破棄

引数:
[in] ex_3d_transceiver 3Dトランシーバーハンドル
説明:
3Dトランシーバーハンドルを破棄します。
本関数を実行した時点で、3Dトランシーバーハンドル作成時に確保されたリソースが全て解放されます。
また、引数に指定した3Dトランシーバーハンドルも無効になります。
参照:
criAtomEx3dTransceiver_Create

void CRIAPI criAtomEx3dTransceiver_Update ( CriAtomEx3dTransceiverHn  ex_3d_transceiver  ) 

3Dトランシーバーの更新

引数:
[in] ex_3d_transceiver 3Dトランシーバーハンドル
説明:
3Dトランシーバーに設定されているパラメーターを使用して、3Dトランシーバーを更新します。
本関数では、3Dトランシーバーに設定されている全てのパラメーターを更新します。 パラメーターをひとつ変更する度に本関数にて更新処理を行うよりも、 複数のパラメーターを変更してから更新処理を行った方が効率的です。
例:
 CriAtomExVector in_pos, out_pos;

 // Set input position
 in_pos.x = 0.0f
 in_pos.y = 0.0f
 in_pos.z = 1.0f
 criAtomEx3dTransceiver_SetInputPosition(transceiver, &in_pos);

 // Set output position
 out_pos.x = 0.0f
 out_pos.y = 0.0f
 out_pos.z = 1.0f
 criAtomEx3dTransceiver_SetOutputPosition(transceiver, &out_pos);

 // Update transceiver parameters
 criAtomEx3dTransceiver_Update(transceiver);
注意:
本関数はAtomExプレーヤーのパラメーター更新(criAtomExPlayer_UpdateAll, criAtomExPlayer_Update) とは独立して動作します。3Dトランシーバーのパラメーターを変更した際は、本関数にて更新処理を行ってください。

void CRIAPI criAtomEx3dTransceiver_SetInputPosition ( CriAtomEx3dTransceiverHn  ex_3d_transceiver,
const CriAtomExVector position 
)

3Dトランシーバー入力の位置の設定

引数:
[in] ex_3d_transceiver 3Dトランシーバーハンドル
[in] position 位置ベクトル
説明:
3Dトランシーバー入力の位置を設定します。
位置は、距離減衰、および定位計算に使用されます。
位置は、3次元ベクトルで指定します。
デフォルト値は(0.0f, 0.0f, 0.0f)です。
注意:
設定したパラメーターを実際に適用するには、criAtomEx3dTransceiver_Update 関数を呼び出す必要があります。
参照:
criAtomEx3dTransceiver_Update

void CRIAPI criAtomEx3dTransceiver_SetOutputPosition ( CriAtomEx3dTransceiverHn  ex_3d_transceiver,
const CriAtomExVector position 
)

3Dトランシーバー出力の位置の設定

引数:
[in] ex_3d_transceiver 3Dトランシーバーハンドル
[in] position 位置ベクトル
説明:
3Dトランシーバー出力の位置を設定します。
位置は、距離減衰、および定位計算に使用されます。
位置は、3次元ベクトルで指定します。
デフォルト値は(0.0f, 0.0f, 0.0f)です。
注意:
設定したパラメーターを実際に適用するには、criAtomEx3dTransceiver_Update 関数を呼び出す必要があります。
参照:
criAtomEx3dTransceiver_Update

void CRIAPI criAtomEx3dTransceiver_SetInputOrientation ( CriAtomEx3dTransceiverHn  ex_3d_transceiver,
const CriAtomExVector front,
const CriAtomExVector top 
)

3Dトランシーバー入力の向きの設定

引数:
[in] ex_3d_transceiver 3Dトランシーバーハンドル
[in] front 前方ベクトル
[in] top 上方ベクトル
説明:
3Dトランシーバーの向きを前方ベクトルと上方ベクトルで設定します。
向きは、3次元ベクトルで指定します。設定された向きベクトルは、ライブラリ内部で正規化して使用されます。
デフォルト値以下のとおりです。
  • 前方ベクトル:(0.0f, 0.0f, 1.0f)
  • 上方ベクトル:(0.0f, 1.0f, 0.0f)
注意:
設定したパラメーターを実際に適用するには、criAtomEx3dTransceiver_Update 関数を呼び出す必要があります。
参照:
criAtomEx3dTransceiver_Update

void CRIAPI criAtomEx3dTransceiver_SetOutputOrientation ( CriAtomEx3dTransceiverHn  ex_3d_transceiver,
const CriAtomExVector front,
const CriAtomExVector top 
)

3Dトランシーバー出力の向きの設定

引数:
[in] ex_3d_transceiver 3Dトランシーバーハンドル
[in] front 前方ベクトル
[in] top 上方ベクトル
説明:
3Dトランシーバー出力の向きを設定します。
本関数で設定した向きは、サウンドコーンの向きとして設定されます。
サウンドコーンは、3Dトランシーバーから音が発生する方向を表し、音の指向性の表現に使用されます。
サウンドコーンの向きは、3次元ベクトルで指定します。設定された向きベクトルは、ライブラリ内部で正規化して使用されます。
デフォルト値以下のとおりです。
  • 前方ベクトル:(0.0f, 0.0f, 1.0f)
  • 上方ベクトル:(0.0f, 1.0f, 0.0f)
注意:
設定したパラメーターを実際に適用するには、criAtomEx3dTransceiver_Update 関数を呼び出す必要があります。
参照:
criAtomEx3dTransceiver_SetOutputConeParameter, criAtomEx3dTransceiver_Update

void CRIAPI criAtomEx3dTransceiver_SetOutputConeParameter ( CriAtomEx3dTransceiverHn  ex_3d_transceiver,
CriFloat32  inside_angle,
CriFloat32  outside_angle,
CriFloat32  outside_volume 
)

3Dトランシーバー出力のサウンドコーンパラメーターの設定

引数:
[in] ex_3d_transceiver 3Dトランシーバーハンドル
[in] inside_angle サウンドコーンのインサイドアングル
[in] outside_angle サウンドコーンのアウトサイドアングル
[in] outside_volume サウンドコーンのアウトサイドボリューム
説明:
3Dトランシーバー出力のサウンドコーンパラメーターを設定します。
サウンドコーンは、3Dトランシーバーから音が発生する方向を表し、音の指向性の表現に使用されます。
サウンドコーンは、内側コーン、外側コーンで構成されます。インサイドアングルは内側コーンの角度、 アウトサイドアングルは外側コーンの角度、アウトサイドボリュームは外側コーンの角度以上の方向での音量をそれぞれ表します。
内側コーンの角度より小さい角度の方向では、コーンによる減衰を受けません。 内側コーンと外側コーンの間の方向では、徐々にアウトサイドボリュームまで減衰します。
インサイドアングルおよびアウトサイドアングルは、0.0f〜360.0fを度で指定します。
アウトサイドボリュームは、0.0f〜1.0fを振幅に対する倍率で指定します(単位はデシベルではありません)。
ライブラリ初期化時のデフォルト値は以下のとおりであり、コーンによる減衰は行われません。
  • インサイドアングル:360.0f
  • アウトサイドアングル:360.0f
  • アウトサイドボリューム:0.0f
デフォルト値は、criAtomEx3dTransceiver_ChangeDefaultConeParameter 関数にて変更可能です。
注意:
設定したパラメーターを実際に適用するには、criAtomEx3dTransceiver_Update 関数を呼び出す必要があります。
参照:
criAtomEx3dTransceiver_Update

void CRIAPI criAtomEx3dTransceiver_SetOutputMinMaxAttenuationDistance ( CriAtomEx3dTransceiverHn  ex_3d_transceiver,
CriFloat32  min_attenuation_distance,
CriFloat32  max_attenuation_distance 
)

3Dトランシーバーの最小距離/最大距離の設定

引数:
[in] ex_3d_transceiver 3Dトランシーバーハンドル
[in] min_attenuation_distance 最小距離
[in] max_attenuation_distance 最大距離
説明:
3Dトランシーバーの最小距離/最大距離を設定します。
最小距離は、これ以上音量が大きくならない距離を表します。最大距離は、最小音量になる距離を表します。
ライブラリ初期化時のデフォルト値は以下のとおりです。
  • 最小距離:0.0f
  • 最大距離:0.0f
注意:
設定したパラメーターを実際に適用するには、criAtomEx3dTransceiver_Update 関数を呼び出す必要があります。
参照:
criAtomEx3dTransceiver_Update

void CRIAPI criAtomEx3dTransceiver_SetOutputInteriorPanField ( CriAtomEx3dTransceiverHn  ex_3d_transceiver,
CriFloat32  transceiver_radius,
CriFloat32  interior_distance 
)

3Dトランシーバー出力のインテリアパンニング境界距離の設定

引数:
[in] ex_3d_transceiver 3Dトランシーバーハンドル
[in] transceiver_radius 3Dトランシーバーの半径
[in] interior_distance インテリア距離
説明:
3Dトランシーバー出力のインテリアパンニング境界距離の設定をします。
3Dトランシーバー出力の半径は、3Dトランシーバー出力を球としたときの半径です。
インテリア距離は、インテリアパンニング適用される3Dトランシーバーの半径からの距離です。
3Dトランシーバーの半径内では、インテリアパンニング適用されますが、インテリア距離が0.0と扱われるため、 全てのスピーカーから同じ音量で音声が再生されます。
インテリア距離内では、インテリアパンニング適用されます。
インテリア距離外では、インテリアパンニング適用されず、3Dトランシーバー位置に最も近い1つ、 または2つのスピーカーから音声が再生されます。
ライブラリ初期化時のデフォルト値は以下のとおりです。
  • 3Dトランシーバーの半径:0.0f
  • インテリア距離:0.0f(3Dトランシーバーの最小距離に依存)
注意:
設定したパラメーターを実際に適用するには、criAtomEx3dTransceiver_Update 関数を呼び出す必要があります。
参照:
criAtomEx3dTransceiver_Update

void CRIAPI criAtomEx3dTransceiver_SetInputCrossFadeField ( CriAtomEx3dTransceiverHn  ex_3d_transceiver,
CriFloat32  direct_audio_radius,
CriFloat32  crossfade_distance 
)

3Dトランシーバー入力のクロスフェード境界距離の設定

引数:
[in] ex_3d_transceiver 3Dトランシーバーハンドル
[in] direct_audio_radius 直接音領域の半径
[in] crossfade_distance クロスフェード距離
説明:
3Dトランシーバー入力のクロスフェード境界距離の設定をします。
直接音領域の半径内では、3Dトランシーバーの出力からの音声は再生されず、3D音源からの音声のみが再生されます。
クロスフェード距離は、3Dトランシーバー出力と3D音源からの音声のクロスフェードが適用される直接音領域からの距離です。
直接音領域では、クロスフェードの割合が音源からの音声=1、3Dトランシーバーからの音声=0になるので、 3Dトランシーバー出力からの音声は聞こえなくなり、音源からの音声のみが再生されます。
クロスフェード距離内では、リスナーの位置に応じてクロスフェードが適用されます。
クロスフェード距離外では、3D音源からの音声は聞こえず、3Dトランシーバー出力からの音声のみが聞こえるようになります。 ライブラリ初期化時のデフォルト値は以下のとおりです。
  • 直接音領域の半径:0.0f
  • クロスフェード距離:0.0f
注意:
設定したパラメーターを実際に適用するには、criAtomEx3dTransceiver_Update 関数を呼び出す必要があります。
参照:
criAtomEx3dTransceiver_Update

void CRIAPI criAtomEx3dTransceiver_SetOutputVolume ( CriAtomEx3dTransceiverHn  ex_3d_transceiver,
CriFloat32  volume 
)

3Dトランシーバー出力のボリュームの設定

引数:
[in] ex_3d_transceiver 3Dトランシーバーハンドル
[in] volume ボリューム
説明:
3Dトランシーバー出力のボリュームを設定します。
3Dトランシーバー出力のボリュームは、定位に関わる音量(L,R,SL,SR)にのみ影響し、LFEやセンターへの出力レベルには影響しません。
ボリューム値には、0.0f〜1.0fの範囲で実数値を指定します。
ボリューム値は音声データの振幅に対する倍率です(単位はデシベルではありません)。
例えば、1.0fを指定した場合、原音はそのままのボリュームで出力されます。
0.5fを指定した場合、原音波形の振幅を半分にしたデータと同じ音量(-6dB)で 音声が出力されます。
0.0fを指定した場合、音声はミュートされます(無音になります)。
ライブラリ初期化時のデフォルト値は1.0fです。
注意:
設定したパラメーターを実際に適用するには、criAtomEx3dTransceiver_Update 関数を呼び出す必要があります。
参照:
criAtomEx3dTransceiver_Update

void CRIAPI criAtomEx3dTransceiver_AttachAisac ( CriAtomEx3dTransceiverHn  ex_3d_transceiver,
const CriChar8 *  global_aisac_name 
)

3DトランシーバーにAISACを取り付ける

引数:
[in] ex_3d_transceiver 3Dトランシーバーハンドル
[in] global_aisac_name 取り付けるグローバルAISAC名
説明:
3DトランシーバーにAISACをアタッチ(取り付け)します。 AISACをアタッチすることにより、キューやトラックにAISACを設定していなくても、AISACの効果を得ることができます。

AISACのアタッチに失敗した場合、関数内でエラーコールバックが発生します。
AISACのアタッチに失敗した理由については、エラーコールバックのメッセージを確認してください。
備考:
全体設定(ACFファイル)に含まれるグローバルAISACのみ、アタッチ可能です。
AISACの効果を得るには、キューやトラックに設定されているAISACと同様に、該当するAISACコントロール値を設定する必要があります。
注意:
キューやトラックに「AISACコントロール値を変更するAISAC」が設定されていたとしても、 その適用結果のAISACコントロール値は、3DトランシーバーにアタッチしたAISACには影響しません。
現在、「オートモジュレーション」や「ランダム」といったコントロールタイプのAISACのアタッチには対応しておりません。
現在、3DトランシーバーにアタッチできるAISACの最大数は、8個固定です。
参照:
criAtomEx3dTransceiver_DetachAisac

void CRIAPI criAtomEx3dTransceiver_DetachAisac ( CriAtomEx3dTransceiverHn  ex_3d_transceiver,
const CriChar8 *  global_aisac_name 
)

3DトランシーバーからAISACを取り外す

引数:
[in] ex_3d_transceiver 3Dトランシーバーハンドル
[in] global_aisac_name 取り外すグローバルAISAC名
説明:
3DトランシーバーからAISACをデタッチ(取り外し)します。

AISACのデタッチに失敗した場合、関数内でエラーコールバックが発生します。
AISACのデタッチに失敗した理由については、エラーコールバックのメッセージを確認してください。
参照:
criAtomEx3dTransceiver_AttachAisac

void CRIAPI criAtomEx3dTransceiver_SetMaxAngleAisacDelta ( CriAtomEx3dTransceiverHn  ex_3d_transceiver,
CriFloat32  max_delta 
)

角度AISACコントロール値の最大変化量の設定

引数:
[in] ex_3d_transceiver 3Dトランシーバーハンドル
[in] max_delta 角度AISACコントロール値の最大変化量
説明:
角度AISACによりAISACコントロール値が変更される際の、最大変化量を設定します。
最大変化量を低めに変更すると、3Dトランシーバーとリスナー間の相対角度が急激に変わった場合でも、 角度AISACによるAISACコントロール値の変化をスムーズにすることができます。
例えば、(0.5f / 30.0f)を設定すると、角度が0度→180度に変化した場合に、30フレームかけて変化するような変化量となります。
デフォルト値は1.0f(制限なし)です。 データ側では本パラメーターは設定できないため、常に本関数での設定値が使用されます。
注意:
設定したパラメーターを実際に適用するには、criAtomEx3dTransceiver_Update 関数を呼び出す必要があります。
本関数で設定している最大変化量は、定位角度を元に計算されている、角度AISACコントロール値の変化にのみ適用されます。 定位角度自体には影響はありません。
参照:
criAtomEx3dTransceiver_Update

void CRIAPI criAtomEx3dTransceiver_SetDistanceAisacControlId ( CriAtomEx3dTransceiverHn  ex_3d_transceiver,
CriUint16  aisac_control_id 
)

距離AISACコントロールIDの設定

引数:
[in] ex_3d_transceiver 3Dトランシーバーハンドル
[in] aisac_control_id 距離AISACコントロールID
説明:
最小距離、最大距離間の距離減衰に連動するAISACコントロールIDを指定します。
本関数でAISACコントロールIDを設定した場合、デフォルトの距離減衰は無効になります。
注意:
設定したパラメーターを実際に適用するには、criAtomEx3dTransceiver_Update 関数を呼び出す必要があります。
参照:
criAtomEx3dTransceiver_Update

void CRIAPI criAtomEx3dTransceiver_SetListenerBasedAzimuthAngleAisacControlId ( CriAtomEx3dTransceiverHn  ex_3d_transceiver,
CriUint16  aisac_control_id 
)

リスナー基準方位角AISACコントロールIDの設定

引数:
[in] ex_3d_transceiver 3Dトランシーバーハンドル
[in] aisac_control_id リスナー基準方位角AISACコントロールID
説明:
リスナーから見た3Dトランシーバーの方位角に連動するAISACコントロールIDを指定します。
注意:
設定したパラメーターを実際に適用するには、criAtomEx3dTransceiver_Update 関数を呼び出す必要があります。
参照:
criAtomEx3dTransceiver_Update

void CRIAPI criAtomEx3dTransceiver_SetListenerBasedElevationAngleAisacControlId ( CriAtomEx3dTransceiverHn  ex_3d_transceiver,
CriUint16  aisac_control_id 
)

リスナー基準仰俯角AISACコントロールIDの設定

引数:
[in] ex_3d_transceiver 3Dトランシーバーハンドル
[in] aisac_control_id リスナー基準仰俯角AISACコントロールID
説明:
リスナーから見た3Dトランシーバーの仰俯角に連動するAISACコントロールIDを指定します。
注意:
設定したパラメーターを実際に適用するには、criAtomEx3dTransceiver_Update 関数を呼び出す必要があります。
参照:
criAtomEx3dTransceiver_Update

void CRIAPI criAtomEx3dTransceiver_SetTransceiverOutputBasedAzimuthAngleAisacControlId ( CriAtomEx3dTransceiverHn  ex_3d_transceiver,
CriUint16  aisac_control_id 
)

3Dトランシーバー出力基準方位角AISACコントロールIDの設定

引数:
[in] ex_3d_transceiver 3Dトランシーバーハンドル
[in] aisac_control_id 3Dトランシーバー基準方位角AISACコントロールID
説明:
3Dトランシーバー出力の位置から見たリスナーの方位角に連動するAISACコントロールIDを指定します。
注意:
設定したパラメーターを実際に適用するには、criAtomEx3dTransceiver_Update 関数を呼び出す必要があります。
参照:
criAtomEx3dTransceiver_Update

void CRIAPI criAtomEx3dTransceiver_SetTransceiverOutputBasedElevationAngleAisacControlId ( CriAtomEx3dTransceiverHn  ex_3d_transceiver,
CriUint16  aisac_control_id 
)

3Dトランシーバー出力基準仰俯角AISACコントロールIDの設定

引数:
[in] ex_3d_transceiver 3Dトランシーバーハンドル
[in] aisac_control_id 3Dトランシーバー基準仰俯角AISACコントロールID
説明:
3Dトランシーバー出力の位置から見たリスナーの仰俯角に連動するAISACコントロールIDを指定します。
注意:
設定したパラメーターを実際に適用するには、criAtomEx3dTransceiver_Update 関数を呼び出す必要があります。
参照:
criAtomEx3dTransceiver_Update

void CRIAPI criAtomEx3dTransceiver_Set3dRegionHn ( CriAtomEx3dTransceiverHn  ex_3d_transceiver,
CriAtomEx3dRegionHn  ex_3d_region 
)

3Dトランシーバーハンドルに対する3Dリージョンハンドルの設定

説明:
3Dトランシーバーハンドルに対して3Dリージョンハンドルを設定します。
注意:
同一のExPlayerに設定されている3D音源と3Dリスナーに設定されているリージョンが異なり、 かつ3D音源と同じリージョンが設定されている3Dトランシーバーがない場合、音声はミュートされます。
設定したパラメーターを実際に適用するには、criAtomEx3dTransceiver_Update 関数を呼び出す必要があります。
参照:
criAtomEx3dRegion_Create, criAtomEx3dTransceiver_Update


CRI Middleware logo Copyright (c) 2006-2018 CRI Middleware Co., Ltd.