Fjord Boot Camp(フィヨルドブートキャンプ)のマスコットキャラ、ピヨルドの絵がなぜか増えていました。

https://gyazo.com/c8d310d062d94277f204b40fd09e64d8

https://gyazo.com/5f653093a9a12bf03c4ba6a74ddbc9a7

尊敬するミュージシャン:イングヴェイ・マルムスティーン(祖先がバイキングだと言ってるから)

という設定を考えたんですが、使いどこないですね。

ブートキャンプなので、プログラミングを教える鬼教官的なイメージで、生徒の間違った発言にはマサカリもといウォーアックスを投げつけます。(今考えた)

https://gyazo.com/4af661c3498247bc9f760168f0fd7dac

256インターンからFjord Boot Campに変わったEラーニングサービスですが、リモートからの学習者同士でのコミュニケーションを活発化させるためにSqwiggle的な機能をつけました。

https://gyazo.com/b29556a335fab286a499718e5d17984a

Fjord Boot Camp

Sqwiggleサービス終わっちゃったしね・・・。

Sqwiggle が良いという話、またはリモートでアジャイル開発をどう進めるか - naoyaのはてなダイアリー

実装の際にはWebRTCの鬼であるgtk2kさんにTwitter経由で死ぬほどお世話になりました・・・ありがとうございます。

今回はEラーニングのさまざまな機能との連携が考えられるので実装しちゃいましたが、Sqwiggle難民の方はソニックガーデンのRemottyとか良いと思います。

使って1年ほどたちますが、タイムズのカーシェアリングサービスのカープラスはクッソ良いという感想になりました。

カーシェア&レンタカー|タイムズカー(Times Car)

よさ1

ステーション(借りれる場所)がなまら多い。

世田谷区の中国とも呼ばれる千歳烏山ですら歩いて10分以内に7箇所ぐらいある。

よさ2

ダブルナイトパックが貧乏人の味方。

時間帯によって安くなるんですが、ダブルナイトパックという18時から翌9時までの15時間がなんと2580円。

15時間借りて2580円てありえんの?

我が家では奥さんの実家に盆暮れ正月に車で出かけるのですが、必ず18時以降に出かけてます。

15時間みっちり使うことはありませんが、1時間借りようが15時間借りようが2580円なので常に全開で借ります。レンタカーは兎に角返す時間が気にかかるのがストレスだったのでこの開放感はすごい。

よさ3

メンテいらず

ガゾリンは車についてるカードを使って提携スタンドで無料(借りる料金に含まれてる)で入れられるし、車検がどーとか、洗車がどーとか面倒なこと一切無し。

よさ4

スマホで簡単に予約でき、レンタカー屋で、

「お金払えばOKなのに何でかならず満タンにして返してくださいって言われるんだろう?」

とモヤモヤせずにすみます。

その他

レンタカーには文句がいっぱいあるんですが、レンタカーと比較するからか、カーシェアには文句は一切ありません。

絶賛していますが、そもそも車を使う時といったらIKEAに行くときぐらいなのでそこまで活用できてません。

少なくとも都心では経費カーシェア&経費タクシーの組み合わせが一番ラクなように思います。

PS4のHDDを500GBからSeagateの2TBのに交換しました。

これまで外付けHDDを使ってましたが、HUB経由だと動かないし、PS VRを使うとなると全面からコードがごちゃごちゃになるので内蔵HDDを交換しました。

2.5インチHDDならなんでもいいわけじゃなく、厚さが9.5mm以下じゃないと駄目なところがちょっと注意しなきゃいけない点でした。

https://gyazo.com/b15738278b03d621168e1b147e8d9b47

HDD交換はプラスドライバーだけでかんたん。

https://gyazo.com/b8ca4d6d081e3f83b0d068ee85420e9c

USBにOSを入れておいて初期化。

https://gyazo.com/fd1eda02de8443168626482682e2175d

とってもかんたんだしHDDも安いので少ない容量モデルを買って交換がお得っぽいです。

セーブデータはPlayStation Plusに入ってればネットにバックアップされてるので、ダウンロードすればOK。

現在やってる地球防衛軍5をダウンロードして完了。とっても快適です。

もぐらが叩かれたときに★マークをパーティクルで飛ばすようにしました。

パラメーターのちょっとした変更だけでいろんな効果が作れるパーティクルはすごいですね。これはGUIならではの便利さと言った感じ。

そして得点を保存してランキング表示するようにしました。

PlayerPrefsというやつに保存しています。(iOSのNSUserDefaultsみたいなもん?)

PlayerPrefsはListとかは保存できないのでJSONにしてstringで保存。

これでもぐらたたきの課題としては一通り実装という感じかな?次は3Dを使ったものを作ってみたい。

soundflowerを使うことでQuickTime Playerで音声も取り込めるようになったので音入りで動画を取れるようになりました。

ただ、スクショみたいにアクティブなウィンドウを選択するとそのサイズがキャプチャされて欲しいがやり方がわからない。できないのかもしれない。

叩かれた時のモグラアニメーションやハンマーの効果音を追加。叩かれた時に★が散るようなパーティクルを付けたい。

それにしてもAnimatorの機能はすごい。GUIは少し迷ったけど、キャラの状態と各種アニメーションを紐付ける設計はわかりやすい。しかしExitは何なんだろう?別にExitに紐付けなくてもそこで終わるからどういう時に使うのかがわからなかった。

ゲームの点数など、ゲーム全体のデータはどうやって保存すべきか迷う。現在はとりあえず適当なクラスのpublic static変数に点数を保存してます。

次は点数を永続化してランキング表示をやる予定。

課題ゲームとしてはそれができたら一段落かな?

コードで動かしていたもぐらをAnimatorの使い方が分かったのでそちらで動くように変更。動きの試行錯誤はやはりタイムライン上の方がやりやすい。

次に出てくるまでの秒数をランダムにすることでゲームっぽくうごかしているんだけど、無茶な出方する場合があるので、こういう場合はどう制御するのがいいんだろう。

次はもぐらに当たり判定をつけたいです。

弊社(フィヨルド社)は今年のはじめぐらいからプラスビジョン社とオフィスをシェアしています。

この度、遂にSwitch用のRAPが二台揃い(一社一台)、ウルトラストリートファイター2環境が整備されました。

@bluerabbit777jpと、日々Youtubeなどでスト2勉強に励み、コソ練に励んでおります。

スト2の腕に自信のある方、弊社まで遊びに来てくださいね。

https://gyazo.com/98748dee6ec70a5b989a9057d6d0b530

弊社を訪れる方に、

「スト2できますか?」

と聞くと、30代はたいていできます。

20代はやったことない人が多いです。

その代わり20代は殆どがマリオカートがクッソ上手い。2D(SFC)しかマリオカート経験がない我々はボコボコにされます。

unityの勉強でもぐらたたきを作っております。

進捗は下記。

Webとゲームはよく出てくる用語も違いますね。Spriteぐらいは聞いたことあったけど、Maskとか発想がなかったんですが、教えてもらって上下するモグラを隠すMaskを追加することができました。

あと丸いタイマーをつけました。

Prefabというやつがいまいちわかってないです。クラスとインスタンスの関係に似てるようにおもうんだけど、Unity全体に渡って(Prefab自体も)どれがクラスでどれがインスタンスにあたるのかがイマイチわかっておりません。

次はランダムにもぐらが出てくるというのを作りたいです。

Unityのお仕事するかもなので、もぐらたたきゲームを作ってみようという課題をいただいて夜と土日を使って勉強しています。

using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class MoleGenerator : MonoBehaviour {
    public GameObject molePrefab;
    public float diff = -2.28f;

    GameObject mole1;
    GameObject mole2;
    GameObject mole3;

    Vector3 startPosition1;
    Vector3 startPosition2;
    Vector3 startPosition3;

    void Start () {
        mole1 = Instantiate (molePrefab) as GameObject;
        startPosition1 = new Vector3 (-6.02f, -3.51f, 0);
        mole1.transform.position = startPosition1;

        mole2 = Instantiate (molePrefab) as GameObject;
        startPosition2 = new Vector3 (0.2f, -4.31f, 0);
        mole2.transform.position = startPosition2;

        mole3 = Instantiate (molePrefab) as GameObject;
        startPosition3 = new Vector3 (6.13f, -2.16f, 0);
        mole3.transform.position = startPosition3;
    }

    void Update () {
        Debug.Log (startPosition1.y);
        Debug.Log (mole1.transform.position.y);
        Debug.Log (startPosition1.y - mole1.transform.position.y);

        if (startPosition1.y - mole1.transform.position.y > diff) {
            mole1.transform.Translate (0, 0.08f, 0);
            mole2.transform.Translate (0, 0.08f, 0);
            mole3.transform.Translate (0, 0.08f, 0);
        } else {
            mole1.transform.Translate (0, -0.08f, 0);
            mole2.transform.Translate (0, -0.08f, 0);
            mole3.transform.Translate (0, -0.08f, 0);
        }
    }
}

もぐらが上にスーっっっ。

一定以上上にいったら下がるってやらないと。

同じもぐらが3匹いるからクラスにしたら良さそうですね。

後は、PCの性能に寄らずにスピードを調整したい。

さらに穴から出てくるまで隠しておく的なのはどうやるんだろう。