バージョン

menu_open

カスタムプロパティの定義

カスタムプロパティを使うと、Wwiseオブジェクトに追加情報を保存できます。カスタムプロパティは、プロジェクトマネジメントやゲームで使ったメタデータの保存などに利用できます。ゲームでカスタムプロパティ値を取得するには、 AK::SoundEngine::Query::GetCustomPropertyValue を参照してください。

カスタムプロパティは、以下で編集できます:

カスタムプロパティをWwise オーサリングツールのユーザーインターフェース上で直接設定することが可能で、Project > Project Settings > Custom Properties を選択します。ただし、より多くの機能を有効にするには、プロジェクトフォルダにある PROJECTNAME.wcustomproperties ファイルから直接カスタムプロパティを設定できます(なお、PROJECTNAME はWPROJファイルと同名のものとします)。

Note.gif
Note: PROJECTNAME.wcustomproperties ファイルを変更した場合、そのプロパティを更新するには、毎回Wwise Projectをリロードする必要があります。カスタムプロパティの名前を変更しても、プロジェクトのコンテンツは自動的に移行されないので、注意してください。

XML ファイルのコンテンツ

XML記述ファイルに、オブジェクトタイプによって追加されるカスタムプロパティに関する以下の情報が含まれます:

  • 以下を含むプロパティ定義:
    • プロパティ名(コードやpersistedファイルの中のプロパティを識別するための文字列)
    • プロパティタイプ
    • RTPCサポート
    • デフォルト値
    • サウンドエンジンのプロパティID(このプロパティをサウンドエンジンのプラグインのコードにバインドする)
    • 範囲制限や列挙制限
    • 他プロパティへの依存
    • ユーザーインターフェースの説明要素

例: wcustomproperties File

サウンドオブジェクトの追加プロパティを定義する、単純なカスタムプロパティXML記述ファイルの例を、以下に示します。

<?xml version="1.0" encoding="UTF-8"?>
<!-- Copyright (C) Audiokinetic Inc. -->
<PluginModule>
    <WwiseObject Name="Sound" CompanyID="1" PluginID="1">
        <Properties>
            <Property Name="Custom:Status" Type="int16" DisplayName="Status">
                <DefaultValue>0</DefaultValue>
                <Restrictions>
                    <ValueRestriction>
                        <Enumeration Type="int16">
                            <Value DisplayName="To do">0</Value>
                            <Value DisplayName="Done">1</Value>
                            <Value DisplayName="Verified">2</Value>
                        </Enumeration>
                    </ValueRestriction>
                </Restrictions>
            </Property>
            <Property Name="Custom:IsReady" Type="bool" DisplayName="Is Ready">
                <DefaultValue>false</DefaultValue>
                <AudioEnginePropertyID>2</AudioEnginePropertyID>
            </Property>
            <Property Name="Custom:Priority" Type="int32" DisplayName="Priority">
                <DefaultValue>50</DefaultValue>
                <AudioEnginePropertyID>6</AudioEnginePropertyID>
                <Restrictions>
                    <ValueRestriction>
                        <Range Type="int32">
                            <Min>1</Min>
                            <Max>100</Max>
                        </Range>
                    </ValueRestriction>
                </Restrictions>
            </Property>
            <Property Name="Custom:CoolDownDelay" Type="Real64" DisplayName="Cool Down Delay">
                <UserInterface  UIMax="10" Step="0.5" Fine="0.1" Decimals="3" />
                <DefaultValue>0</DefaultValue>
                <AudioEnginePropertyID>7</AudioEnginePropertyID>
                <Restrictions>
                    <ValueRestriction>
                        <Range Type="Real64">
                            <Min>0</Min>
                            <Max>600</Max>
                        </Range>
                    </ValueRestriction>
                </Restrictions>
            </Property>
            <Property Name="Custom:GameId" Type="string" DisplayName="Game Id">
                <DefaultValue></DefaultValue>
            </Property>
            <Reference Name="Custom:StateGroup" DisplayName="State Group">
                <AudioEnginePropertyID>10</AudioEnginePropertyID>
                <Restrictions>
                    <TypeEnumerationRestriction>
                        <Type Name="StateGroup" />
                    </TypeEnumerationRestriction>
                </Restrictions>
            </Reference>
        </Properties>
    </WwiseObject>
</PluginModule>

XML 定義ファイルヘッダ

XML ファイルのヘッダ部分を詳しく見てみましょう。

<?xml version="1.0" encoding="UTF-8"?>

すべての XML ファイルの最初の行では、XMLバージョンとエンコーディングが定義されます。ここでは、XMLバージョンは1.0で、エンコーディングは UTF-8 です。Wwise プラグイン記述ファイルの最初の行も、これと全く同様である必要があります。

PluginModule 要素

<PluginModule>
    ...
</PluginModule>

このドキュメント内に記載されているメイン XML 要素は、 PluginModule という名前で、ファイルで定義されている様々なオブジェクトタイプのための全情報を含んでいます。

WwiseObject 要素

    <WwiseObject Name="Sound" CompanyID="1" PluginID="1">
        <Properties>
        ...
        </Properties>
    </WwiseObject>

各WwiseObject要素が、そのオブジェクトタイプのカスタムプロパティを定義します。Name 、CompanyID 、PluginID は、Wwiseで表示されないプロパティである場合を除き、Wwiseが認知しているものと全く同じでなければいけません。

プロパティやレファレンスに関する詳細は、プラグインプロパティやカスタムプロパティのXML記述をご覧ください。なお、全てのプロパティIDの最初に"Custom:"をプレフィックスとして付ける必要があります。

WwiseオブジェクトのID

カスタムプロパティを定義ためにに使える全ての WwiseObject タイプを、ここに示します。

    <WwiseObject Name="Action" CompanyID="1" PluginID="5"></WwiseObject>
    <WwiseObject Name="ActorMixer" CompanyID="1" PluginID="8"></WwiseObject>
    <WwiseObject Name="Attenuation" CompanyID="1" PluginID="41"></WwiseObject>
    <WwiseObject Name="AudioDevice" CompanyID="1" PluginID="71"></WwiseObject>
    <WwiseObject Name="AuxBus" CompanyID="1" PluginID="61"></WwiseObject>
    <WwiseObject Name="BlendContainer" CompanyID="1" PluginID="29"></WwiseObject>
    <WwiseObject Name="Bus" CompanyID="1" PluginID="21"></WwiseObject>
    <WwiseObject Name="ControlSurfaceSession" CompanyID="1" PluginID="66"></WwiseObject>
    <WwiseObject Name="Conversion" CompanyID="1" PluginID="55"></WwiseObject>
    <WwiseObject Name="DialogueEvent" CompanyID="1" PluginID="46"></WwiseObject>
    <WwiseObject Name="Effect" CompanyID="1" PluginID="17"></WwiseObject>
    <WwiseObject Name="Event" CompanyID="1" PluginID="4"></WwiseObject>
    <WwiseObject Name="ExternalSource" CompanyID="1" PluginID="57"></WwiseObject>
    <WwiseObject Name="GameParameter" CompanyID="1" PluginID="23"></WwiseObject>
    <WwiseObject Name="MixingSession" CompanyID="1" PluginID="53"></WwiseObject>
    <WwiseObject Name="ModulatorEnvelope" CompanyID="1" PluginID="65"></WwiseObject>
    <WwiseObject Name="ModulatorLfo" CompanyID="1" PluginID="64"></WwiseObject>
    <WwiseObject Name="MotionBus" CompanyID="1" PluginID="47"></WwiseObject>
    <WwiseObject Name="MotionFX" CompanyID="1" PluginID="48"></WwiseObject>
    <WwiseObject Name="MusicRndSeqContainer" CompanyID="1" PluginID="34"></WwiseObject>
    <WwiseObject Name="MusicSegment" CompanyID="1" PluginID="27"></WwiseObject>
    <WwiseObject Name="MusicSwitchContainer" CompanyID="1" PluginID="35"></WwiseObject>
    <WwiseObject Name="MusicTrack" CompanyID="1" PluginID="28"></WwiseObject>
    <WwiseObject Name="Query" CompanyID="1" PluginID="32"></WwiseObject>
    <WwiseObject Name="RndSeqContainer" CompanyID="1" PluginID="9"></WwiseObject>
    <WwiseObject Name="Sound" CompanyID="1" PluginID="1"></WwiseObject>
    <WwiseObject Name="SoundBank" CompanyID="1" PluginID="18"></WwiseObject>
    <WwiseObject Name="State" CompanyID="1" PluginID="6"></WwiseObject>
    <WwiseObject Name="StateGroup" CompanyID="1" PluginID="7"></WwiseObject>
    <WwiseObject Name="SwitchContainer" CompanyID="1" PluginID="10"></WwiseObject>
    <WwiseObject Name="SwitchGroup" CompanyID="1" PluginID="19"></WwiseObject>
    <WwiseObject Name="Trigger" CompanyID="1" PluginID="40"></WwiseObject>
    <WwiseObject Name="VirtualFolder" CompanyID="1" PluginID="2"></WwiseObject>
    <WwiseObject Name="WorkUnit" CompanyID="1" PluginID="25"></WwiseObject>
    <WwiseObject Name="AudioSource" CompanyID="1" PluginID="0"></WwiseObject>

このページはお役に立ちましたか?

サポートは必要ですか?

ご質問や問題、ご不明点はございますか?お気軽にお問い合わせください。

サポートページをご確認ください

あなたのプロジェクトについて教えてください。ご不明な点はありませんか。

プロジェクトを登録していただくことで、ご利用開始のサポートをいたします。

Wwiseからはじめよう