3D空間の1メートルに相当する距離を設定する
Set3DSoundOneMetre Distance
Distance : 3Dサウンドで1メートルに相当する距離の値
(プラグイン / モジュール : DxLibW)
この関数では、Set3DPositionSoundMem などの3D座標を扱う関数での座標値が、
メートル換算ではどのような値になるかを設定します。( メートル換算された値を使用してドップラー効果などの処理が行われます )
例:3D座標での 1.0f を1メートルとして設定する
// DxLib_Init の前に Set3DSoundOneMetre に 1.0f を渡して呼ぶ
Set3DSoundOneMetre( 1.0f ) ;
if( DxLib_Init() == -1 )
{
return -1 ;
}
因みに上記の例にある通り、この関数は DxLib_Init を呼ぶ前にのみ呼ぶことができる関数です。
DxLib_Init の後に呼んでも設定を変更することができませんので注意してください。
何故このような関数があるかというと、3Dグラフィックスでは値の扱いが色々で、
例えば身長180cmのキャラクターモデルの頭の天辺の y座標が、あるモデルでは 180.0f で、
また別のモデルでは 1.8f だったりと、作り手や製作環境によって1メートルの扱いが異なるからです。
3Dグラフィックスでは 1.0f を 1メートルとするか、1センチメートルとするかは製作者同士で共通の認識ができていれば問題がありませんが、
3Dサウンドでは 1.0f が 1メートルなのか、1センチメートルなのかでドップラー効果やリバーブエフェクトの掛かり方にかなりの違いが発生するので、
この関数で明示的に「これから動作するプログラムでは1メートルは 100.0f として扱います」のようにサウンドシステムに伝えておく必要があるというわけです。
戻り値:
0:成功
| プラグイン / モジュール | DxLibW |
| バージョン | 3.24f |
| 作成日 | 2026/04/12 |
| 著作者 | DxLib: Takumi Yamada / HSP binding: IronHSP Project |
| URL | https://dxlib.xsrv.jp/ |
| 備考 | hspdxlib.as をインクルードして使用 |
| タイプ | DxLib ゲームライブラリ |
| グループ | DxLib サウンド |
| 対応環境 |
|
| hs ファイル | hsphelp\hspdxlib.hs |