EasyFAQ/46

Last-modified: 2008-12-09 (火) 14:49:44

ヒットマークの位置

投稿者墨鴉
重要度
状態
カテゴリ
HSPバージョン3
E3Dバージョン
回答

ここから下を自由に編集してください。
上の投稿情報は安易に編集するとFAQリストのリストアップに支障が出るものもあります。
よく分からない方は分かる人に聞いてみてください。

  • アクションゲームなどで攻撃がヒットしたときに出るヒットマーク(ヒットエフェクト)を表示させたいのですが、攻撃がヒットしたキャラクター(モデル)の一番カメラに近い位置をどうにかして取得して、そのキャラクターのみに上手く重ねてエフェクト(ビルボードやスプライト)を表示する方法はないでしょうか?

    単純にモデルの中心座標にビルボードなどを表示するだけではキャラクターのモデルに半分埋まって隠れてしまいますし、単に画面上の2D座標を取得してスプライトを表示するだけでは遠くのキャラクターにヒットしたときなど手前のキャラクターまで一緒に隠れてしまい、画面がごちゃごちゃになっていまひとつ見栄えしないもので・・・。

    頂点を取得する命令で何か工夫できないかやってみましたが、上手くいきませんでした。

    どなたか良いアイディアをご存知でしたら、どうか教えていただけないでしょうか?よろしくお願いいたします。 -- 墨鴉? 2008-12-04 (木) 15:07:18
  • ビルボードの方法です、ビルボードとカメラの位置からベクトルを調べます、そのベクトルを正規化し、ビルボードの位置に離す距離をかけた後足します -- 26℃? 2008-12-04 (木) 17:04:37
  • なるほど、ベクトルで計算すればいいのですね。
    欲を言えば離す距離を何とかしてモデルごとに求めて適切な数値を設定できる方法があれば言うこと無しなのですが・・・(全員人型キャラクターならば一定値でも問題ないのですが、大型のキャラクターも一応想定しているので)。
    ともあれ、その方法で十分何とかなりそうなので研究してみようと思います。26℃さん、ありがとうございました。 -- 墨鴉? 2008-12-05 (金) 07:34:44