『Unity5ゲーム開発レシピ』「Part02 応用編 Chapter04 ユーザーインターフェースを工夫する」 学習記録

Unity5ゲーム開発レシピ ハマるゲーム制作のノウハウ

Unity5ゲーム開発レシピ ハマるゲーム制作のノウハウ

序文

『Unity5ゲーム開発レシピ』23日目。

昨日はいろいろ不具合が出ていてPCをリセットした結果、当然ながらRailsアプリとかを再構築する必要に迫られて、そっちの対応にかかりっきりでした。

あらためてrails db:migrateとかかけてみると、マイグレーションファイルが矛盾だらけで全然通らなくなっててそりゃもう酷い有様でした。笑
全然、Railsの利点を活かせていない…

話題(もはや常識?)のDockerとか使えばこういうのも簡単に復元できるんですかね。
全然知らないんですけど。(仮想マシンの代替になる技術なのかな?ぐらいの認識)

それも勉強したいんですけど時間が…。
本職として最新の技術追いかけ続けてる人たちって私からすると本当にスーパーマンみたいにしか見えないです。

進捗

(学習時間:2日?)

コード実装部分

\Chapter1\PART02_CHAPTER03\017\before\dungeon\assets\Scripts\LocalizeImage.cs

using UnityEngine;
using UnityEngine.UI;
using System.Collections;

public class Life : MonoBehaviour
{
    // 残りHP
    public float life = 20f;
    // 最大HP
    public float maxLife = 100f;

    // スライダーUI
    public Slider meterPrefab;
    // 表示位置調整
    public Vector2 offset; 

    Slider meter;

    void Start ()
    {
        // HPゲージを生成し、
        meter = Instantiate (meterPrefab) as Slider;
        // Canvasの子オブジェクトに設定
        meter.transform.SetParent (GameObject.Find ("Canvas").transform);
    }
    
    void Update ()
    {
        // HPゲージの位置をキャラクター位置を基準に調整する
        meter.transform.position = Camera.main.WorldToScreenPoint (transform.position) + new Vector3(offset.x, offset.y);
        // HPゲージの量を指定
        meter.value = life / maxLife;
    }
}

実行結果

f:id:yjkym:20180706140757p:plain

感想

やったこと。

  • ゲーム画面の縦横比を固定する仕組みの実装
  • キャラクターにライフゲージを表示する仕組みの実装

他にタッチで操作できるバーチャルパッドとかゲームパッドに対応させるとかいう項目もあったんですが、まだモバイル対応できてなかったり、使わないかなーと思ったりで飛ばしました。

ちょっと内容がニッチすぎるかなーという気がしないでもないですが、私の応用力や想像力がないだけかもしれませんぬ。

カロリーメイトください。

BGM

ストロボ / つしまみれ

www.youtube.com 一瞬、メジャーにいたころのつしまみれさん。今日ワンマンライブ行くぞ。