ボイス link

Ren'Py では台詞と同時にボイスを再生出来ます。このためには voice ステートメントで再生するボイスファイルの名前を指定します:

voice "line0001.ogg"
"Welcome to Ren'Py"

通常再生中のボイスは次の動作が始まると停止されます。voice sustain ステートメントを使うと次の動作にもまたがってボイスの再生を続けます。:

voice "line0001.ogg"
"Welcome to Ren'Py..."

voice sustain
"... your digital storytelling engine."

config.voice_filename_format 変数を使うとボイスファイルの名前をカスタマイズでき、ディレクトリーと拡張子を省略できるようになります。

ボイスタグ link

Ren'Py にはボイスタグ機能が含まれており、特定キャラクターのボイスをミュートするかどうか選択できます。このシステムを利用するにはそれぞれの Character() に voice_tag 引数を与え、 SetVoiceMute() または ToggleVoiceMute() アクションを使ってプレイヤーがボイスの切り替えをできるようにします。

define e = Character("Eileen", voice_tag="eileen")
define l = Character("Lucy", voice_tag="lucy")

screen voice_toggle:
    vbox:
        textbutton "Mute Eileen" action ToggleVoiceMute("eileen")
        textbutton "Mute Lucy" action ToggleVoiceMute("lucy")

label start:
    show screen voice_toggle

    voice "e01.ogg"
    e "You can turn a character's voice on and off."

    voice "l01.ogg"
    l "Yeah! Now I can finally shut you up!"

    voice "l02.ogg"
    l "Wait... that means they can mute me as well! Really?"

自動ボイス link

Ren'Py は再生するボイスファイルの自動的な決定をサポートし、台詞毎に voice ステートメントを書かなくてもボイスを再生出来るようにします。

これは各行の台詞に対応する識別子と一致するボイスファイルを作成して行われます。使用する識別子の決定には先ずランチャーから「 Extract Dialogue 」、「 Tab-delimited Spreadsheet (dialogue.tab) 」、「 Continue 」を選択してスプレッドシートを作成します。これはスプレッドシートプログラムでロード可能な dialogue.tab ファイルを作成します。

スプレッドシートの最初の行は使用する識別子で、他の行には台詞のより詳しい情報が載ります。

Ren'Py でボイスを自動的に再生させるには、config.auto_voice{id} を含む文字列を設定してください。台詞が表示されると、{id} が台詞の識別子に置き換えられ、ファイル名となります。そのファイル名が見つかれば、再生されます。

例えば以下のようなスクリプトがあり、

config.auto_voice = "voice/{id}.ogg"

台詞の識別子が demo_minigame_03fc91ef なら、対応する行が表示されるとRen'Py は voice/demo_minigame_03fc91ef.ogg ファイルを探し、ファイルが存在すれば再生します。

ボイスの関数 link

_get_voice_info() link

現在の say ステートメントで再生されているボイスの情報を返します。この関数 say ステートメントの実行中のみ呼び出されます。

返されたオブジェクトは以下のフィールドを持ちます。

VoiceInfo.filename link

再生されたボイスのファイル名か、ファイルが再生されていないなら None です。

VoiceInfo.auto_filename link

Ren'Py が自動ボイスのために探したファイル名で、見つからなければ None です。

VoiceInfo.tag link

話しているキャラクターに与えられた voice_tag 引数です。

voice(filename, tag=None)

filename をボイスチャンネルで再生します。 voice ステートメントと等価です。

filename

再生するファイルの名前です。この値は config.voice_filename_format とともに使用されることで、再生されるファイルの名前となります。

tag

この値は None にするか、または再生するボイスタグの文字列にします。None の場合は、既定値として次の動作におけるキャラクターの voice_tag となります。

ボイスタグは、どのキャラクターが話しているかを指定するために使われ、各々のキャラクターのボイスをミュートにするかどうかをユーザーが切り替えられるようにします。

voice_can_replay() link

現在のボイスをもう一度再生できる場合に true を返します。

voice_replay() link

可能であれば現在のボイスを再度再生します。

voice_sustain(ignored=u'', **kwargs) link

voice sustain ステートメントと等価です。

ボイスのアクション link

PlayCharacterVoice(voice_tag, sample) link

voice チャンネルで voice_tag のキャラクターが話すように sample を再生します。

sample

音声ファイルのフルパスです。

SetCharacterVolume(voice_tag, volume=None) link

各キャラクターのボリュームを調整出来るようにします。 volume が None なら、voice_tag のボリュームの値を変更する value を返します。そうでなければそれを volume に設定します。

volume は 0.0 から 1.0 までの数字で、 voice チャンネルに対するミキサーボリュームの割り合いとして解釈されます。

SetVoiceMute(voice_tag, mute) link

mute が true の場合は、与えられた voice_tag で再生されるボイスをミュートにします。 mute が false の場合は、 voice_tag で再生されるボイスのミュートを解除します。

ToggleVoiceMute(voice_tag, invert=False) link

voice_tag のミュート状態を切り替えます。基本的に与えられたタグがミュートのときに選択状態になりますが、 invert が true の場合はミュートでない時に選択状態になります。

VoiceReplay() link

最も最近に再生されたボイスを再度再生します。