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

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

ソロキャン持ち物リスト

ちょいちょい忘れ物をするので備忘録としてリスト化

・テント
シュラフ(&シュラフインナー)
・チェア
・テーブル
・ペグ、ペグハンマー
・グランドシート(レジャーシート)
・ランタン
・ヘッドライト
・マット(コット)

・コンパクトバーナー
・ガスボンベ
・トーチバーナー
・BBQコンロ
・着火材
・火吹き棒
・トング(炭用、肉用)
・クッカーセット
・マグ
・カトラリーセット
・ナイフ(キッチンバサミ)
ウインドスクリーン

・タープ
・ランタンハンガー
・ランタンスタンド

・スポンジ
・洗剤

・着替え
・タオル
・サンダル

・アルミホイル
・トイレットペーパー
・ゴミ袋
・ウェットティッシュ

・耳栓

・折り畳みバッグ(買い物、温泉用)

随時更新

冬キャンまとめ

冬キャンしてきた。

昨年9月にバイクを購入し、キャンプでもしようと思ってキャンプ道具を揃え始めていた矢先に『ゆるキャン△』のアニメが始まった。

当初冬のクソ寒い時期にキャンプする予定なんか全く無く、春になったら行こう、と思っていたのが原作全巻読むほどドハマりした影響でキャンプ欲が高まり、1月に冬キャンプを決行した。

1回目 極寒のソロキャン

f:id:vrcycling:20180411215443j:plain

当然冬装備など持っていない状態だったが意外と行けるかもしれないし、一度体験してから買い揃えたい、という思いから自転車旅用に購入していた3シーズン用のテント・シュラフでチャレンジしてみた。
結果は惨敗。スキマ風は入るは暖かさが無いわで凍え死ぬかと思った。
何重にも衣服を着込んで毛布まで被っていたのに寒いと本当にやばかった。所持していたカイロをすべて身体に貼り付けて無事朝を迎えることが出来た。

BUNDOK(バンドック) ソロ ドーム 1

リーズナブルなテントなんだけど狭いのとインナーが下までフルメッシュのためスキマ風がハンパない。
2kgくらいと軽いのはメリット。
設営もインターテントを2本のポールで吊るしてフライシートを被せるだけなので非常に簡単。

モンベル(mont-bell) UL.スーパースパイラル ダウンハガー 800 #3

自転車旅用に買った軽量シュラフだけどコンフォート温度3度は真冬にはキツかった。

このキャンプの教訓としては冬を舐めてはいけない。

2回目 安定のソロキャン

f:id:vrcycling:20180411215532j:plain

テントとシュラフを冬用に変えて再チャレンジ。ペグハンマーなど小道具も揃えた。
ペグハンマーの有無でペグの打ち込みは段違い。小さめのでいいので持っておきたい。

Coleman(コールマン) テント エクスカーションティピ/210

1~2人用のワンポールテント。インナーもフルメッシュではないので冷気をかなりシャットアウトしてくれる。ただしメッシュにも切り替えられるのでオールシーズン使えそう。
ポールが少しジャマなのと重いのがデメリット。
あとはペグを挿さなければ設営できないのでペグがさせる場所でしか使用できない。ペグの数も多く必要なので重めのペグを使う場合は重量もさらにアップ。

モンベル(mont-bell) アルパイン ダウンハガー800 #2 

コンフォート温度0度の寝袋。きちんとモンベルショップへ行って店員に相談して購入。使用した感想としてはあったかいを通り越して暑いくらいに頼もしい寝袋。冬はコレを買っておけば間違いなさそう。

f:id:vrcycling:20180411215632j:plain
B6のBBQコンロ。焚き火台としても使えるのでありがたい。
外で食べる肉はうまいし醍醐味。しかし肉を切るための道具は必須!

ようやくキャンプ道具はひととおりそろった感。

3回目 小豆島キャンプツーリング

f:id:vrcycling:20180411215715j:plain
3度目は3月末にバイク仲間と小豆島へ。
日中は暖かかったが夜はやっぱりまだ寒い。
小豆島の北側は静かで景色もいいのでオススメ。

オートビレッジYOSHIDA | 道の駅 小豆島オリーブ公園 公式サイト

温泉つきのキャンプ場。海岸からも近く景色がいい。
田舎ならではなのか早朝に町内放送が流れるのが欠点?

4回目 潮騒の琵琶湖キャンプ

f:id:vrcycling:20180411215807j:plainそして4度目は6人ほどで電車で琵琶湖岸のキャンプ場へ。
6人中5人はゆるキャン視聴済みメンバー。みんなキャンプ初挑戦で装備も様々。
4月なので完全に暖かいと思いきや寒の戻りで完全に冬。初回の自分と同様装備不足で寒い思いをしたメンバーも。生きててよかった。

ニュー白浜オートキャンプ場

サイトは完全に10数年前のデザインだけどウォシュレットも完備されており設備はまずまず。
琵琶湖が目の前で景色は最高・・・なのだが岸に近すぎて夜中の波の音がうるさくて寝不足。。。
近所に日帰り温泉もあるのでさっぱりできる。

f:id:vrcycling:20180411215921j:plain複数人でのキャンプのいいところはそれぞれがキャンプ道具を持ち寄れること。
鍋とカセットコンロを持ってきてもらえたのでめっちゃ旨い鍋が食べれた。少し食べ過ぎたくらいだったけど。

次回に向けて

ワンポールテントもよかったけどやはり重い、ということでテントを新調。

Weanas テント 2-3人用

届いて自室で設営してみたけど、やはり軽くて広くてよさげ。
軽い分かなり薄いのが少し心配。

THERMAREST ラグジュアリーライト ウルトラライトコット

もうひとつ注文しているのが、しまりんの爺ちゃんも使っていたこちらのコット。
キャンプは快適に眠れるかが非常に重要。マットだけだと少し眠りにくいので新たにこれを導入する。
1.2kgと非常に軽い分かなりお高い。その分の効果があるといいけど。

 

ということで試したいのでまた近々行く予定。
次は山にするか海にするか。

【Unity】放物線を描く射撃をする②

前回の続きの実装編。とりあえずある程度できたのでメモ。
f:id:vrcycling:20180116225308p:plain
↑黄色が放物線の予測線で赤が実際の弾

ただし今回は計算式は使っていないので処理が重かったり融通が利きづらいかも。
ひとまず動いたのでしばらくはこれで、後で修正するかも。

弾の挙動

しばらく(1秒間)まっすぐに飛んで、落下する。

void Update () 
{
	transform.position += transform.forward * Time.deltaTime * speed;		//弾を前進させる
	timer += Time.deltaTime;
	if(timer > 1)
	{
		transform.position += Vector3.up * Time.deltaTime * (1 - timer) * speed;
	}
}

予測線の表示

一定間隔で軌道上にオブジェクトを配置する。

float _interval = 0.02f;	//表示する間隔
Vector3 beforePosition = transform.position;
float timer = 0;

for(int i=0;i<200;i++)
{
	_bullets[i].transform.position = transform.position;
	_bullets[i].transform.rotation = transform.rotation;
	
	//弾を前進させる
	_bullets[i].transform.position = beforePosition + (_bullets[i].transform.forward * _interval * 200);
	timer += _interval;
	if(timer > 1)
	{
		_bullets[i].transform.position = _bullets[i].transform.position + (Vector3.up * (1 - timer) * 200 * _interval);
	}
	
	beforePosition = _bullets[i].transform.position;
}

ベストな角度の取得

ここが結構力業。
上のコードを一定の範囲の角度を1度ずつ変えて、
予測線上のオブジェクトの中から最もターゲットに近いオブジェクトの角度を取得している。
なので角度の範囲が広がれば処理は重くなる。

float bestAngle = 0;
float minDistance = Mathf.Infinity;

//角度を徐々に変えて一番近くに到達する角度をはじき出す
for(int i=360; i>315; i-=1)
{
	transform.localEulerAngles = new Vector3(i, transform.localEulerAngles.y, 0);

	★上記の予測線のコード
	
	foreach(GameObject gos in _bullets)
	{
		float dist = Vector3.Distance(target.position, gos.transform.position);
		if(dist < minDistance)
		{
			minDistance = dist;
			bestAngle = i;
		}
	}
}

transform.localEulerAngles = new Vector3(bestAngle, transform.localEulerAngles.y, 0);

ちなみに予測線は確認用に表示するだけで実際は表示しない。
ひとまずここまで。
よいこのみんなはちゃんとけいさんしような。

【Unity】放物線を描く射撃をする①

ターゲットに対して放物線を描いた弾を発射できるようにしたい。

2018年1月時点で開発中のロボゲーでは、『まっすぐに進む』もしくは『ホーミング』の2種類が飛び道具の主な行動パターン。

プレイヤーからの攻撃および敵からの攻撃に放物線攻撃を追加したい。

f:id:vrcycling:20180111231118p:plain

富士総合火力演習がとても良かったので再現したい!

・弾の基本的な挙動

一定距離(時間)まではまっすぐ飛び、以降は重力により放物線を描き落下する。
最初のまっすぐ飛ぶ距離を『通常射程距離』と仮称する。

f:id:vrcycling:20180111233032p:plain

ここまでは特に問題なく実装はできる。
ちなみに自作ロボゲーではUnityの重力は使っていないのでちょっとずつ落下速度を終端速度まで上げる。

・エイミング

ターゲットが射程距離内の場合はまっすぐターゲットをエイムする。

f:id:vrcycling:20180111233236p:plain
射程距離外の場合は落下開始から地面に到達するまでの飛距離を加味してマズルを上に向ける。

f:id:vrcycling:20180111233440p:plain

やりたいのはここ。

尚、自由落下中でも到達しない距離の場合は最大距離の角度で発射する、もしくはそもそも撃たない(ロックオンしない)。

・参考情報

とりあえず参考になりそうな情報を探す。

Flashゲーム講座&ASサンプル集【狙撃の計算方法について】

矢を放物線状に飛ばしたい(2D 重力無視) - Roba Memo - 素人のUnity覚書と奮闘記

【Unity】落下地点の座標から、放物線の方程式を求める - おもちゃラボ

【Unity勇者の奮闘記】Unityで物理の勉強3(弾道予測線を作成する) - Unity勇者の冒険の書

 

実装は次回

【Unity】Windows Mixed RealityのモーションコントローラをUnityで使う【WinMR】

Windows Mixed Realityのモーションコントローラの開発機が届いたのでセットアップしてUnityで動かしてみました。

f:id:vrcycling:20171008185054p:plain

■セットアップ

https://developer.microsoft.com/en-us/windows/mixed-reality/install_the_tools

【翻訳】Motion controllers - 戯言日記

Windows Insider Progoram の設定で引っかかったので補足。
下記のように設定すると最新のWin10のOSビルドになります。

f:id:vrcycling:20171008185452p:plain

10/10更新 【重要】で下記メールが来たので注意してください

~~
We are reaching out to you regarding an important change to your development environment for Windows Mixed Reality. Please follow the instructions listed below today!


Soon, developers using the Windows Insider Fast Ring will receive early RS4 updates, which may not provide the most stable builds for mixed reality development. To continue your development uninterrupted, please switch your Windows Insider settings.

Instructions for switching:
1. Open Windows Settings
2. Select "Update & Security"
3. Select "Windows Insider Program"
4. In the "What kind of content would you like to receive?" drop-down menu, select "Just fixes, apps, and drivers"
5. In the "What pace do you want to get new builds?" drop-down menu, select "Windows Insider Release Preview"
~~

Windowsのバージョンアップが終わったらコントローラのペアリングをします。
電池を入れるところの下にあるのでカバーを外してペアリングします。

f:id:vrcycling:20171008190030p:plain

Mixed Reality ポータルで確認できれば準備完了です。

■Unityのバージョンの設定

Unity2017.2.0f2 で動作確認できました。

Unity - Unity - Beta Archive
※2017.2.0b6ではUnityが反応しなくなりました

設定は下記を参照してください。

Windows Mixed Reality Headsetで自作コンテンツを動かす with Unity - tks_yoshinagaの日記

■Unityでコントローラを使う

下記を参照

Gestures and motion controllers in Unity

■コントローラ位置の取得

Vector3 leftPosition = InputTracking.GetLocalPosition(XRNode.LeftHand);
Quaternion leftRotation = InputTracking.GetLocalRotation(XRNode.LeftHand);

で位置と回転を取得できます。LeftHandをRightHandに変えれば右手が使えます。
スクリプト冒頭に using UnityEngine.XR; が必要です。

■入力の取得

入力についても上記ページに記載されてるとおり、インプットマネージャーから各Axisを設定して使用します。
ただひとつひとつ設定するのはめんどくさいので、MixedRealityToolkitからインプットマネージャーを引っ張ってきます。

GitHub - Microsoft/MixedRealityToolkit-Unity at Dev_Unity_2017.2.0

InputManagerの設定を再利用する - Unityな日々(Unity Geek)

あとは通常のAxisやButtonの取得と同じです。

Debug.Log( Input.GetAxis("CONTROLLER_RIGHT_STICK_HORIZONTAL") );

こんな感じです。

※Unityのプレビューでうまくコントローラの値が取得できないときは、コントローラのWindowsボタンを押しポータルに行ってから戻ってくる(ウインドウを選択する)と取得できるみたいです。

とりあえずこれでコントローラの位置や入力が取得できたのでViveやRiftのコンテンツが移植できるはず・・・なのでひとまずここまで。

【Unity】C92 夏コミのゲームで使ったアセットたち

この記事は「Unity アセット真夏のアドベントカレンダー 2017」の8/24の記事です

コミックマーケットC92に参加してきました。
頒布したのはロボットアクションゲームの『STEEL STRIKER』体験版。

f:id:vrcycling:20170819203954p:plain

C92 東こ-39a STEEL STRIKER - YouTube

alweiがC92で買った同人ゲームをひたすら実況プレイする - YouTube

おかげ様で全部ではないにしろ多くの方に頒布できました。
というわけで現在までに使用している有料アセットをさくっと紹介します。
※無料アセットは試せるので割愛します。リストを参照してください
STEEL STRIKERは自著である『Unity5 ゲーム開発レシピ』がベースになっています。
書籍のサンプルでは有料アセットを使用しないで作ったので演出など多く制限されてしまいました。ゲーム開発レシピを読まれた方にも参考になれば幸いです。

■モデル

プレイヤーなど2足歩行ロボはストアにないため自作しましたが、敵ロボや背景などはいくつかアセットを使用しています。

 
オススメ度:★★★★☆
高クオリティなロボモデル。14種類のアニメーションもついているのでとても使いやすい。

f:id:vrcycling:20170823010346p:plain
ハイポリ(左)、ローポリ(→)の2種類あるのもうれしい。

 
オススメ度:★★★☆☆
ミサイル砲台として使用したモデル。

f:id:vrcycling:20170823011153p:plain射出口が1~9までの段階の砲台やミサイルモデルも含まれている。SEもついていて10$はお買い得!

 
オススメ度:★★★☆☆
友軍タンクとして使用。シリーズが色々あるのでそろえたくなる。

f:id:vrcycling:20170823011654p:plain


オススメ度:★★★★☆
市街地ミッションで使用。雰囲気は結構いいのだが、メッシュが結構まとめられちゃってるのでビル単位で破壊とかは難しい。

f:id:vrcycling:20170823011909p:plainマップ全体はこのような形。並べにくいので端の方が見えないようにフォグで隠した。

f:id:vrcycling:20170823012037p:plain


オススメ度:★★☆☆☆
宇宙船内モデル。Heavyって書いてあるだけあって激重。シーンを開くのも少し時間がかかってしまう。
品質には問題なし。ドアなどもプレイヤーが近づくと勝手に開いてくれる仕掛けつき。
コリジョンはメッシュコライダーではなくボックスコライダーを組み合わせている。この部分はちょっと使い勝手が悪い面もあった。 

 
オススメ度:★★★☆☆
数種類のTerrainが入っている。火星っぽいのと砂漠を使用。
軽量で使い勝手もよかった。

 
オススメ度:★★☆☆☆
アイテム収集ミッションで使用。単純な形状なので自作も出来るが時間もなかったし安いので購入。作るか買うかの判断って重要。

■エフェクト

エフェクトはいつかは自作したいけど・・・難しい。

 
オススメ度:★★★★★
SF系の弾エフェクトはコレ!様々な種類の弾エフェクトがセットになっていて手放せないアセット。

f:id:vrcycling:20170823012751p:plain
弾エフェクトだけではなく着弾、マズルフラッシュなども充実。
さらにSEもあるので探す手間も必要ないといいことずくめ。買うべし!

 
オススメ度:★★★☆☆
ビーム系のエフェクトが色々入っている。コミケ1週間前に演出強化のため急遽購入。ラスボスのレーザー攻撃で使用。

  
オススメ度:★★★★☆
たった1種類のビームエフェクトのみ。しかしこのエフェクトの魅力はハンパない。巨大ロボの極太ビームで使用。


オススメ度:★★★☆☆
ブレードの軌跡をなめらかに描画できるトレイル。Unity5.4.1のトレイルはカクカクだったのでこちらを使用。

f:id:vrcycling:20170823012935p:plain
空間を歪ませる系のマテリアルもあり。

  
オススメ度:★★★★★
ヒートヘイズ=陽炎。熱による空間の揺らぎを表現するアセット。

f:id:vrcycling:20170823013040p:plain
プレイヤーのバーニアの陽炎として使用。仲間内でも結構評判がいい。TPSは後ろが重要なのでワンランクアップのお供に。
※ただしUnityの新しいバージョンでちらっと開いたときにおかしくなってたかも?

 ■GUI


オススメ度:★★☆☆☆
文字のアニメーションをさくっとつけてくれるアセット。
選択によって変化する文字の視線誘導目的で使用。

【Unity】テキストをぴょんぴょんさせたりフェードしながら表示する、Typeface Animator - テラシュールブログ


オススメ度:★★★☆☆
uGUIのアルファマスクを使用したところ、斜めや曲面のエッジがジャギジャギになってしまっていた。こちらを使用することでエッジを滑らかにしてくれる。

f:id:vrcycling:20170823014732p:plain
左がuGUI標準マスクで右がSoftMask。
円形ゲージや平行四辺形ゲージに適用してみた。
最新バージョンのuGUIもジャギジャギなんだろうか・・・。

■その他

そのほかのアセットたち。
 
オススメ度:★★★★★
もはや多くを語る必要なしの定番アセット。
銃口を敵に向ける際に使用。これを入れておかないと弾が自然に飛んでかないので。

Final IKでターゲットへのエイム設定 - ロードバイク時々ものづくり


オススメ度:★★★★★
配列をInspector上でD&Dによる入れ替えができる夢のようなアセット。

f:id:vrcycling:20170823013919p:plain
リスト化していたミッションをD&Dだけで簡単に入れ替えられる。めちゃくちゃ楽!
下記必見。

【Unity】Inspector をカスタマイズするエディタ拡張用アセット「Odin - Inspector and Serializer」を64件の記事に分けて紹介 - コガネブログ


オススメ度:★★★☆☆
カットシーンを作れるアセット。時間がなくて1ミッションしか対応できず。新しいUnityだとタイムラインが入っているのでもしかしたら使わなくなるかも・・・。

【Unity】Timelineエディタでムービーを作ってみた - おもちゃラボ


オススメ度:★★★★★
とてもたくさんのスカイボックスが収録されていてこのお値段!
とりあえずコレだけ買っておけば大体のゲームに対応できるので超お買い得!

■まとめ
無料アセットも含めて使用したアセットのリストはコチラ。

https://www.assetstore.unity3d.com/jp/#!/list/54975-steel-striker

ここまでで合計406.49ドル。
買ったけどイマイチだったアセット、使いこなせなかったアセット、習得する時間がなかったアセットも割とあるので実際はもう少し増えます。
セールで買ったものも多いので実際のトコはよく分かりません。
ただ自作してたら高クオリティのゲームは作れないのでこれからもアセットストアは活用していきたいところ。
その内自作アセットを公開してみたいけど。日本のアニメチックな二足歩行ロボがなかったのでねらい目かな?

Unity アセット真夏のアドベントカレンダー 2017」の明日の担当は
やのせんさんの「Camera Projecterで球面ディスプレイに360度画像を表示する。」です。

C92 同人ゲーム感想(短めのだけ)

・カニのケンカ 体験版
Ace of Seafoodのぬっそさんの新作。
カニを操作してカニを倒すゲーム?今回はカニ一匹だけ。
独特な操作性でカニを動かせるのがいい。
カニのハサミで敵を攻撃してダメージを与えるのだが
そのあたりの判定やバランスは調査成虫かな?
ハサミを前にずっと出しているだけで簡単にクリアできてしまった。
SEがないのがやや残念。あと腕とか取れてほしい。

f:id:vrcycling:20170812222015p:plain

・IsuSimulator 体験版
イスを操作する3Dシューティング。グラフィックがキレイ。
やはり3Dシューティングは上下回転はリバース設定のオプションがほしい。
スピード感があっていい。
被弾やヒットの反応がないので手ごたえが分からない。敵にHPゲージがほしいかな。

f:id:vrcycling:20170812222252p:plain

・ありすのステージ マカロン☆アンコール
デレステぽいリズムゲーム
歌とモデルがかわいいので体験版に引き続き購入。
やっぱりカワイイのだが、表情がないのが惜しい。
あとボリュームが少ない。
操作がやっぱり難しい。4ラインくらいのほうが・・・

f:id:vrcycling:20170812222356p:plain

・Blue Gunner 体験版
探索系3Dシューティング。
細かい動きやプレイアブルチュートリアルがしっかりしている。
きちんとゲームになっているので後はボリュームだけっぽい。
ショットガンとか武器増えてほしい。
ちょっとブルームや被写界深度設定が効きすぎているのが気になった。
後ボス戦で弾切れして詰む。弾数制限が厳しいのでヘッドショットで大ダメージとかドラム缶狙えばまとめて倒せるとか弾を節約できるギミックがほしい。
操作は慣れればサクサクプレイできるようになったけど、やっぱり3Dシューティングは上下回転はリバース設定のオプションがほしい

f:id:vrcycling:20170812222858p:plain