283 Views
August 25, 20
スライド概要
Unityユーザーであればダウンロードして使用することができるようになったビジュアルスクリプティングシステムのBolt。実際にRoll a Ballチュートリアルをベースにいろいろ使って解説します。
リアルタイム3Dコンテンツを制作・運用するための世界的にリードするプラットフォームである「Unity」の日本国内における販売、サポート、コミュニティ活動、研究開発、教育支援を行っています。ゲーム開発者からアーティスト、建築家、自動車デザイナー、映画製作者など、さまざまなクリエイターがUnityを使い想像力を発揮しています。
ユニティ・テクノロジーズ・ジャパン合同会社 荒川 巧也
内容 1.BoltをAsset Storeからダウンロードして追加する 2.Boltの基本的な設定 (とりあえず使ってみる) 1回目 1.~4. 3.ステージの配置 4.ヒヨコを動かす (アニメーション切り替え含む) 5.追従カメラ追加する 6.Item追加する 7.UI追加する 8.Navimeshを使う 9.カスタムイベントの作成 2回目 5.~9.
本日はこちらの続きになる Youtube : https://www.youtube.com/watch?v=wmbrJC-z2TU&t=4s slideshare: https://www.slideshare.net/UnityTechnologiesJapan/bolt-1/1
5.追従カメラ追加する
MainCameraの位置を調整してSimple Camera Controllerを削除する
MainCameraにFlow Machineを追加する
変数 Offsetを追加する
カメラがヒヨコを追従するようにする
FollowPlayer全体の様子
カメラが追従するようになった
6.Item追加する
Ringoを追加する
RingoにSphere Colliderを追加して”Is Trigger”チェック Tagを”Item”にする(Item Tagを作成する)
RingoにFlowMachineを追加しItem Macroを作る
リンゴを回転させる Transform.Rotate(X,Y,Z)
リンゴが回転するようになりました
リンゴがPlayerに当たると消えるようにする
リンゴに触れると削除されるようになった
リンゴを複数配置した
7.UI追加する
テキスト “ScoreLabel” を追加する
テキストを”0”とする
空オブジェクト”GameController”作成してFlowMachine追加
GameControllerに変数 ”ScoreLabel” 追加
WinnerLabelを作成する
GameControllerに変数 ”WinnerLabelObject” 追加
GameControllerを開く クリックする。
GameController:ScoreLabelにリンゴの数を表示 FindGameObjectsWithTag
GameController:WinnerLabelObjectをリンゴ0で表示
0になるとYOU WINと表示された!
Itemが0になったらJumpアニメーション再生する
HiyokoControllerを開く
Jumpアニメーションを設定する Trigger型:Win Trigger型:Win Has Exit Time Jumpアニメーションを追加
GameControllerにGameObject型変数 Hiyoko を追加
Jumpアニメーションを再生するようにGameController設定 *ポイント アニメーション再生させる。
8.Navimeshを使う
niwatoriを追加する
StageにNavigation Staticを入れてNavigation Window開く
Bakeボタンをクリックする
NiwatoriにNavimeshAgent追加 さらにFlowMachineを追加して変数Targetも追加
Niwatoriのノードを組む
NiwatoriにRunアニメーションを追加する
にわとりが追っかけてくる
9.カスタムイベントの作成
TestTextを追加する
カスタムイベントを作成する GameControllerマクロ
”こんにちは”と表示された!
using System.Collections;
using System.Collections.Generic;
カスタムイベントをC#から呼び出す
using UnityEngine;
using Bolt; //BoltをC#で制御するための NameSpace
public class TestEvent : MonoBehaviour
{
public GameObject gameController;
// Start is called before the first frame update
void Start()
{
//第一引数 : 呼び出したいイベントを持つオブジェクト
//第二引数:呼び出したいカスタムイベント名
CustomEvent.Trigger(gameController, "ChangeText");
}
}
”こんにちは”と表示された!
おまけ
Titleシーンを作る New SceneからTitleシーンを作成します。
ボタンにStartGameを追加する
ボタンを押すとシーンを呼び出す
イベントを設定してシーンを登録する ボタンからイベントを呼び出す。
ボタンを押すとシーン移行するようになった