毎フレームにおける平方根や二乗計算につきまして
Posted: 2012年3月27日(火) 11:34
こんにちは、いつもお世話になっております。
私は今3Dでゲームをつくっています。その中で、自身が操作するキャラクター(以降PC)とマップ上に配置したNPCとの会話をさせるプログラムを書きたいと考えております。
しかし、そこで問題が発生しました。PCとNPCとの距離を測る部分を組み込むとプログラム全体が起動しなくなりました(ウインドウは出るものの終始画面は真っ暗)。その部分をコメントアウトすれば起動します。エラー等は出ておりません。
フレームごとに計算させていたので、その負荷が大きかったせいでしょうか...
仕様は、
毎フレームPCとNPCの距離を、二点間のベクトルを求め、そのベクトルの二乗を計算することで求め、それが一定距離の二乗より近くになると別に確保しておいたフラグ変数をたてる。遠くなるとフラグを折る。
二乗のままにしたのは平方根を使わないようにしたためです。(結局効果は得られませんでしたが...)
そこで質問なんですが、
1.毎フレームこのような計算をすることに無理があったのでしょうか。
2.他に何かいい方法がありましたら是非ご享受ください。
お願いいたします。
私は今3Dでゲームをつくっています。その中で、自身が操作するキャラクター(以降PC)とマップ上に配置したNPCとの会話をさせるプログラムを書きたいと考えております。
しかし、そこで問題が発生しました。PCとNPCとの距離を測る部分を組み込むとプログラム全体が起動しなくなりました(ウインドウは出るものの終始画面は真っ暗)。その部分をコメントアウトすれば起動します。エラー等は出ておりません。
フレームごとに計算させていたので、その負荷が大きかったせいでしょうか...
仕様は、
毎フレームPCとNPCの距離を、二点間のベクトルを求め、そのベクトルの二乗を計算することで求め、それが一定距離の二乗より近くになると別に確保しておいたフラグ変数をたてる。遠くなるとフラグを折る。
二乗のままにしたのは平方根を使わないようにしたためです。(結局効果は得られませんでしたが...)
そこで質問なんですが、
1.毎フレームこのような計算をすることに無理があったのでしょうか。
2.他に何かいい方法がありましたら是非ご享受ください。
お願いいたします。