プロフィール

Na-7

Author:Na-7
SE(システムエンジニア)として約15年間システム系ソフト会社を勤めあげ、2008年3月退社。現在、ゲーム制作会社設立を目指して活動中。


アクセスカウンター


最新記事


最新コメント


最新トラックバック


月別アーカイブ


カテゴリ


DATE: CATEGORY:スポンサー広告
上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。
DATE: CATEGORY:三国志軍記開発
山岳地帯の索敵範囲の表示問題05
開発中のメイン画面
索敵範囲が円形で表示され、色や深度の問題なども解消された。山岳地帯の表示に関してはまだ課題があるらしい。



◎深度バッファの有効無効

ユニットが森の手前に描画される問題について調査を進めると、以下のことがわかってきました。

『ある処理(索敵範囲内のステンシル領域を塗り潰す処理)内で深度バッファを無効にすると、その後深度バッファを有効にしても有効にならない』

この処理は、深度バッファを無効にしないと例のチラチラ現象が発生します。どうしたものかと悩んでいたのですが、この処理内の深度バッファ制御をやめて、呼び出し元で深度バッファを無効にしたら、その後深度バッファが有効になりました。

なんだかよくわかりませんが…解決したからいいのかな?(汗)


というわけで、アルファ制御やステンシル制御は各処理内に記述し、深度バッファ制御だけ呼び出し元に記述するという中途半端な状態になりました。いまいち気に入らないのですが、問題は他にもあるので、とりあえず先に進めましょう。



◎アルファブレンドの有効無効

次はユニットや森の色が変わった問題です。

最初はエフェクトの問題かと思っていたのですが、結局これもレンダーステート管理の問題で、アルファブレンドの有効無効をきちんと制御したら元に戻りました。

深度バッファとアルファブレンドのバグ修正

とりあえず深度とアルファの問題は解決しました^^



◎山岳地帯の表示問題

次は山岳地帯の索敵範囲の表示が良くない問題です。現象は以下の通りです。

山岳地帯の索敵範囲の表示問題01

・山の反対側で、こちらから見えない部隊の
 索敵範囲が表示される
 →‘索敵範囲内のステンシル領域を塗り潰す処理’で
  深度バッファを無効にしているため

・山の複雑な起伏を無視して四角形の領域が表示される
 →索敵領域を平面モデルで描画しているため


試しに、深度バッファを有効にすると、こんな感じです。

山岳地帯の索敵範囲の表示問題02

山の反対側の索敵範囲が表示されなくなるのは良いのですが、平原地帯の索敵領域がチラチラします。また、山岳地帯の索敵領域は、上図のように線や不定形で表示されますが、これは地形モデルの起伏と索敵領域描画用平面モデルの接合部分だけが明るく表示されているからです。



◎ステンシル描画モデルの変更

索敵範囲のステンシル描画用モデルを、平面モデルから球形モデルに変更します。

球モデル   山岳地帯の索敵範囲の表示問題03

おお!索敵範囲が円形になりました!
パフォーマンスも、fpsには影響しないレベルです。
(1.04ms→1.24ms)
最初からこうすれば良かったのか(^^;

これで山の複雑な起伏が無視される問題を解消すると同時に、索敵範囲を円形とする課題もクリアできました。



◎山の反対側の索敵範囲

残るは、山の反対側の部隊の索敵範囲が表示される問題だけです。試しに、深度バッファを有効にすると、こんな感じになります。

山岳地帯の索敵範囲の表示問題04

山の反対側の索敵範囲が表示されなくなったのは良いのですが、地形モデルの起伏と球モデルの接合部分だけが明るく表示されています。接合部が球状になったので、平原地帯でのチラチラはなくなりました。

こうして見ると、

『地形モデル(平面モデル)のうち、球モデルの内側全域のステンシルバッファをオンにする』

ことができれば問題を解決できそうですが、これって可能なんでしょうか?

うーん…ネットで調べてもヒントが見当たらないですね。この問題に関しては、とりあえず保留とします。



◎次回予告

年末で忙しくなってきたので、今年のブログ更新は今回が最後になりそうです。

というわけで、次回は「12月の総括と1月の目標」です。

今年1年を振り返るとアレですが、とりあえず12月は頑張ったかな、と(^_^;


それでは皆さんよいお年を!

スポンサーサイト

テーマ : ゲーム製作 関連 - ジャンル : ゲーム

コメント

コメントの投稿


管理者にだけ表示を許可する

トラックバック


この記事にトラックバックする(FC2ブログユーザー)



copyright © ゲーム制作の舞台裏 all rights reserved.Powered by FC2ブログ
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。