VS上でステート数が多かったり複雑なリンクを組んだオブジェクトは
生成すると処理落ちがきついのですが、オブジェクトを分けて扱った方が良いでしょうか?
今現在この規模のものを生成しようとすると重たいのですが……。
VS上でステート数が多かったり複雑なリンクを組んだオブジェクトは
生成すると処理落ちがきついのですが、オブジェクトを分けて扱った方が良いでしょうか?
今現在この規模のものを生成しようとすると重たいのですが……。
こちらですが、
オブジェクトの生成を行う際、
ヴィジュアルスクリプトのアクションやアニメーションの対象となる情報を呼び出して保存する処理が行われます。そのため、ヴィジュアルスクリプトが大規模になればなるほど、オブジェクト生成時の処理は重くなります。
もう少し軽くできないか・・・という検討はさせていただいておりますが、これは処理上ある程度致し方ないところもあります。
大量に生成するようなオブジェクトには複雑な式を組まず、シーン上に配置する別のオブジェクト、UIレイヤーに処理専用のオブジェクトを置く、プレイヤー系の判定であればプレイヤーの子オブジェクトとして判定用オブジェクトを置くといった形がおすすめとなります。
ご回答ありがとうございます。
プレイヤーの特定のアクションとして
(例えば銃を上や斜めに撃つ場合に)
上半身のみを動かせるように子オブジェクトとして生成したのですが
これはあらかじめオブジェクト側のノードのルート内に置いた方がいいでしょうか?
(子ノードとして配置して必要に応じて表示・操作すると言った形で)
また、変身能力を作る場合
変身対象も複雑な設計であれば予め生成して座標の置換をするのが無難でしょうか?
現在、私もこの問題に直面しています。自分の対処方法としては、生成クラスを分割することで対応しています。プレイヤーのステートマシンとアニメーションのメモリ使用量は、互いに補完するような比例で増加しているように見受けられます。
さらに、もう一つ問題があります。変数を通じて 4 体の主人公を生成し(例:変数に基づき主人公オブジェクトを 4 体生成)、その後主人公が比較的複雑なオブジェクトを生成すると、明らかにカクツキが発生します。しかし、最初から主人公をシーン内に配置しておき、その主人公が複雑なオブジェクトを生成する場合は、このようなカクツキ問題は発生していません。