昔ながらのKittyGuy友達ナBambooからバトンを渡されました、Breeze!!のふぁんです。
この名義ではBreeze!!というブランドに籍を置いてないんですが まぁいいか 。
と言う訳で、彼にしては非常にマジメなお題振りに当惑を隠せないままですが、ぶっちゃけこの原稿上げないと他のスタッフから刺されかねないので、サクっと進めていこうと思います。
ここでチンコとアナルの直径の相関関係が、全米を震撼させるような大いなる宇宙意思によって成り立ってるとか書き始めたら、それはそれで面白いんだろうなぁ。
●ゲーム内における演出について
マジメにいきましょう。
18禁ゲームにおける演出の役割というのは、いかにユーザーをゲームに惹きつけるかだと思ってます。
ユーザーをシナリオに、キャラクターに、シーンにシンクロさせる、その手助けをするのが演出なんではないかなーと。
で、ここ最近はそういった演出に力を入れるメーカーさんが多くなる一方で、様々な問題が出てきています。
まず、演出にかかるコスト。
視覚的演出にはCGのバリエーションや数多くのパーツが、音響的演出にはSEなどのパーツが必要になってきます。
そして一番の問題が、演出を演出として表現するスクリプトの記述です。
(ここで言うスクリプトとは、キャラクタを表示する、場面を変更する、アニメーションを表示する、といった動作手順を細かく記述したもの。一般的には、シナリオのテキストに埋め込むような記述になる。)
そもそも演出自体がゲームのシステムに大きく依存するものであり、その時点で演出の限界がある程度決まってきてしまうのですが、制作ツール側である程度演出用の用意がされていないと、例えば『キャラクターの位置をずらす』という簡単に見える記述でも、大変な量の記述をしなければいけなくなります。
例1 古典的なシステム
背景画面、左キャラ、中央キャラ、右キャラ 画面のパーツ単位で構成されている。
古典システムの場合の擬似スクリプト

1:@表示 左レイヤ ukpose01warai # 左レイヤに詩子のポーズ番号0番を表示
2:@セリフ 詩子 じつは、でしゅね
3:@移動 左>右 # 左レイヤを右に移動する表示処理

4:@表示 右レイヤ ukpose01warai # 右レイヤに詩子のポーズ番号0番を表示しなおす
5:@表示 左レイヤ szpose02warai # 左レイヤにすずなのポーズ番号0番を表示する
6:@表示 右レイヤ szpose01warai2 # 表情変更ではりなおし
7:@セリフ 鈴菜 ぷ
8:@表示 右レイヤ ukpose01naki # 表情変更ではりなおし
9:@セリフ 詩子 ふえぇぇ
上記例1を見てもらえば分かる通り、けっこうな量の記述をしなければなりません。
つまり演出の質と量が増えれば増えるだけ膨大な作業時間が発生するのです。
そして後述しますが、デバッグ時にかかるスクリプト修正量も増えることになります。
いやー、ヤバいね。スゲーヤバい。そりゃ発売日も延びますよ。HAHAHA。
とまぁ、以前は必要なかった金銭的、時間的コストが非常にかかってしまうんですな。
これをどうやって解決していくかが、今後の課題になりそうです。
で、以上!で終わるのもアレなので、Breeze!!の場合を少々。
スクリプトに関してはゲームエンジンの構造自体を変える方向で対処しています。
例2 近代的(笑)システム
「場面」「キャラクタA」「キャラクタB」といったように、物語のなかの「オブジェクト」単位で構成されている。
近代的システムの場合の擬似スクリプト
1:[詩子 通常,笑,左] # 詩子の状態を規定
2:[鈴菜 通常,笑] # 鈴菜の状態を規定
3:詩子:じつは、でしゅね # テキスト表示はよくつかうのでテキスト記述だけでOK
4:[詩子 移動 右] # 右に移動
5:[鈴菜 左] # 左に表示
6:鈴菜:[笑2]ぷ # 鈴菜に対する命令+テキスト
7:詩子:[泣]ふぇぇ # 詩子に対する命令+テキスト
例1の様な古典システムだと、例えば、この場面での詩子のポーズが気に入らないから
やっぱ変更しよう、と思った場合、そのポーズで記述してしまっているその後ろの
表示命令を、全部書き直す必要があります (例1の1,4,8行目。そこからうしろもえんえん)。
これはわりとスクリプトバグの温床になります。
その点、近代的システムでは、「詩子オブジェクト」が状態を維持していて、ポーズと表情は個別に指定可能なので、変更点は1行目の「通常」のみになります。
配置変更をしようと思った場合にも、いちいちこれがどっちのレイヤだから…とか考えなくて良いので楽チンです。
それぞれのキャラクタが自分の位置を保持しているので、それの初期状態と、変更部分を修正していくだけです。
演出に凝っているブランドさんのシステムのスクリプトは、おそらく、いずれもこういった近代的なものになっていることでしょう。……前者のままだと、スクリプタの人は地獄を見てるかと。
例2は例1と同じことを新しいエンジンのスクリプトで記述したものです。
これだけでも、かなりの時間短縮に繋がります。後、デバグもしやすいの。
で、上記のスクリプト記述部分を手伝ってもらった某氏に言われて気づいたんですが、『夏音』シリーズは元から新エンジンで作ってあるんですね!(今更)
じゃあ何で延びてるんですかねぇ? その辺の謎は次回のコラムをご期待下さい!
と言う訳で冬の新作で死にそうになってるALcotの宮蔵さんにバトンを渡そうと思います。
次回『何故ゲームの発売日は延びるのか!?』という永遠の命題について語ってもらうことにしましょう。
書いててお腹が痛くなったんで、この辺で。


追記:Bambooの前回のコラムで『期待』という言葉が出てきてますが、良い演出というのはいかに『ユーザーの期待を“華麗に”裏切るか』ということです。これは間違いない。(華麗に=不快感を与えずに でも可)
|