FPSを作ってみる@wiki
05)
最終更新:
slice
-
view
(2015/05/18)
絵が進んでるという事は…そう、プログラミングの停滞を意味するのであって。
絵
塗りまで行って放置してた絵が勿体無いからキャンペーンで頑張って一枚仕上げた。
いつも通り縮小版をこのページへ、詳細版をPixivのページへアップした。
手を付けたのが1月の末だったのでクォリティに若干、差があるかもしれない。
いつも通り縮小版をこのページへ、詳細版をPixivのページへアップした。
手を付けたのが1月の末だったのでクォリティに若干、差があるかもしれない。
具体的には青空と遠景の東京タワー含めたドラゴン3体、右上のビルの塗り、左のビルのツタと
迷彩柄のグローブ、手前のドラゴンの塗りを5月中旬からチマチマやっていて、他は既に出来てた。
と、こう書いてから実物をまじまじ眺めると特に変わりない気がしないでもない…
迷彩柄のグローブ、手前のドラゴンの塗りを5月中旬からチマチマやっていて、他は既に出来てた。
と、こう書いてから実物をまじまじ眺めると特に変わりない気がしないでもない…
一番気に入ってる所は空の色。
色を合わせた瞬間、凄く腑に落ちた。「そうそう、この色」って感じで。
雲も頑張ってはいるけど流石に上手い人の見た後だとまずまずかな。
次点は電線。テキトーに塗った割にそれっぽくなってるとこが良い。
そういう意味じゃ最近描いた東京タワーも良い感じに手抜きが出来たと思ってる。
色を合わせた瞬間、凄く腑に落ちた。「そうそう、この色」って感じで。
雲も頑張ってはいるけど流石に上手い人の見た後だとまずまずかな。
次点は電線。テキトーに塗った割にそれっぽくなってるとこが良い。
そういう意味じゃ最近描いた東京タワーも良い感じに手抜きが出来たと思ってる。
反省点は、まず背景のバス。
絵がどうこうじゃなく前面部を全部描いたのに見えてる所は半分くらいっていう。
描かなくて良いとこまで描き込んで時間を無駄にする典型的なアレ。
最初は仕方ないのかね。手の抜き方がわからんかったのよ…
左上のドラゴンも面積的には小さいのに同じ理由で微妙かなぁと。
そして遠景のドラゴン。これは逆パターンでいくら小さいからとはいえ
資料無しで描いてたらなんだかコミカルになってしまった!
絵がどうこうじゃなく前面部を全部描いたのに見えてる所は半分くらいっていう。
描かなくて良いとこまで描き込んで時間を無駄にする典型的なアレ。
最初は仕方ないのかね。手の抜き方がわからんかったのよ…
左上のドラゴンも面積的には小さいのに同じ理由で微妙かなぁと。
そして遠景のドラゴン。これは逆パターンでいくら小さいからとはいえ
資料無しで描いてたらなんだかコミカルになってしまった!
実はもう一枚、塗りまで行って放置しているのがある。
こちらは人物が1人と小物が少々の他背景は黒ベタ(グラデーション)なので
もうちょっと気楽にやれそう。
だがいつもの「見通しの甘さ」があるから期待しないほうがいいかな。
こちらは人物が1人と小物が少々の他背景は黒ベタ(グラデーション)なので
もうちょっと気楽にやれそう。
だがいつもの「見通しの甘さ」があるから期待しないほうがいいかな。
プログラム
で、何やったっけ?と例のごとくログ確認。
ああそうだ4分木を実装してゲームループを回るための仕組みをもっと使いやすくとかしてたっけか。
ああそうだ4分木を実装してゲームループを回るための仕組みをもっと使いやすくとかしてたっけか。
読んでて単に4分木とか8分木と言われても「で、実際どんなんよ?」となって
ピンと来ないと思うので名前をズバり言うと
「モートン順序を利用した空間分割による衝突判定」
ぶっちゃけるとマルペケさんのこの記事だ。
ピンと来ないと思うので名前をズバり言うと
「モートン順序を利用した空間分割による衝突判定」
ぶっちゃけるとマルペケさんのこの記事だ。
自分の場合、コード1つで4分木と8分木、空間のメモリ配置に関しても配列とハッシュマップで持つものをカバーしたりだとか
キャラクター同士とキャラクター vs 背景オブジェクトは判定するが背景同士はしないみたいに
色々アレンジを施してあるが、基本はこれである。
なのでアルゴリズムについては先のページを参照して欲しい。
キャラクター同士とキャラクター vs 背景オブジェクトは判定するが背景同士はしないみたいに
色々アレンジを施してあるが、基本はこれである。
なのでアルゴリズムについては先のページを参照して欲しい。
実装したコードはboomstickの、ntreeディレクトリ以下だが
果たして参考になるかは疑問。
あっ8分木はテストが書けてないのでまだpushしてなかったか…
んーでも、それよりゲーム動かすの優先で行きたい。
果たして参考になるかは疑問。
あっ8分木はテストが書けてないのでまだpushしてなかったか…
んーでも、それよりゲーム動かすの優先で行きたい。
(2015/05/10)
大して進んでないけど現状報告
絵
週に2,3日ペンを持てば良い方という頻度、我流で細々と描いてる絵だけど
それでもPixivに何枚か出してるとよく言われる「時間かけて描いた絵と評価は比例しない」
というのは少しわかる気がする。
試行錯誤で20時間かかった物より2~3時間で気楽にやった方が評価高い事は普通にある。
版権物はやっぱり強いね。自分じゃ高が知れてるとはいえ明確に差は出るなぁ、等と。
それでもPixivに何枚か出してるとよく言われる「時間かけて描いた絵と評価は比例しない」
というのは少しわかる気がする。
試行錯誤で20時間かかった物より2~3時間で気楽にやった方が評価高い事は普通にある。
版権物はやっぱり強いね。自分じゃ高が知れてるとはいえ明確に差は出るなぁ、等と。
反応が欲しけりゃひたすら二次創作すれば良いように思えるけど
オリジナルで描いてる時の方がモチベーションが維持しやすいし評価貰えた時の嬉しさも格別で、その辺難しい。
オリジナルで描いてる時の方がモチベーションが維持しやすいし評価貰えた時の嬉しさも格別で、その辺難しい。
ちなみに今は過去に塗りまで入ったが途中でデッサン崩れに気づいたりして放置してた絵を
勿体ないので仕上げてる。
なんにせよ気張らずマイペースでやるのが一番…
勿体ないので仕上げてる。
なんにせよ気張らずマイペースでやるのが一番…
プログラム
またしてもあたり判定。
ずっと総当たりでやるのもアレなので(っていうかいい加減ゲーム動かしたいので)
4分木(for 2D)ないし8分木(for 3D)位は入れようという事で、自分が前に書いたソースを
整理しつつ組み込み。
「総当たりよりはマシな方法」とかでゲームエンジン入門書にサンプルで載ってそうな奴だ。
ずっと総当たりでやるのもアレなので(っていうかいい加減ゲーム動かしたいので)
4分木(for 2D)ないし8分木(for 3D)位は入れようという事で、自分が前に書いたソースを
整理しつつ組み込み。
「総当たりよりはマシな方法」とかでゲームエンジン入門書にサンプルで載ってそうな奴だ。
そういうと楽勝に聞こえるがtemplateを駆使し、1つのコードで4分木と8分木の両対応や
面倒臭がってコメントをあまり書いてないのと速度やメモリ効率の為に少々回りくどい事をしているせいもあって案外苦戦した。
今回に限っては難しい事をしてないのでコメントは別にいいが
変数名をIdとかtmpとか適当に付けたり、使ってない引数を放置してあるのは頂けないねぇ。
面倒臭がってコメントをあまり書いてないのと速度やメモリ効率の為に少々回りくどい事をしているせいもあって案外苦戦した。
今回に限っては難しい事をしてないのでコメントは別にいいが
変数名をIdとかtmpとか適当に付けたり、使ってない引数を放置してあるのは頂けないねぇ。
とりあえず組み込みと単体テストのパスは確認したので
コメントやコミットの整理してからGitHubの方へアップする予定。
コメントやコミットの整理してからGitHubの方へアップする予定。
ガチでFPSを作る際はBSPやPVSを使うんだろうけど
逆に言えばあれはほとんど屋内メインのFPS/TPSにしか使えない構造に思えて躊躇している…
ちなみに3年前にニコニコで公開したシューティング動画は背景の描画カリングをPVSでやってたが
まぁ…いろいろと無駄だった。
自動スクロールなのにここまでしなくてもっていう。
逆に言えばあれはほとんど屋内メインのFPS/TPSにしか使えない構造に思えて躊躇している…
ちなみに3年前にニコニコで公開したシューティング動画は背景の描画カリングをPVSでやってたが
まぁ…いろいろと無駄だった。
自動スクロールなのにここまでしなくてもっていう。