Struct CriAtom.Config
ライブラリ初期化用コンフィグ構造体
Inherited Members
Namespace: CriWare
Assembly: CriWare.CriAtom.dll
Syntax
public struct CriAtom.Config
Remarks
説明: CRI Atomライブラリの動作仕様を指定するための構造体です。 ::criAtom_Initialize 関数の引数に指定します。 CRI Atomライブラリは、初期化時に本構造体で指定された設定に応じて、内部リソースを 必要なだけ確保します。 ライブラリが必要とするワーク領域のサイズは、本構造体で指定されたパラメーターに応じて 変化します。
備考: デフォルト設定を使用する場合、 SetDefaultConfig(out Config) メソッドで構造体にデフォルト パラメーターをセットした後、 ::criAtom_Initialize 関数に構造体を指定してください。
注意: 将来的にメンバが増える可能性があるため、 SetDefaultConfig(out Config) メソッドで必ず構造体を初期化してください。 (構造体のメンバに不定値が入らないようご注意ください。)
Fields
context
プラットフォーム固有の初期化パラメーターへのポインタ
Declaration
public IntPtr context
Field Value
Type | Description |
---|---|
IntPtr |
Remarks
説明: CRI Atomライブラリを動作させるために必要な、 プラットフォーム固有の初期化パラメーターへのポインタを指定します。 nullを指定した場合、デフォルトパラメーターでプラットフォーム毎に必要な初期化を行います。 パラメーター構造体は各プラットフォーム固有ヘッダーに定義されています。 パラメーター構造体が定義されていないプラットフォームでは、常にnullを指定してください。
fsConfig
CRI File System の初期化パラメーターへのポインタ
Declaration
public NativeReference<CriFs.Config> fsConfig
Field Value
Type | Description |
---|---|
NativeReference<CriFs.Config> |
Remarks
説明: CRI File Systemの初期化パラメーターへのポインタを指定します。 nullを指定した場合、デフォルトパラメーターでCRI File Systemを初期化します。
maxPlayers
最大プレーヤー数
Declaration
public int maxPlayers
Field Value
Type | Description |
---|---|
int |
Remarks
説明: アプリケーション中で使用するプレーヤー(CriAtomPlayer)の数を指定します。 アプリケーション中で CreateStandardPlayer(in StandardPlayerConfig, IntPtr, int) 関数を使用してプレーヤーを作成する場合、 本パラメーターに使用するプレーヤーの数を指定する必要があります。 max_playersには「同時に使用するプレーヤーの最大数」を指定します。 例えば、 CreateStandardPlayer(in StandardPlayerConfig, IntPtr, int) 関数と Dispose() 関数を交互に続けて実行するケースにおいては、 最大同時には1つのプレーヤーしか使用しないため、関数の呼び出し回数に関係なくmax_playersに1を指定することが可能です。 逆に、ある場面でプレーヤーを10個使用する場合には、その他の場面でプレーヤーを全く使用しない場合であっても、 max_playersに10を指定する必要があります。
See Also
serverFrequency
サーバー処理の実行頻度
Declaration
public float serverFrequency
Field Value
Type | Description |
---|---|
float |
Remarks
説明: サーバー処理を実行する頻度を指定します。 通常、アプリケーションのフレームレートと同じ値を指定します。 CRI Atomライブラリは、ファイル読み込みの管理や、音声データのデコード、音声の出力、 ステータスの更新等、ライブラリ内部で行う処理のほとんどを1つの関数でまとめて 行います。 CRIミドルウェアでは、こういったライブラリ内の処理を一括して行う関数のことを "サーバー処理"と呼んでいます。 スレッドモデルが Multi の場合、サーバー処理はCRI Atomライブラリ が作成するスレッドで、定期的に実行されます。 スレッドモデルが Single や UserMulti の場合、サーバー処理は ExecuteMain() 関数内で実行されます。 server_frequency には、サーバー処理を実行する頻度を指定します。 スレッドモデルが Multi の場合、CRI Atomライブラリは指定された 頻度でサーバー処理が実行されるよう、サーバー処理の呼び出し間隔を調節します。 スレッドモデルが Single や UserMulti の場合、ユーザは ExecuteMain() 関数を server_frequency で指定した頻度以上 で実行する必要があります。 アプリケーションのフレームレートの変動が大きく、サーバー処理を実行する頻度にバラツキ ができてしまう場合には、最悪のフレームレートを想定して server_frequency の値を指定 するか、またはスレッドモデルに Multi を指定してください。
備考: サーバー処理の実行頻度を多くすると、単位サーバー処理当たりの処理量(デコード量等) が少なくなります。 その結果、単位サーバー当たりの処理負荷は小さくなります(負荷が分散されます)が、 サーバー処理の実行に伴うオーバーヘッドは大きくなります。 (携帯ゲーム機等、CPUリソースが少ない環境でサーバー処理の実行頻度を多くしすぎた場合、 サーバー処理の実行に伴うオーバーヘッドが無視できなくなる可能性があります。) サーバー処理の実行頻度を少なくすると、単位サーバー処理当たりの処理量が多くなります。 サーバー処理の実行に伴うオーバーヘッドは低減されますが、単位サーバー処理当たりの負荷 が高くなるため、フレーム落ち等の問題が発生する恐れがあります。
注意: スレッドモデルに Single や UserMulti を指定したにもかかわらず、 ExecuteMain() 関数が server_frequency で 指定した値以下の頻度でしか実行されなかった場合、再生中の音が途切れる等の問題が 発生する可能性がありますので、ご注意ください。
See Also
threadModel
スレッドモデル
Declaration
public CriAtom.ThreadModel threadModel
Field Value
Type | Description |
---|---|
CriAtom.ThreadModel |
Remarks
説明: CRI Atomライブラリのスレッドモデルを指定します。
See Also
version
ライブラリバージョン番号
Declaration
public uint version
Field Value
Type | Description |
---|---|
uint |
Remarks
説明: CRI Atomライブラリのバージョン番号です。 SetDefaultConfig(out Config) メソッドにより、本ヘッダーに定義されているバージョン番号が設定されます。
注意: アプリケーションでは、この値を変更しないでください。
versionString
ライブラリバージョン文字列
Declaration
public NativeString versionString
Field Value
Type | Description |
---|---|
NativeString |
Remarks
説明: CRI Atomライブラリのバージョン文字列です。 SetDefaultConfig(out Config) メソッドにより、本ヘッダーに定義されているバージョン文字列が設定されます。
注意: アプリケーションでは、この値を変更しないでください。