Unity Bolt 1 導入方法

Boltとはなんぞやblogs.unity3d.com

 

プログラムをGUI(グラフィカルユーザーインターフェース)で作成できる機能。

C#スクリプトでやるか、Boltでやるかの違いぐらいかな。

UE(アンリアルエンジン)のブループリントと似ている。

docs.unrealengine.com

Boltの導入方法

f:id:UsiUsi:20200819122950p:plain

・使用2019.4.5f1 最新の2020である必要はない。

f:id:UsiUsi:20200819124049p:plain

・Unityを起動、AssetStoreウインドウからBoltを検索してダウンロード、インポート。

f:id:UsiUsi:20200819124313p:plain

・インポートに成功するとToolsにInstallBoltの項目が追加されるので、実行。

f:id:UsiUsi:20200819124625p:plain

・インポートすると初期設定ウインドウがでる。

f:id:UsiUsi:20200819124729p:plain

・Boltで扱う色々な名称かな。

 右のProgrammerNamingがC#と同じなので、慣れている人はこっちがいいかも。

 左のHumanNamingは正式名称。

f:id:UsiUsi:20200819125155p:plain

・扱う命令の設定かな。そのままNextでいいかと。

f:id:UsiUsi:20200819125822p:plain

・デフォルトに戻すボタンあるから試しにいじったろ。

 と、-で項目消して戻すボタン押しても戻らなかった…どうして。

 触らないほうがいいかも。

 

f:id:UsiUsi:20200819130054p:plain

・完了。Closeで閉じる。

Unity2020.4 UVスクロール

f:id:UsiUsi:20200611104503p:plain

1.画像を用意
2.スプライトだったらテクスチャー(Default)に変更
3.WrapModeをRepeatに変更

f:id:UsiUsi:20200611103658p:plain
画像タイプ

4.Materialを用意
5.Shaderを Unlit/Textureに変更

f:id:UsiUsi:20200611103910p:plain
マテリアル

6.スクリプトを用意

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

public class UVscrool : MonoBehaviour
{
	public float speed = 1;
	float current;

	void Update()
	{
		float scroll = Mathf.Repeat(Time.time * 0.2f, 1);
		Vector2 offset = new Vector2(scroll, 0);
		GetComponent<Renderer>().sharedMaterial.SetTextureOffset("_MainTex", offset);
	}
}

7.Quadを作成

f:id:UsiUsi:20200611104211p:plain
Quad

8.Quadにマテリアルとスクリプトを追加
9.QuadのMeshColliderを削除

PlayerController

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

public class PlayerController : MonoBehaviour
{
	Rigidbody2D rigidbody2D;

	// Start is called before the first frame update
	void Start()
    {
		rigidbody2D = GetComponent<Rigidbody2D>();
	}

	private bool isJumpRequest;

	void Update()
	{
		if (Input.GetMouseButtonDown(0)) {
			isJumpRequest = true;
		}
	}

	public float power = 2;

	void FixedUpdate()
	{
		if (isJumpRequest) {
			isJumpRequest = false;
			rigidbody2D.velocity = Vector3.up * power;
		}
	}
}