■サイト[SilverSecond]トップ
■開発日誌トップ
■ 2009/04/03 (金)  ウディタ高速化・一段落 ■
ミサイル報道見てると今の日本どう考えても戦争状態。

ていうかエイプリルフールの午前中に「エイプリルフールは午前中までだよ」
って言うのやめてください!クレタ人は嘘つきですか!?
あ、ちなみに誕生日に誰にも祝ってもらえなかったのも嘘です。
家族と戦友から一言頂きました幸せ者ですよ。

シルフェイド学院物語ですが、やっぱりいじったそばから
内容が反映される段階になると凄く楽しいです!
データを増やしやすいようにと、色々考えて時間かけて
下ごしらえ的に作ってきた部分が今になって効いてきました。
これまで作ってる最中は目に見える変化がなくて、
「なんでこんな時間かけて汎用性上げなきゃいけないんだ……」
とか思ってましたが、その汎用性のおかげで
後半開発に入ってからのペースがハンパじゃなく向上!ガンガン行きますよ!

特に「パーツ合成」構想は、戦闘グラフィックのようなデフォルメキャラには
猛烈な効果を発揮していて、膨大なキャラが登場するゲームにおいて
全員分の戦闘キャラ画像を作りやすいという点が便利すぎます。

【最近の進行状況】
3/27 「スキルの強化」処理の基本処理を作成。
3/28 戦闘システムの描画機能を洗練、アルバートのバトルグラフィック作成
あと銃の射撃モーションも裸ポーズだけだけど完成!撃つと薬莢飛ぶよ!
3/29 戦闘の描画方法を大幅改革。服とベース部分(裸)をバラして、
重ねて表示することで、肌の色変化に対応。黒い人や緑の人もOK!
戦闘画像用のパーツを色々追加 ポニーテールとかナダ・セトヘアー追加。
3/30 合成パーツを増やしてNPCモブキャラを5体ほど追加
3/31 頭痛で作業が進みませんでした
4/1 「自由行動」処理の最終調整や、ウディタのプログラム修正など
4/2 ウディタのバグ取り&プログラム修正続行。
ピクチャ処理を高速化しようと頑張ってみたものの、テキトーに作った
力ワザの方が格段に早くて泣く、ボツ。そして力ワザを正式採用。


ということで、ウディタの高速化はとりあえず一段落しました。
「夢柱(ウディタ製弾幕シューティング)」がVer1.10時の
3倍オーバーの速度で動く(かも)というレベルまでは向上しています。
変数操作に至っては、1万回あたり32msかかっていたのが、今や8msです。
100msあたり12万回計算できるようなので、
以前の結果のRGSSの45万回にちょっとだけ近くなりました。
が、実はループ内に置かずに普通に変数操作を並べると、
100msあたり27万回も計算できることが分かりました。
回数付きループ処理自体でかなり時間を食ってたようです。

ということで、今度はRGSSとウディタの両方に対し、
「for(回数付き繰り返し)ループ内に10個の変数操作を並べて」
処理時間を計測してみました。結果を比較すると以下の通り。

【100ミリ秒あたりの変数操作処理回数】(ループ内に10個の変数操作文)
RGSSスクリプト  $A = $A + $B   68万回
ウディタ変数操作 コモン0=コモン1+コモン2 27万回

変数操作に限れば、RGSSの2/5くらいの速度が出るようです、バンザーイ!
ただ、変数操作だけを速くしても、
実は全体として見るとあんまり速くならなかったので、
変数操作だけでなく自作システムで散々使いそうな
DB操作・ラベル処理・ピクチャ処理・ループ処理なども高速化しています。

その血と汗と涙の結晶がコレ↓!!!動画撮影用アプリケーション以外
何も立ちあがっていない状態で、「Game.exe」だけ入れ替えて
従来版と高速版のイベント処理時間を比較したものです。


ちょっとネタバレ気味ですが、ラクにチェックできる動作が重くなる状況が
ここしかなかったものでして、どうも申し訳ありません。
実験環境はCore2Duoの2.5GHz(つっても1CPUしか使いませんけど)です。
結構速くなったと思いますよ!これまで1GHzのPCで遊んでいた人でも、
3~4GHzのPCで遊ぶのと同じくらいスピードが出ると考えれば
高速化って大事だなあってちょっぴりシミジミできます。

以下は気になったコメント。
>あれ、出演予定に見キャラが少ない…?           
>見の主要キャラのエシュター・ガゼル・シーナ・セトあたりは
>まだ未確定なんでしょうか、と出演希望            

きっと出ますよ!!といっても物語の需要に応じて出演させないと、
「出たはいいけど出番少ない」とか「目立たない」とか、かわいそうなことになるので、
出すならしっかり出番や役割を考えたいところです。
全部オリジナルキャラで作るなら、そういう問題もないんですが、
既存キャラをメインに使う開発ってのは始めてなので、その辺りが色々難しいです。

見聞録キャラに比べると、幻想譚キャラはまだ掘り下げきれていないので、
そういう意味で使いやすいところがあります。
個性の薄いキャラが二次創作で多用される理由がよく分かりました。



>更新お疲れ様です。NPCの自動成長機能、とても面白そうですね。
>ところで成長幅は各キャラごとに固定値でしょうか。          

「最終パラメータ」と「初期成長度」、「成長率」が設定可能なので、
ある程度は自由に設定できます。
一部のキャラは初期パラメータのまま全く成長しない、とか、
最初は弱いけど強くなるのがメッチャ速いとか、
最初割と強めだけど成長率は遅いとか、そういう設定も可能です。

>キャラは総勢何名くらいでる予定ですか?よかったら教えてください。
えーと……出来た分だけ!!
合成顔キャラのNPCもいっぱい出るので、キャラ数だけはいっぱい出る予定です。
いざとなったら既存キャラを合成顔で再現できますし。

>モノリスフィアのキャラはシルフェイド系列じゃないので
>やっぱり学園には出ないんでしょうか?         

モノリスフィアもシルフェイド系列なので出ます。

>正式版のウディタで作るなら、シル見のバグは直ってそうですか?
ツクールの都合で直せなかった問題も直せるハズです。
むしろ、もっと操作をラクにしたい考えです。マウス操作できるようにするとか。
関連記事

▲追記を閉じる▲

 
>あれ、出演予定に見キャラが少ない…?           
>見の主要キャラのエシュター・ガゼル・シーナ・セトあたりは
>まだ未確定なんでしょうか、と出演希望            

きっと出ますよ!!といっても物語の需要に応じて出演させないと、
「出たはいいけど出番少ない」とか「目立たない」とか、かわいそうなことになるので、
出すならしっかり出番や役割を考えたいところです。
全部オリジナルキャラで作るなら、そういう問題もないんですが、
既存キャラをメインに使う開発ってのは始めてなので、その辺りが色々難しいです。

見聞録キャラに比べると、幻想譚キャラはまだ掘り下げきれていないので、
そういう意味で使いやすいところがあります。
個性の薄いキャラが二次創作で多用される理由がよく分かりました。



>更新お疲れ様です。NPCの自動成長機能、とても面白そうですね。
>ところで成長幅は各キャラごとに固定値でしょうか。          

「最終パラメータ」と「初期成長度」、「成長率」が設定可能なので、
ある程度は自由に設定できます。
一部のキャラは初期パラメータのまま全く成長しない、とか、
最初は弱いけど強くなるのがメッチャ速いとか、
最初割と強めだけど成長率は遅いとか、そういう設定も可能です。

>キャラは総勢何名くらいでる予定ですか?よかったら教えてください。
えーと……出来た分だけ!!
合成顔キャラのNPCもいっぱい出るので、キャラ数だけはいっぱい出る予定です。
いざとなったら既存キャラを合成顔で再現できますし。

>モノリスフィアのキャラはシルフェイド系列じゃないので
>やっぱり学園には出ないんでしょうか?         

モノリスフィアもシルフェイド系列なので出ます。

>正式版のウディタで作るなら、シル見のバグは直ってそうですか?
ツクールの都合で直せなかった問題も直せるハズです。
むしろ、もっと操作をラクにしたい考えです。マウス操作できるようにするとか。
関連記事