神トラ2もどきの作成時メモ
=前置き=
このまえ作った神トラ2もどきの作成のプログラム的なTips。というか自分が思い出せるようにするためのメモ。
=基礎=
3D表示用にAway3Dを使用。
地面と天井は一枚絵にして、壁は一つ一つPlaneとして生成した。壁に関しては並んでるものをまとめる方向も考えたが、後述のマテリアル変更の件もあり、個別のPlaneを生成する方向でまとまった。
Away3DではZの比較はピクセル単位ではなくメッシュ単位っぽく、普通の設定では天井の方がプレイヤーより奥に表示されてしまうことがあったため、mesh_ceil.zOffset = 10000;という感じでZのオフセットをかけて手前に表示するようにした。
Flashをこのブログに貼る方法はいくつかあるが、Away3D(厳密にはStage3D)を使ったものを貼る場合はwmodeの設定も必要なのでFree Web Hosting - Your Website need to be migratedを使わせてもらった。
=3D表示を2Dっぽく見せる=
神トラ2(もどき)は「通常モード」と「壁入りモード」の2つがあり、別にどちらも普通の3Dカメラにしても良かったが、「通常モード」の方は普通の2Dゲーム的な見た目にしておいた方が壁入り時のインパクトが大きいかなーと思ってそちらのカメラは2Dカメラっぽくすることにした。
で、一般的には2Dゲームのカメラは「並行投影(Orthographic)カメラ」というやつで、3Dゲームのカメラは「透視投影(Perspective)カメラ」というやつなんだけど、壁の出入り時にこの2つの別種のカメラを補間するのはだいぶ面倒。ということで、ここでは3Dカメラ(透視投影)のFOV(画角)を小さくすることで平行投影っぽくしてみた。(3Dカメラでは60度で、2Dカメラもどきでは2度)
ただ、FOVを小さくすると見える範囲も狭くなるのでカメラの位置を大きく後ろに下げてちゃんと一定の広さが見えるようにした。さらにそうすると今度は描画可能な距離範囲(Near〜Far)の範囲外になったりするのでこちらも一緒に変更するようにした。
真上から見る場合や真横から見る場合はこの対応だけで良いんだけど、RPGっぽい表示にする場合はカメラを斜め45度から表示することになり、このままの設定だと縦方向が1/Root(2)に縮小されて表示されてしまう。そこで、さらにレンズ(PerspectiveLens)を継承してupdateMatrixのところで「縦にRoot(2)倍する」感じのAspectRatioを設定して引き伸ばすことで等倍っぽい表示にした。
現状の設定ではここまでの対応で止めているが、プレイヤーの表示がやや潰れているのが気になる場合、いわゆる「ドットバイドット」な感じで表示を調整する必要がある。が、今回はそこまでは気にならないかなーというのとあくまで紹介のための簡易ゲームなのでここまでで止めておいた。
=壁に入った際の表現=
神トラ2(もどき)では壁にプレイヤーを貼り付けて描画する必要がある。単にプレイヤーのPlaneを壁の少し手前に表示するだけだと、壁が直角に奥に曲がっているところでプレイヤーがはみ出てしまう。ということで、専用の対応が必要になる。
当初は「投影マッピング」という手法をとるつもりだったものの、この手法だと他の壁にまでプレイヤーが表示されてしまうのと、ピクセルシェーダの負荷がムダに大きくなってしまう(投影しない壁でも不要なサンプリングが発生する)ので、今回は専用シェーダで実現することにした。
具体的には「普通の描画(壁描画)にもう一つテクスチャ(プレイヤー)を追加し、UV座標のオフセットを外部から指定することで横方向にスクロールさせる」というシェーダを追加した。Away3D的にはEffectMethodBaseを継承したやつにシェーダを書いてそれを壁のマテリアルにaddMethodで加えるだけなので比較的簡単に実装できた。
ただ、全ての壁にこのシェーダを加えるとやはり不要なサンプリングが増えて描画負荷などが大きくなるので、「現在居る壁」と「移動先の壁」だけ上記のマテリアルに変更するような処理を行ったりした。
=遷移部分=
「通常モード」<=>「壁入りモード」ではカメラの「ターゲットとの距離」「FOV」「NEAR・FAR」「AspectRatio」をそれぞれ変化させる必要がある。
当初は「ターゲットとの距離」を等速で変化させ、それに応じて他のパラメータを計算していたが、そうすると画角(FOV)の変化が遠くに行くほどゆるやかになり、画面での見た目がやや不自然な感じになった。
そこで、「FOV(画角)」の方を等速(角速度)で変化させて他のパラメータを計算する方式にした。これでかなり自然な遷移になったが、逆に自然になりすぎたのでもうちょっとSinカーブとかを使って緩急をつけるべきだったかもしれない。
=予定=
次は「ゲーム作成」やら「作曲ツール作成」やらを行う予定。どちらにしても数ヶ月レベルで時間がかかる見込み。
ニャロメロンさんのジャンケンAct(簡易版)を作ってみた
=Flash=
操作は
- 左右キー:移動
- 上キー:ジャンプ
- SPACE:グー・チョキ・パーの切替
- R:リスタート
エネミーを作るのは時間がかかるので作ったのはブロックだけ。「あいこ:普通の壁」「こっちの勝ち:通過可能」「こっちの負け:ダメージエリア」という感じになる。
やっぱりブロックだけだといつもの自分のパズルアクションと同じ感じになるなー。
=予定=
今回はちょっと脱線したけど、今の体調を維持できれば次の火曜あたりにまた簡易ゲーム的なものをUPできると思う。遅くても来週末くらいには。
帰郷メモ
=前置き=
今回も帰郷中にあれこれ遊んできたので一通りメモ。
=パルテナ=
3DSの「2本で1本キャンペーン」でダウンロードして面子がだいぶ揃ったため、いまさらながら一緒に遊んできた。
対人戦の立ち回りもわかってきたし、自分が作りたい武器の方向性も固まってきたので次の帰郷時にまた遊ぶと思う。今回の帰郷中はパルテナの比率が多いかと思っていたけどそうでもなくてまだ普通に遊び足りないのもあるし。
ちなみに試したのは「超誘導」「高速移動」「透明化+見えない射爪」「価値149のダッシュ打撃1乙調整」など。どれも基本的には良かったのだが、付属スキルを色々と調整したくなったので帰郷までにそこらへんを調整していきたい。
=モンハン4=
ネットマルチでプレイはしていたものの、ようやくローカルでも4人プレイなどができた。
ネットではチャットの定型文での遊びなどもあるものの、やはりローカルですぐにやりとりできた方がラクだし楽しかった。特に2体同時討伐系は方針やタイミングの確認がネットでは煩雑だったので、帰郷の際に一通りやり終えた。
そしてマルチ側のクエストは一通り終わってしまったので、自分としてはこれで一段落といった感じ。サポートが必要そうであれば遊ぶと思うが、基本的には次のモンハン(4G?)が出るまではたまにスキマ時間に発掘するくらいになると思う。
=バンブラP=
合奏専用のフリーダウンロードソフトがギリギリ配信開始されたので、(イーショップの混雑問題などはあったが)帰郷時に一緒に遊ぶことができた。
自分を含めてバンブラP本体を持っているのは3人で、それぞれの所持曲数は30・10・10くらいだったと思うが、所持数が少なく見えるわりには一通り遊ぶのにかなりの時間がかかった。
これからもまだしばらくはダウンロードするだろうし、であれば次の帰郷時にも遊ぶ機会がありそう。次は耳コピをいくつか完成させて持って帰りたい。
=ポケモンXY=
ポケバンクが稼働してから対戦しようと思ったので帰郷のタイミングで弟と対戦してきた。
実際にはポケバンクが一時配信停止になってしまったので向こうのチーム構築が少し崩れたりしたみたいだが、なんとか対戦できた。戦績はこちらの「ボロ負け1回、辛勝2回」といった感じ。
現段階での育成は一段落しているけど、ポケバンクが配信再開されたら育成しなおしたいのでその時にしばらくまた遊ぶと思う。
=テラリア=
メンツの都合やらで一人で遊ぶ機会があったのでPS3版を遊んでみた。
まだボスは倒さずにあちこち探索してるだけだけどわりと楽しい。あちこちに拠点を作ったりそれをつなぐ長い連絡通路を作ったり。ただ、wikiを見る限り隕石と連絡通路の相性が良くないのでそこらへんの対応とかするかも。
そんな感じでゆるゆると進め中。次の帰郷時も一人で遊ぶタイミングがあれば遊んでると思う。
=地獄の釜(Auf Teufel komm raus)=
帰郷時にやったボードゲームその1。
中央に裏返っているチップをめくっていき、数字が出たら基準点をプラス&悪魔が出たら基準点が0になり手番終了というなかで、途中で止めるかまだめくるかを考えつつ進めていき、最終的に基準点の高かった人(とめくった枚数の多かった人)にスコアが加算されていくゲーム。
さらに皆がめくる前にベットを行い、誰かの基準点がそのベット以上になったらそのベット分のスコアも加算される。一番高いベットを行った人はさらに倍の加算が行われたりする。
という感じで運の要素も絡みつつ、めくられたチップなどから期待値を求めたり、高いベットの人を蹴落とすためにめくるのを途中で止めたりと意外とあれこれ考えることがあるゲーム。2〜6人まで遊べるのでメンツの数に左右されにくく、わりと思考の負荷が軽いので手軽に遊べてよかった。
=王宮のささやき=
帰郷時にやったボードゲームその2。
6枚の手札を持ち、自分の手番にカードを1枚場に出して、場に6種類のカードを出せばアガリ(スコア+2)というゲーム。ただし、ダブるカードや禁止状態のカードしか出せない時に手番が回ってくるとドボン(他の人たちがスコア+1)となる。また、手番は時計回りではなく「直前に出されたカードの色と同じ色の人」の番になる。
という感じで基本的な構造はシンプルながら、「手札交換などのカードもあるため、初手で6種類あったとしてもすぐにはあがれない」「手札と場の合計が常に6になるようになっているため、場にカードを出すほどに手札は少なくなる=ドボンの確率が上がる」などアガるのが難しくなっており、「手札交換+相手の色と同じ色のカードを出して相手を強制ドボン」など相手をドボンさせる要素は多くなっているため、基本的には「いかに負けないか」を競う感じになると思う。
こちらも運の要素が絡みつつもコンボなどを考えることができ、わりと手軽に遊べるタイプのゲームだと思う。一応、3〜5人で遊べるらしいが、カードを抜いたりするなどの下準備が必要になるかと思うので実質5人でやる感じのゲームになりそう。
=まとめ=
というわけでかなり色んな種類のゲームを遊んできた。モンハンとポケモンが一段落して、パルテナとバンブラPが継続、という感じになりそう。ゼルダも買ったのでしばらくはゼルダメインでそのあとにパルテナとバンブラPに復帰することになるかと思う。
=予定=
体調はようやく中の中付近まで回復したので、今週いっぱいこの体調を維持できたらようやく個人開発をゆっくりと再開しようかと思う。
現状報告
さらにもうしばらく更新しなさそうなので軽く現状報告だけ。
ゲーム作成とかの出力的な趣味のモチベは依然として回復してないので、何かを作って公開するのはまだ先になりそう。
来年からは徐々に忙しさを増していくのもあるので、さらに半年くらいは絵描きとかの学習だけに時間を充てることにした。
いまのプロジェクトが終わってまたしばらく休んだら何か作り始めるかもしれないが、半年先のことなので予定は未定。
現状報告
もうしばらく更新がなさそうなので、軽く現状報告を。
仕事の方は前回のプロジェクトが終わり、一週間の休暇的なものを過ごしたあと、新しいプロジェクトに参加して二週間ほど経ったところ。少なくとも今年いっぱいは負荷の高い作業は来なさそうなので、個人の作業にあてる時間はそこそこありそう。
で、その個人の作業だけど、ゲーム作成を有料アプリ用とかに作るのは一旦やめることにした。広告とかは載せる(あるいは広告ギミックを使う)ことはあるかもしれないが、基本的に「趣味のゲーム開発」と「個人で稼ぐ方法」についてはわけて考えることにした。
というわけで、ゲーム開発は再びただの趣味に戻ったのだけど、趣味である以上はモチベがないとやる意味がなく、現時点ではモチベが微妙なので他のもっとモチベが高いことをやることにした。
当面は「絵描きの練習」と「作曲の練習」を続ける予定。この2つは趣味であると同時に実用性もあるので、なんにせよ続けていく。
そしてもう片方の「個人で稼ぐ方法」については再び振り出しに戻ってあれこれ考えていく予定。いまは3Dプリンタでのネタが1つあるので、実現可能性について調べている段階。主にサイズと価格と強度がネックになるが、とりあえず試作までは進めてみる予定。
といった状況。趣味と開発は分けたものの、ネタ出しの過程でかぶることもあるだろうし、何かゲームのネタを思いついてすぐ作れそうなものだったら作ったりするかも。
夏期休暇メモ(というかドラクラメモ)
=前置き=
いつもの長期休暇中のログ。とはいえ今回はほぼドラゴンズクラウンだったので、そこらへんについて書く。
=ドラゴンズクラウン=
というわけで帰郷中はほぼドラクラ(PS3版)だけやっていた。マルチもソロもできたしインフェルノ(難易度ベリーハード相当)まで行けたし楽しかった。
自分はアマゾンをメインでやってみたのだが、慣れてくると朧村正と似てる部分が見えてきて立ち回りもそこらへんを意識するようになった。朧村正では攻撃ボタンを押した時のレバーの方向に応じてそちらに移動しつつ攻撃するのだが、アマゾンの場合も空中では似たような挙動をする。さらに「攻撃しながら敵の状態を観察し、攻撃されない位置に着地する」といったような立ち回りも似ている。特にアマゾンは前衛の中では打たれ弱いのでそういう回避が重要になってくる。
自分のスタイルは「ザコの集団にはスタンウェイブでスタン効果や凍結効果をばらまいてから攻撃」「ボスには空中回転攻撃でバーサークLVを上げてから地上連撃(無敵技込み)でゴリ押し」という感じ。ただ、インフェルノまで行くと「パリィによる無敵時間の利用」とかも必要になってきそうかなーと思う。ので、終盤ではパリィの練習などをしていた。全体としては、回避キャンセルによってスタンウェイブを連続で出したり軸の調整をしたり、軸の調整時にスタンウェイブを撃つ方向が変わったりしないように注意したり、そこそこ操作が忙しいけどそれが楽しかったりもする。
お宝まわりもよく出来てて楽しい。良い装備が出ても自分のレベルが上がってしまうと相対的に攻撃力が下がってしまうので、しばらく遊んでいるとまた良い武器が欲しくなる。特定の効果を目当てに装備した装備のオマケ部分の効果の良さに気付いたりもする。そういう感じで定期的に「あれこれ考える楽しさ」が発生する。
帰郷中の一週間がっつりやっていたが、サブキャラまで含めてまだまだ遊べる感じ。冬季休暇にまたやるかもしれないが、そっちはMH4に時間を持っていかれるかもしれない。
=予定=
仕事の方がプロジェクト終了まであと1ヶ月半くらいなので、そろそろ個人開発は控える予定。プロジェクトが終わってしばらくしたらまた個人開発を再開する予定だけど、今の感じだと11月くらいになるかもしれない。
とりあえず絵描きの練習とかは続ける予定だし、スマホ用格ゲーの画像の用意くらいはできるかもしれない。あと、このブログに何か適当に書いたりもするかもしれない。具体的な予定は未定。基本的には休養を優先する。