素人のUnity学習日記 その5

Unity 1週間ゲームジャムに参加

6月4日0時にテーマ発表で6月10日20時に公開。
テーマはぎりぎり。
初心者の私のテーマはやってないことをやりつつゲームを完成して公開すること。

新しくやったこと

PlayerPrefsを使ってハイスコアを実装。
シーンをまたいでハイスコアの表示にはstaticを使用。
PlayerPrefsの部分を抜粋

  public const string highscorekey = "HIGH SCORE";
  public static float highscore;
  float timer_score;
 //ハイスコア記録
    void SaveHighScore()
    {
        if (timer_score > highscore) //スコアがハイスコアをこえたら
        {
            highscore = timer_score;

            PlayerPrefs.SetFloat(highscorekey, highscore);
            PlayerPrefs.Save();
        }
    }
  //ハイスコア消去
    public void DeleteHighScore()
    {
        PlayerPrefs.DeleteKey(highscorekey);
        highscore = PlayerPrefs.GetFloat(highscorekey, 0);
    }


アニメーションを設定して使ってみた。
f:id:kanabun500kanabun:20180614175408g:plain
f:id:kanabun500kanabun:20180614172934p:plain


投稿した作品がこちら
走るキツネ | 無料ゲーム投稿サイト unityroom - Unityのゲームをアップロードして公開しよう

次はAssetを使って音をつけたりしてゲームらしさを追加したいな。

ユニティちゃんピクセルアートパックをUnity 2017.4.0f1で使用

『コーゲンシティ・オールスターズ!』ユニティちゃんピクセルアートパック for アクションゲーム Vol.2

Unityで2Dアクションゲームを作成時に利用させて頂いたデータです。

『コーゲンシティ・オールスターズ!』ユニティちゃんピクセルアートパック for アクションゲーム Vol.2 - ダウンロード - UNITY-CHAN! OFFICIAL WEBSITE

 

 

環境 Unity 2017.4.0f1

で使用した場合エラーが発生したので修正箇所のみ抜粋

SpriteAnimationClipEditor.csとSpriteAnimationTimeControl.csの

 

Types.GetType("UnityEditor.AnimationClipEditor", "UnityEditor.dll");

 

の部分を

 

System.Reflection.Assembly.Load("UnityEditor.dll").GetType("UnityEditor.AnimationClipEditor");

 

に書き換える。原因は旧形式のためエラーが発生。

 

 

素人のUnity学習日記 その4

チュートリアル

今回は2Dシューティング。
nn-hokuson.hatenablog.com

チュートリアルは縦シューティングだったので横シューティングで作成。

チュートリアル(2Dシューティング) | 無料ゲーム投稿サイト unityroom - Unityのゲームをアップロードして公開しよう
f:id:kanabun500kanabun:20180531212957j:plain

タイマー機能はこちらを参考にしました。
gametukurikata.com

unityroomへの投稿方法

unityroomへの投稿方法

まずはWebGLでビルドする。
blog.naichilab.com
エラーが発生してビルド出来なかったが下記リンクにある通りに全角が含まれてたパスを半角のみにしたらビルドエラーがなくなりました。
study.tuffyz.com

WebGLでビルド出来たらツイッターアカウントでログインしてunityroomで投稿。
blog.naichilab.com

素人のUnity学習日記 その3

チュートリアルその2

玉転がしのチュートリアルです。
Home · unity3d-jp/FirstTutorial Wiki · GitHub

上記の玉転がしを参考に
ステージを傾けて玉を転がしゴールを目指す脱出ゲームを作成。
ステージを傾けるスクリプト

void Update ()
    {
        float horizontal = Input.GetAxis("Horizontal");
        float vertical = Input.GetAxis("Vertical");
        float angle = 30;
        transform.rotation = Quaternion.AngleAxis(angle * horizontal, Vector3.back) * Quaternion.AngleAxis(angle * vertical, Vector3.right);

    }

傾くスピードが速いので遅く変更。

void Update ()
    {
        float speed = 10f;
        float horizontal = Input.GetAxis("Horizontal");
        float vertical = Input.GetAxis("Vertical");
        float angle = 30;
        float step = speed * Time.deltaTime;
        transform.rotation = Quaternion.RotateTowards(transform.rotation, Quaternion.AngleAxis(angle * horizontal, Vector3.back) * Quaternion.AngleAxis(angle * vertical, Vector3.right),step);
       
    }

f:id:kanabun500kanabun:20180519171642p:plain
unityroomにあげています
https://unityroom.com/games/meirohajimete

素人のUnity学習日記 その2

バージョン  :Unity 2017.4.0f1

使用言語   :C#

コードエディタ:VisualStudio2017 Community

忘れないうちにUnityのバージョン等をメモ。

 

チュートリアル

一番最初にやったチュートリアルです。

[超初心者向け]Unityチュートリアル「はじめてのUnity」のブロック崩しと同等をC#で::(1)ステージ配置 - Qiita

1~6まであります。

途中ででてくる見といたほうがいいリンク。

[超初心者向け]やっと納得、Unityを初めて触ると出てくるC#の何だあれの答え - Qiita

 

 

チュートリアルの続きです。2パターンあります。

1つ目

PrefabとInstantiateの基本(1)ブロックをScriptで配置:「はじめてのUnity」のブロック崩しを改造しながら学ぶ - Qiit

 

2つ目 

【Unity】スコアの表示:「はじめてのUnity」のブロック崩しを改造しながら学ぶ - Qiita

3次元配列がでてきたので

多次元配列 (C# プログラミング ガイド) | Microsoft Docs

 

自分でも改造してみました。

立体にしてみたブロック崩し

f:id:kanabun500kanabun:20180508234232p:plain

 

素人のUnity学習日記 その1

Unityはじめました

というわけでUnityの学習履歴を残すために日記をつけていきたいと思います。

 

ダウンロード・インストール

無料版のUnityPersonalを下記からダウンロード。

https://unity3d.com/jp/get-unity/download

使用目的がVRChatの場合はバージョン5.6.3p1を下記からダウンロード。

https://unity3d.com/jp/unity/qa/patch-releases/5.6.3p1

 

インストールは下記を参照しました。

Unity 2017 をインストールする

 

学習スタート

Unityアカウントを作ってUnityを開始。

まずは基本操作に慣れるためにドットインストールさんの講座を見ました。

https://dotinstall.com/lessons/basic_unity