アウトドアとかゲーム開発とか

ロードバイクやキャンプなどアウトドアとUnityでの開発とか

Unityでのオプション画面作成メモ

STEEL STRIKERの完成版に向け、オプション画面を作成。
その内容のメモ。

オプション仕様

  • 音量設定:BGM,SE,ボイスで分ける
  • カメラ設定:カメラの上下の操作を逆にできる
  • 旋回設定:旋回時の設定を逆にする

音量設定

オプション画面で音量を変更・セーブし、タイトル画面でロードを行なう。
セーブやロードは「PlayerPrefs」を使用。

セーブについて

PlayerPrefs.SetFloat("BGM Volume", bgmVolume);

一つ目の値にはキーをストリング型で入れ、2つ目の値に保存したい値を入れる。
Float型、Int型、String型の保存とロードが可能。
セーブタイミングはオプション画面を抜けるときに1度行なう。

ロードについて

bgmVolume = PlayerPrefs.GetFloat("BGM Volume", 80);

一つ目の値にはキーを入れて変数へロードする。2つ目の値は、セーブデータがなかった場合のデフォルト値として設定できる(省略可)。
ロードタイミングはタイトル画面。念のためオプション画面でもロードを行なう。

参考

カテゴリ毎の音量設定

通常オーディオの音量を調整する場合は、Audio.volumeを使用して音量調整をするため、散らばったAudio Sourceを登録したマネージャーで制御することを考えた。
ちょっとめんどくさいし何かあるだろうと調べたらやっぱりあった。

Audio Mixerで管理

Audio MixerにBGM、SE、ボイスの3種のグループに分け、Audio Sourceをグループに振り分けておくと一括で音量の調整ができる。
Audio Sourceの音量と干渉しないので、一時的にフェードアウトさせたいときや音ごとに音量の調整をしたいときにも便利。
音量設定のロード時にAudio Mixerへ値を反映するだけで設定が反映されるので非常にラクとなる。

スクリプトでの設定は以下の通り。

audioMixer.SetFloat("BGMVolume", bgmVolume - 80);

ー80 ~ 20の間の値で設定する。

Audio Mixerのグループへの登録漏れがあると反映されないので注意。

参考

シーン間をまたいでもBGMを継続して再生する

シーンごとにBGMのAudio Sourceを設定している場合、同じ曲でも頭から再生されてしまう。
継続して再生させたい場合、BGMのオブジェクトを破壊せずに保持したままにする。
BGM用のAudio SourceのあるBGMのオブジェクトを別オブジェクトとし、

DontDestroyOnLoad (this);

を記述してシーンを遷移してもオブジェクトが残ったままにする。
違うBGMを設定しているシーンに移動する場合はDestroyで破棄すればいい。

このまま使用するBGMのシーンごとにBGMオブジェクトを配置しておくと、シーン遷移ごとにオブジェクトが増えていってしまうため、BGMオブジェクトをプレハブ化しておき、オブジェクトがなければ追加するようにした。

AudioSource BGM;
GameObject bgm;
	
void Start () {
	
	bgm = GameObject.FindWithTag("BGM");
		
	if(bgm == null)
	{
		bgm = Instantiate(menuBGM) as GameObject;
	}
		
	BGM = bgm.GetComponent<AudioSource>();
}

参考

コントローラ設定について

セーブタイミングはオプション画面を抜けたときのみ。
セーブ時にブーリアン型がないのでInt型で保存しておく。
ロードは操作の共通スクリプトの頭で行う。

コミケC90で出展してきた

8/14に開催されたコミックマーケットC90の3日目にゲームを頒布してきた。
おかげさまで開始1時間で持ってった50部がすべて頒布終了となり一安心。

コミケは一度は行ってみたいと思っていたのでゲーム頒布という形で参加してみた。
今回出したのはロボゲー『STEEL STRIKER』の体験版。

f:id:vrcycling:20160814192232j:plain

 ゲーム開発レシピにもロボゲーで書いたけど、ロボゲーを作りたくてUnityを覚えて書籍まで出しちゃったわけで。
VRに寄り道しちゃってたけど本来はロボゲーが作りたくて仕方が無いわけで。
まあVRではじめて作ったコンテンツもロボゲーだったわけだけど。

超Ocufes 総合案内 – Oculus Festival in Japan 03 OcuRobo プロト

てなわけである程度は下地があった段階からコミケ用にBitSummit終わりの1ヶ月をみっちり開発に専念していた。
ゲーム開発レシピからの変更点は、オリジナルロボへの変更や有料アセット(Final IKやエフェクト類)の使用など。動き、モーションの作りも大幅に変更。これらで追加本が書けちゃうかな。

戦利品

f:id:vrcycling:20160814194432j:plain基本的にゲームのみ。本もいくつかチェックしてたのはあったけど、人ごみに耐えられず断念。11時台なら混雑も緩めで買いまわれた。3Dアクションが中心。体験版はDLカードが多かった(ありすのステージが撮れてなかった)。

今回のコミケでの備忘録的なもの

<公式>ホテルサンルート有明│ビッグサイトまで徒歩5分│お台場の隣
絶好の立地条件で朝もゆっくり出来たしすごく良かった。最初はもっと遠くに宿を取ったけどふと見てみたら空いてたのでちょっと割高だけどここに決めて正解。次回あるなら絶対ココ。

コミケ(C90)同人ゲームまとめ動画
何人かの人がコレ見て来たって行ってくれてた。告知大事。Unityのチラシもね。

その他持ち物や買ったものなど

・テーブルクロス 布が安い!生地・手芸の通販【大塚屋ネットショップ】
DISCタイトルプリンター -電子文具- 製品情報 - CASIO
※プリンタブルのCD-Rは不可
カウネット オリジナル POPスタンド T型 法人向け|カウネット
体験版くらいならこの大きさで十分。完成版はもっと大きいのが欲しい。
・丸筒、値札スタンド、モバイルバッテリー、養生テープ、ビニール袋、タブレット、コインケース
・夏限定? USB扇風機、どこでもアイスノン、扇子

だいたい100均でそろった。

・いらんかったもの:布のポケット、小銭トレー、ウェットティッシュ(今回は涼しかったし)

今後

次は完成版へ。結構やり残したことも多い。近接攻撃、チャージショット、武器チェンジ、対戦、コンフィグなど。あとVR対応も。
まずはモデルを完成させねば。時間無くてラフのままでテクスチャすら貼れてないし。
次回頒布は来年夏か冬を予定。
できればDLカードにしたいかな。今回はロムで焼くのも持ち運ぶも大変で50部しか持ってけなくて頒布できなかった人たちも多かったし。

そろそろCD以外の頒布形態も考えよう。Conca(コンカ)が可能にする同人音楽のDLカード頒布 | ありんこ書房

えーでるわいす

BitSummit 4thでVRサイクリングを出展してきた

7/11,12に京都みやこめっせで開かれた『BitSummit 4th』にVRサイクリングを出展してきた。

思えば2回目のBitSummitで初めてOculusRift DK1を体験し、カルチャーショックを受けてVRに傾倒していったので、BitSummitにVRコンテンツで出展するのは感慨深い。

今回のバージョンの目玉としてスズカサーキットと傾き対応の2点をコンセプトとしてみた。ただ今回のBitSummitのように一般人も多い会場ではどちらも不向きだったかな、と最終的には感じた。BitSummitまでには自宅で数人にテストプレイをしてもらった段階でも、スズカサーキット一周はかなり長く、疲労を感じるだろう、ということで念のためショートコースも作っておいた。結果的にこの予想が的中し、当日の朝のセッティング中に別の出展者などにプレイしてもらった結果、すべてショートコースで行こう、ということになった。初日は結構なプレイヤーがバランスを取るのが難しいようでまっすぐ進むことも困難。こちらがハンドルを握ってアシストしないといけない状況が多々あった。2日目は初日の結果を分析し、ハード側の重心の調整、ソフト側の旋回周りを調整した結果、一部ユーザーを除いてほとんどアシストなしでもなんとかゴールにたどり着けることになった。今回の反省点として、やはり現実の自転車とはバランス制御が異なるため、ソフト側でフォローが必要に感じた。今回で言えば最初のシケインが鬼門すぎた。次に展示する場合は急に曲がる必要の無いコースを自作したほうがよさげ。とはいえスズカを走りたい、という自分が作りたいものを作る、というのもインディーズならではのこだわりポイントだと思うけど。慣れれば全然問題ないし。今後はマルチプレイに対応してみたい。たぶん賞があれば確実にいけるだろうし。ただし、もう1セットそろえるにはお金かかりまくるけど。マルチプレイはないかもだけど来月くらいに出展あるかも。

最後にコースモデルの調整をしてくれたKさん、展示を手伝ってくれたMさんに感謝。

記事

“自転車でVR”会場でひときわ存在感を放っていた『VRサイクリング』に試乗してみた【BitSummit 4th】 [ファミ通app]

サイクリング! ドラゴン! スノーボード! 「BitSummit 4th」で気になったVRタイトルをプレイしてみた - 4Gamer.net

【BitSummit 2016】初体験でてんてこまい!自転車にスノーボード、スポーツ体験も超楽しいVRで!|APPREVIEW

PANORA VIRTUAL REALITY JAPAN » 「BitSummit 4th」出展のVRゲームまとめ! ドラゴン、自転車、スパイアクションなどジャンルが豊富

インディーVRゲームピックアップ(前編)【BitSummit 4th】 | Game Deets

VRサイクリング用センサー類のメモ

ジャイロセンサー MPU-6050

Arduino用のサンプルコードを下記からダウンロード

GitHub - jrowberg/i2cdevlib: I2C device library collection for AVR/Arduino or other C++-based MCUs

コンパス HMC5883L

下記を参考にする

HMC5883L三軸デジタルコンパスモジュール - Androciti Wiki

ロボット改修モデリング

コミケも近づいてきたのでマジメにゲームを作るためにロボモデルを改修したのでその過程をまとめ。

ディテールアップ

左が以前作ったモデル。そのモデルにディテールアップとなるポリゴンをざくっと追加。

f:id:vrcycling:20160525002036j:plain

追加したポリゴンはホントに適当。ここでは作りこまない。
あくまでもディテールの密度などバランスを見ながら足したり引いたり。

さらに諸々追加。

f:id:vrcycling:20160525002247j:plain f:id:vrcycling:20160525002312j:plain

TPSのアクションシューティングなので後ろからの視点となるため、ロボの背面をかっこよくするためにスラスターなどを追加。

f:id:vrcycling:20160525002447j:plain

バランス調整。ポーズを取らせた状態でかっこよく見えるように各パーツを拡縮したり。結構雑だけどどうせ作り直す予定なので速度重視で。

ゲーム中でスピード感のある動きをさせたいので、速そうなタイプに。

配色

ディテールアップのラフが出来たので配色してバランスを見る。
配色のバランスによってパーツの追加も必要になるため、ある程度できた段階で色を置いてみる。
下図は決定稿。

f:id:vrcycling:20160525003010j:plain

赤や青などアニメ系ロボのカラーパターンも用意してみたけど、どうしてもオモチャっぽく感じてしまう。兵器に派手な色は必要ない、という考えが払拭できないのもあった。

そもそも塗装はサビ防止や耐熱だったり兵器の場合は迷彩用途だったり。車などは購買意欲を湧かせるためだけど、兵器は一般消費者が買うモンでもないし。
ということでシンプルなモノクロ系にして兵器っぽく。量産機っぽいけど、主人公が最初に乗る機体がいきなりヒーロー機っぽいのもね。設定次第だけど。

以下はカラーパターンの没案。この辺は好みの問題でしか無いと思うけど。

f:id:vrcycling:20160525004332p:plain

この後は作りこんで行く前に一度Unity側に持って行き、構造に問題ないかやポリゴン数が多すぎないかチェックしてから進める予定。

 

 

VRCアワード 一次審査通過の手ごたえ

昨日VRCアワードの一次、二次審査の結果が発表され、「VRサイクリング」が一次審査を通過したということで掲載されました。

VRサイクリングは割りと自身があっただけに、ファイナリストになれなかったのは残念。だけど手ごたえは十分に感じられたので、最初っから狙いに行けばたぶん取れるかなー、とも。
もうちょい賞金とか上がってくれればやる気も出るけど・・・。今の賞金だとファイナリストとしてアワードに行く費用で赤字に。
来年はちょっと狙いにいってみようかな、と。ちょっと周りの手も借りてしまえば可能性はかなり高い。

 

今回は「VRサイクリング」のほか「ふぉとゆに」も応募してみたけど、こちらは残念ながら1次審査にて落選。

ふぉとゆに自体もViveの持ち味を活かしたコンテンツということでそこそこ自信はあったけど、やっぱりインパクトが少し弱かったかなあ。

これまではキャラクターを表示するだけでも新鮮さによって「スゴイ」ってなってたけど、ただVRにしただけという新鮮さは薄れていくのでコンテンツとしての面白さやVRならではの何かがないとこの先生き残れないと思う。
VRの開発環境はかなり整ってきたので、今後は企画面の方が重要になっていくと思うのでプランナーやデザイナーはUnityなり覚えてVRに挑戦して企画力で勝負してほしいとこ。