性能頭打ちなG3エンジンと納得のG1エンジンの底力

現在テスト中のG3エンジン搭載なテキトー筐体の銃です。パーティクルの薬莢排出と、スカルプトに貼り付けたテクスチャアニメそして(ちょっと薄いけど)パーティクルのマズルスモークです。ビジュアル面の機能は付けるだけなので特に問題はないですね。

発射制御機構は新しいG3系を試しています。0.05秒間隔で3本で回しても17発/秒は出ていました。やはりタイマーで回して時間に正確に射出するのは弾も綺麗に出ますが色々と付随する問題がありました。
auto射撃時に指切りでシングル発射が出来ないこと。これはトリガーを離してもその間にタイマーで生成された未処理のイベントがキューに残ってしまう為に発生するようでした。とりあえず1発目だけはcontrol直結と同じ感覚で指切り出来るように2回目以降のcontrol発生にてタイマー始動という仕組みにして対処。しかしながらトリガーを離した時に残ってしまうイベントキューの為に連射後はスグに止まらない状況です。残りキューを消去する方法はありますが、ちょんちょんちょん っと頻繁にトリガーを引く動作をしてしまうと、負荷が高くなってしまうので、まぁ連射後に少し出てしまう状態はしかたないかなぁというところです。

あ、そうそう、これらのテストは秒間30発ぐらいは射出するような世界の話なので、秒間10発程度の普通の銃器アイテムでは全く問題にならない、気にしなくていい事です。

とりあえずは3本で回していると0.05秒以下で駆動したときに、やはり処理が追いつかないようで最低5本は必要という状況でした。しかし、5本にしても27発/秒ぐらいで頭打ち現象が出てしまい、本数の組み合わせはもう少し検証しなければならない様子です。理屈で計算上は50発/秒打てるはずなのに出ていない。まぁこれ原因はスグ分かりました。イベントが多くなった為に根本的に処理出来ていないことです。なんの事かは、G3エンジンはG2では外側にあった(別のスクリプトだった)射出用マスタータイマーを内包して1スクリプトになっている為にcontrolで発生するイベントとタイマーで生成したイベントの2つを常に処理しなければならない状態を生んでいるからではないかということです。
処理するイベントが少ない方が軽くて早い。単純なことです。
比較でcontrolイベントしか扱わないG1エンジンでのAKMSをディレイ=0.02で射撃すると、44発/秒ぐらいの高い性能を示します。ところがタイマーを使うG3エンジンでは0.01秒で回しても27発/秒程度しか射出出来ないのです。一発当たりの処理に換算するとAKMSなどのG1エンジンでは1発を0.02272秒で処理出来ていますがG3系では0.03703秒もかかっているのです。これはやはり発生するイベント数と比例していくのではないかとの見解です。ちなみにG1エンジンでキーを離している状態だと画像の中段のように26発/秒しか出ていません。押してると倍になるという特徴が速くなるに連れて顕著に現れます。

そう、10発/秒程度のRP向け銃なら、なにも問題にはならないようなことであって、更に倍の20発/秒ぐらいの高性能な物でも気にならないことなのですが、コンバット向けであり限界性能も引き出せるような物を・・・と、考えてしまうので初期のG1系エンジンのものが捨てがたい気がしてなりません。もっともエフェクト類が一切無いことからこの性能を出せている部分もあると思います。

まぁこういう限界性能部分を気にされる人は少ないかも知れませんね。
拘ったとしても着弾位置や拡散範囲が自分の好みであるとか、そういう部分ではないでしょうか。
普通の方なら弾が綺麗に出るとか音がいいとか、ポーズが格好いいとか、そういう部分を好まれるのではないかなと思います。

G1エンジンが捨てがたく思うので既存のAK系(7本仕様のアサルトライフル系)はG1ベース
その他のSMG系(5本仕様の物)はG3またはG2ベースの物と体系的に中身も分けようかと思っています。

0 件のコメント:

コメントを投稿

Popular Posts of the Month