SlideShare a Scribd company logo
UnityとBlenderハンズオン
静岡Developers勉強会
第10章 UnityとBlenderの学び直し
はじめに
静岡Developers勉強会では、過去に下記の勉強会を行いました。
2010年:「Programming in Haskell」
2011年:「JavaScript: The Good Parts」
2012年:「HTML5&CSS3実践入門」、「GitHubハンズオン」、
「node.jsハンズオン」
2013年:「入門 機械学習」
2014年:「実践 コンピュータビジョン」
2015年は上記の勉強会で学んだことを実践し、Shizudev名義のスマホアプリ
を開発します。
作成後は公開用のサイトや動画も作成し、機械学習を使ってダウンロード状
況などを分析していきます。
スマホの広告費は会費にあて、万が一予定より多く収入が入った場合には寄
付を考えています。
自己紹介
 やじゅ@静岡・・・漢字名は「八寿」
平口八寿人(https://www.facebook.com/yasuhito.hiraguchi)
アラフォーエンジニア、元MSMVP(VisualBasic)
静岡県島田市のSL(大井川鉄道)が走っている所に在住
Twitter:yaju はてなID:Yaju3D
http://blogs.wankuma.com/yaju/
http://yaju3d.hatenablog.jp/ 数学と物理を基礎からやり直す)
http://www.slideshare.net/yaju88/presentations (スライド)
概要
2015年の静岡Developers勉強会は「スマホアプリの開発」を題材とします。
スマホアプリを開発する上で、汎用的なツールの使い方を学びます。
・Unity
統合開発環境を内蔵し、複数のプラットホームに対応するユニティ・テクノロジーズが
開発したゲームエンジンである。ゲームとインタラクティブな3Dコンテンツ制作のため
の常識にとらわれない強力な機能を提供します。
・Blender
オープンソースの3DCG制作ツールです。
3Dモデルの作成、レンダリングのほかアニメーション、コンポジット機能も備える。
セッション内容
 Unityの学び直し
今までチュートリアルをこなすことで精一杯になってしまい、理解度が弱かったため、
基礎部分を学び直していく。
 写真から3Dモデル化の修正
最近は写真から簡単に3D化できますが、ゴミが混ざっていたりするのでBlenderを
使って修正します。
 スマホアプリのアイディア
今年は、Shizudev名義でスマホアプリを作成します。
→2015年は出来ませんでしたが、アイディアはあるので2016年初旬には作成します。
Unityの学び直し
 はじめに
第6回にてミニゲーム発表会を行ったが、作成する上でまだちゃんと理解できていない部分があった。
今までチュートリアルをこなすことで精一杯になってしまい、理解度が弱かったため、
基礎部分を学び直していく。
 Unity4.6からUnity5.2にバージョンアップの注意点
さすがに時期的にバージョンアップしておかないとまずいと思って、今回バージョンアップしました。
Unity4.6時代のプロジェクトからバージョンアップすると、「Apply Root motion」のチェックが変換時
にオンにされてしまい、RigidBody2Dが動かなくなるので、チェックを外しましょう。
私はVisual Studioでデバッグしていたのですが、Unity5.2にアップデートしたところデバッグができなく
なってしまいました。その場合、Visual Studio Tools for Unityのバージョン2.1をインストールしましょう。
Unityの学び直し
 アジェンダ
・コ・ルーチン
・Gizmo(ギズモ)について
・BGM、効果音
・スクロールについて
・ゲームマネージャ
・シーンの切り替え
・傾きの検出について
・ビルドについて
Unity:資料:ユニティちゃん 2Dデータ
今回の資料として「ユニティちゃん 2Dデータ」を使用します。
UNITY-CHAN! OFFICIAL WEBSITE
http://unity-chan.com/contents/guideline/
ダウンロード場所
http://unity-chan.com/download/index.php
Unity:コルーチンについて
特徴として通常の関数のとは異なり、処理を途中で抜けて任意のタイミングで中断部分から処理
を再開できる。
例えば、初心者の方が「キャラクターを1フレームに1ドットずつ100 ドット動かす」といった
場合、下記のようにしてしまうことがあります。
for(int i=1; i<100; i++){
myChar.MoveToRight(1);
}
これでは結果的に失敗で、これを実行すると1フレームで100 ドット右に動いてしまいます。
Unity:コルーチンについて
ところが、「yeild」を1行入れることで、1フレームに1ドットずつ100 ドット動かすことが
出来てしまいます。
for(int i=1; i<100; i++){
myChar.MoveToRight(1);
yeild return 0;
}
「yeild」を使用することで、関数の実行を一時的に中断し、次回にその関数が呼び出された
ときにその続きを実行することが出来ます。
内部的には、オブジェクト指向のイテレータとなるため「IEnumerator」を使う。この機能に
より状態変数を減らせることが出来て便利です。
参考 マイクロスレッド 、 [VB]遅れてやってきたYield その5
Unity:コルーチンについて
http://www.slideshare.net/lucifuges/unityc
Unity:コルーチンの準備(シーンの読み込み)
 シーンの読み込み
UnityChan2D→Assets→Scenesにある「Introduction Demo」をクリックします。
Unity:コルーチンの準備(Coinスプライト生成)
 弾としてコインのスプライトを生成
UnityChan2D→Demo→SpritesのCoin.pngをUnityChan2D→Spritesにコピーします。
Inspectorにて「Sprite Mode」を「Multiple」、「Pixels Per Unit」を「16」にします。
Sprite Editorにて「Type」をGridに変更、「Size」をX 16 Y 16で「Slice」ボタンを押下後、Applyします。
Unity:コルーチンの準備(コインの設定)
 弾であるコインの設定
Coinが大きいので、Scaleを0.5にして小さくします。
またRigidBody 2Dを追加して「Gravity Scale」を「0」にし、「Freeze Rotation Z」をオンにします。
また、Circle Collider 2Dを追加します。
Unity:コルーチンの準備(C#スクリプト作成)
Assets/ScriptsにC# スクリプトの「Coin」を作成します。下記コードを入力してCoinにアタッチします。
アタッチ後、プレハブ化するためにAssets/Prefabs にCoinをドラッグ&ドロップします。
public class Coin : MonoBehaviour {
public int speed = 2;
private static int count = 0;
void Start () {
GetComponent<Rigidbody2D>().velocity = transform.right.normalized * speed;
}
void OnTriggerStay2D(Collider2D other) {
if (other.tag == "DamageObject") {
if(++count >= 6) Destroy(other.gameObject); //コインが6発当たれば敵を削除
Destroy(this.gameObject);
}
}
void OnBecameInvisible() {
Destroy(this.gameObject); //カメラから外れたら削除
}
}
Unity:コルーチンの使い方
Unityでコルーチンを使用するケースのほとんどは、任意の時間(秒)処理を止めたい場合
となります。
任意の時間(秒)処理を止める処理は下記コードとなります。
yield return new WaitForSeconds (秒数);
コルーチンは、IEnumeratorを返す関数として実装します。
IEnumerator Shot() {
yield return new WaitForSeconds(1f); //1秒待機
}
コルーチンを呼ぶには、StartCoroutineメソッドで実行します。
StartCoroutine(“Shot”);
【参照】Unityのコルーチンの使い方をまとめてみた
Unity:コルーチンの準備(Coinの発射)
Assets/ScriptsにC# スクリプトの「UnityChan2DController」に赤文字部分を追加します。
private bool isRunning = false;
public GameObject Coin;
void Update() {
if (m_state != State.Damaged) {
float x = Input.GetAxis("Horizontal");
bool jump = Input.GetButtonDown("Jump");
Move(x, jump);
//左クリックでコイン発射
if (Input.GetButtonDown("Fire1"))
StartCoroutine(“Shot”); //コルーチンを呼びます
}
}
Unity:コルーチンの確認(Coinの発射)
Assets/ScriptsにC# スクリプトの「UnityChan2DController」に下記コードを追加します。
IEnumerator Shot() {
if (isRunning) { yield break; }
isRunning = true;
//コインを3連射する
for(int i = 0; i<3; i++) {
Instantiate(Coin, new Vector2(transform.position.x + 0.5f,
transform.position.y - 0.5f), Quaternion.identity);
yield return new WaitForSeconds(1f); //1秒待機
}
isRunning = false;
}
Unity:Gizmo(ギズモ)について
 Gizmo(ギズモ)とは
仕掛け、小道具、装置の意味がある。カメラのマークや3Dアイコンなどもギズモの一種です。
Sceneビューのみに表示され、 Gameビューでは通常は表示されない。
但し、Gameビューでも右上の「Gizmos」ボタンをクリックすると表示/非表示の切り替えが出来る。
今回、紹介するのはアイコンのギズモです。第3回勉強会のPac-manでGhostの動きに使用しました。
Unity:Gizmo(ギズモ)の活用準備
Hierarchyにて下記のようにGameObjectの「waypoints」を1つ作成し、座標はXYZとも「0」にします。
次に下位に4つのGameObjectの「waypoint」を作成してください。
4つの位置に敵を動かすので、動かしたい位置に配置します。色は同じでも違う色にしてもいいです。
アイコンが小さすぎて見えない場合、Gizmosの3D Iconsのバーを動かすことで大きくなります。
Unity:Gizmo(ギズモ)活用するスクリプト
C#スクリプト「Enemy」を作成して、下記のソースコードを入力します。
public class Enemy : MonoBehaviour {
public GameObject waypoints;
public float speed = 0.1f;
private int cur = 0;
void FixedUpdate() {
Transform child = waypoints.transform.GetChild(cur);
if (transform.position != child.position) {
Vector2 p = Vector2.MoveTowards(transform.position, child.position, speed);
GetComponent<Rigidbody2D>().MovePosition(p);
}
else cur = (cur + 1) % waypoints.transform.childCount;
}
Vector2.MoveTowards
2点間の特定の位置を返す
(現在位置と次の位置)
Unity:Gizmo(ギズモ)活用した敵の動き
敵の「uni_0」のInspectorにて「RigidBody 2D」を追加して、Gravity(重力)を「0」にします。
C#スクリプト「Enemy」を「uni_0」にスクリプトをアタッチします。
InspectorのEnemy(Scripts)の「Waypoints」に、Hierarchyの「Waypoints」をドラッグ&ドロップします。
敵の「uni_0」が、ギズモを設置した位置へ順番に動きます。
Unity:BGM・効果音について
 基本的なオーディオ関係のコンポーネント
 Unity4からUnity5での変更点
モノリズム Unityはじめるよ 〜すごいよサウンド機能〜
コンポーネント 説明
AudioClip 音データ(.aif、.wav、.mp3、.ogg等をサポート)
AudioSource スピーカー
AudioListener 音を拾う(通常はCameraに付いている)
AudioMixer 音の調整
Unity:BGMを再生する
 BGMの再生
SceneビューにDemo/Sounds/Music/stageをドラッグ&ドロップする。
Inspectorにて「Play On Awake」プロパティと「Loop」プロパティにチェックを付ける。
「Play On Awake」プロパティをオンにすると動作開始直後に自動的に鳴らせることが出来ます。
Volumeを「1」のまま
だと効果音によっては
効果音が聞こえにくい
ため、「0.3」程度に
修正します。
Unity:BGM再生の注意点
 BGMのフェードイン・フェードアウト
BGMのON/OFFを行うには、audio.Play();/audio.Stop(); で出来るが、出だしと終わりが急すぎる。
Unityにはサウンドのフェードイン・フェードアウトが標準機能にないため、下記サイトを参考に作成する。
【Unity】とっても簡単に扱えるBGM再生クラスを作ってみた。フェードイン、フェードアウト対応版
Unity 5.2 BGMのフェードイン・フェードアウト(AudioMixer)
 シーン遷移時のBGM継続再生
シーンからシーンへ遷移するとBGMのゲームオブジェクトが消えてしまうため、BGMを継続して再生する
ことが出来ない。この問題を解決するには、Objectクラス(MonoBehaviourの基底クラス)の
「DontDestoryOnLoad」関数を「true」で実行する。参照:シーンを遷移してもBGMを継続して再生する方法
ただし、設定されたゲームオブジェクトが消えることがないため、BGMが10曲ある場合、そのすべてが
メモリに常駐することになります。
これを回避するには、Audio Clipインポーターの「Load Type」プロパティを「Stream from disk」にして
ストリーム再生にしてください。この設定にした場合、 Audio ClipファイルをAssets/Resourcesフォルダの
下に配置します。起動時に外部ファイルとして扱われ、メモリ内には読み込みません。
Unity:効果音の再生(コインを投げる場合)
Hierarchyの「UnityChan2D」にDemo/Sounds/SE/startをドラッグ&ドロップする。
UnityChan2DのInspectorにてAudio Sourceコンポーネントの「Play On Awake」プロパティをオフにする。
※「Play On Awake」プロパティは動作開始直後に自動的に鳴らせる機能のため、効果音ではオフにします。
Unity:効果音の再生
 コインを投げる場合の効果音
C#スクリプト「UnityChan2D」の適切な位置に追加する。下記ソースは一部省略して記載しています。
private AudioSource m_audioSource;
void Awake() {
...
m_audioSource = GetComponent<AudioSource>();
}
void Update() {
...
//左クリックでコイン発射
if (Input.GetButtonDown("Fire1")){
StartCoroutine(“Shot”); //コルーチンを呼びます
m_audioSource.PlayOneShot(m_audioSource.clip); //m_audioSource.Play();
}
}
同じ効果音を重ねて再生したい
場合、Play()メソッドではなく
PlayOneShot(clip)メソッドを
使用します。
Unity:効果音の再生(敵がコインに当たった場合)
Hierarchyの「uni_0」にSounds/SE/block_hitをドラッグ&ドロップする。
uni_0のInspectorにてAudio Sourceコンポーネントの「Play On Awake」プロパティをオフにする。
Unity:効果音の再生(敵が死亡した場合)
uni_0のInspectorにて「Add Component」ボタンで Audio→Audio Sourceコンポーネントを追加します。
Audio ClipにSounds/SE/getを指定します。同様に「Play On Awake」プロパティをオフにする。
※ゲームオブジェクトにAudio Clipデータをドラッグ&ドロップして設定できるAudio Sourceは
1つだけなので、2つ目からは手動で追加する必要があります。
Unity:効果音の再生(Enemyスクリプトの修正)
C#スクリプト「Enemy」の適切な位置に追加する。
private AudioSource sound01;
private AudioSource sound02;
void Awake() {
AudioSource[] audioSources = GetComponents<AudioSource>(); //複数あるため
sound01 = audioSources[0];
sound02 = audioSources[1];
}
public void EnemyDamage(){
sound01.PlayOneShot(sound01.clip); //敵ダメージ
}
public void EnemyDie(){
sound02.PlayOneShot(sound02.clip); //敵死亡
}
Unity:効果音の再生(Coinスクリプトの修正)
C#スクリプト「Coin」に下記2メソッドを追加する。
FindObjectOfType<Enemy>().EnemyDamage();とFindObjectOfType<Enemy>().EnemyDie();
void OnTriggerStay2D(Collider2D other) {
if (other.tag == "DamageObject") {
FindObjectOfType<Enemy>().EnemyDamage(); //敵ダメージ
if (++count >= 6) {
FindObjectOfType<Enemy>().EnemyDie(); //敵死亡
Destroy(other.gameObject, 0.3f);
}
Destroy(this.gameObject);
}
}
削除するタイミング
を遅らせることで
効果音を再生させる。
Unity:効果音の再生の注意点
効果音のAudio Sourceは、ゲームオブジェクトに紐付いている為、削除すると
Audio Sourceも一緒に消えてしまい、効果音が再生されなくなります。
2パターンのどちらかを採用するといいでしょう。
・下記のように削除するタイミングを少し遅らせる
Destroy(other.gameObject, 0.3f);
・別の消えないゲームオブジェクトに効果音のAudio Sourceを持たせる
例 PlayerController.cs、EnemyController.cs
Unity:スクロールについて
UnityChanの場合、予めマップを作成しておいてカメラが移動する方式で
スクロールさせています。
白枠がカメラ
キャラクターがカメラ内の半分を
超えたら右スクロールさせる。
Unity:スクロールについて
CameraControll.cs にて、 LateUpdate()内でキャラクターが半分を超えたらカメラを右方向に移動させている。
void LateUpdate() {
var right = m_camera.ViewportToWorldPoint(Vector2.right);
var center = m_camera.ViewportToWorldPoint(Vector2.one * 0.5f);
if (center.x < target.position.x) {
var pos = m_camera.transform.position;
if (Math.Abs(pos.x - target.position.x) >= 0.0000001f) {
m_camera.transform.position = new Vector3(target.position.x, pos.y, pos.z);
}
}
if (stopPosition.position.x - right.x < 0) {
StartCoroutine(INTERNAL_Clear());
enabled = false;
}
}
LateUpdate()の一般的な使用
方法は三人称カメラです。
Update()後に一度呼び出され
ます。Update()で実行される
計算は、LateUpdate()が始ま
る時に完了します。
Unity:スクロールについて
Unity公式のシューティングゲームの背景スクロール(Quadによるテスクチャ背景)
第06回 背景を作る
1枚の背景をループ(Wrap ModeがRepeat)させてスクロールする。
3枚の背景を各速度を変更して重厚な背景スクロールとして見せている。
Unity:シーンの切り替え
Application.LoadLevelを使うと、別のSceneを呼び出すことができます。
Application.LoadLevel ("シーン名");
複数シーンを使う場合は、Build Settingsが必要
設定しておかないとエラーが出ます。
File -> Build Settings
「Scenes In Build」にシーンをドラッグする。
Unity:シーンの切り替え
 オブジェクトにシーンを跨がせる方法
Unityではシーンを切り替えるとGameObject等は全部破棄されてしまいます。
しかし、ゲームのスコアや設定等とっておきたいケースは多々あります。
壊さないで別なシーンまで変数を跨ぎたい場合、下記3つの方法があります。
・ staticオブジェクト
static付きの変数は、アプリ終了時まで破棄されません。
・ GameObjectの場合
DontDestroyOnLoad(this); //thisは自分自身、this以外は任意のgameObjectを指定する。
・ Sceneの合体
Application.LoadLevelAdditive (“シーン名”); //シーンの追加
Application.UnloadLevel (“シーン名”); //シーンの破棄 Unity 5.2より使用可能となった。
Resources.UnloadUnusedAssets(); //リソースのアンロード
参照:【Unity】シーンの「追加読込」と、追加読込したシーンの「破棄」
Unity:エディタ拡張
属性に[SceneName]を付けると、シーン名のみリスト選択になる。
[SceneName]
public string nextLevel;
[SceneNameAttribute.cs]でエディタを拡張すると利用できる。
参考:知って得するUnity エディタ拡張編
属性に[SerializeField]を付けると、指定したクラス(KeyCode)のみリスト選択になる。
[SerializeField]
private KeyCode enter = KeyCode.X;
Return,Space,A-Z等
Unity:傾きの検出について
傾きを検出するセンサーとして加速度センサー(acceleration) と「ジャイロ(gyro)」があります。
参照:加速度センサとジャイロで体の動きを感じるアプリを作る
 加速度センサー
加速度センサーは、直線軸方向の加速度を検出する。
よくF1レースなどで「Gが掛かる」などといわれることがありますが、この「G」が加速度です。
デバイスが一定方向に一定速度で移動しているときには加速度は生じておらず、そこから速度が
変化したときに初めて加速度が生じます。
スマホの液晶を横向きにすると画面が切り替わりますが、その際に加速度センサーを使用してい
ます。
加速度センサーの値の取得は、Input.accelerationを使います。
Input.acceleration.x
Input.acceleration.y
Input.acceleration.z
各軸で傾けたときの値を取得できます。
Unity:傾きの検出について
 ジャイロセンサー
実際にジャイロを使う為にはiPhoneの右手座標系をUnityの左手座標系に変更する必要がある。
参照:UnityでiOSのジャイロの使い方をちゃんと説明する、iPhoneのUnityRemote4でジャイロ
Input.gyro.attitude はデバイスの姿勢をクォータニオンで返す。
例えば、デバイスの傾きと床オブジェクトの傾きが連動する玉転がしゲームとかの用途向き。
Input.gyro.enabled = true; //ジャイロ機能を有効にする
var rotRH = Input.gyro.attitude;
var rot = Quaternion(-rotRH.x, -rotRH.z, -rotRH.y, rotRH.w) * Quaternion.Euler(90f, 0f, 0f);
Unity:傾きの検出について
 ジャイロセンサー
Input.gyro.rotationRateUnbiasedは、XYZ各軸の回転速度をVector3型で返します。
デバイスを奥に倒すとXがマイナス、手前に傾けるとXがプラス、
左に向けるとYがマイナス、右に向けるとYがプラス、
時計周りにするとZがマイナス、反時計回りだとZがプラスです。
速度なので動かすのをやめると値は0に近づきます。
プロパティ 説明
Input.gyro.attitude デバイスの姿勢をクォータニオンで返す
Input.gyro.rotationRate デバイスのジャイロスコープで測定された回転率を返す
Input.gyro.rotationRateUnbiased
デバイスのジャイロスコープで測定されたバイアスなし
回転率を返す(バイアスなし→より正確な測定を与える)
Unity:ビルドについて(Android)
Edit→Preference(MacはUnity→Preference)を開き、External Toolsを選択します。
AndroidSDKとJDKとNDKにパスを設定します。
JDKは(Java Development Kit:言語 Java) 、
NDKは(Native Development Kit :言語 C++)
NDKのパスの追加は、Unity 5.2 からIL2CPP
(C#のコードをC++に変換する)が使用
できるようになったため。
Unity:ビルドについて(Android)
File→Build Settingsを選択するとPlatform画面を起動します。
プラットフォームとして「Android」を選択します。
[Player Setting]をクリックしてください。
今回は、UnityChanをビルドしてみます。
Inspectorが表示されますので、必要な設定を変更します。
Unity:ビルドについて(Android)
最低限必要な設定として「Company Name」を「DefaultCompany」から適切な名前に変更します。
今回は「Shizudev」にしておきます。
Company Nameのみ変更してビルドすると「Bundle Identifier has not been set up correctry」の
エラーメッセージが表示されてしまいますので、「Bundle Identifier」を修正します。
「com.Company.ProductName」から今回は「com.Shizudev.Unitychan」にしました。
Bundle Identifier は
アプリを一意に識別す
るIDです。
リバースドメイン方式
が推奨されています。
Unity:ビルドについて(Android)
Scene In Buildの内容を確認して、「Build」ボタン押します。
「Unitychan.apk」が出来ます。
Unity:ビルドについて(Android)
実機に転送する場合、先にAndroid端末に下記の設定をしておきます。
1. 設定 → 開発者向けオプション → USBデバッグをチェック
2. 設定 → ロックとセキュリティ → 提供元不明のアプリをチェック
USBケーブルでパソコンとAndroid実機を接続して、「Build And Run」ボタン押します。
Android実機にインストールされアプリが起動します。
Unity: Androidエミュレータ(Andy)
Windowsにて、Androidエミュレータ「Andy」で「Unitychan.apk」を動かしてみます。
Android-sdk内にある「adb.exe」に環境パス(android-sdk¥platform-tools)を通しておきます。
コマンドプロンプトにて、「adb install Unitychan.apk」を実行します。
最後に「Success」と表示され、Andy上にアプリがインストールされます。
参照: 【ADB】PCから「adb install/adb uninstall」を使ってアプリ(apk)を端末に直接インス
トール/アンインストールする方法
現状は、
動作がもっさりで
ゲームになりません。
2016/01/01の最新版
46.1では、もっさり
感がなくなりました。
Unity: Androidエミュレータ(BlueStacks2)
別のAndroidエミュレータ「BlueStacks2」で「Unitychan.apk」を動かしてみます。
左パネルのAPKのアイコンをクリックして、「Unitychan.apk」を選択します。
動作速度は悪くないです、ごくたまにBGMがもたつく時があります。
参照: PCでAndroidのアプリをマルチタスクで使えるエミュレーター「BlueStacks 2」を使ってみ
ました
Unity: Androidエミュレータ(DuOS)
有料ですが別のAndroidエミュレータ「DuOS」で「Unitychan.apk」を動かしてみます。
「Unitychan.apk」を右クリックメニューで「Install in DuOS」でインストールされます。
動作速度は悪くないですし、BGMも問題なく鳴ります。
参照: WindowsタブレットがあればもうAndroidタブレットはいらないんじゃね?
Unity:ビルドについて(iOS)
Xcode 7よりiPhoneでの実機テストが無料で出来るようになりました(AppleIDは必要)。
AppStoreに公開して一般ユーザーにダウンロードしてもらうためには、
これまで通り開発者プログラムへの登録が必要です。
Android同様「Bundle Identifier」を設定します。App IDとBundle IDが一致していること。
Unity:ビルドについて(iOS)
Scene In Buildの内容を確認して、「Build」ボタン押します。
Xode用ビルド環境が作成されます。Mac環境でXcode 7を使ってビルドします。
参照:iPhone実機でUnityを動かしてみた
Unity:ビルドについて(iOS)
【注意点】
Xcodeでビルド時、App ThinningのbitcodeまわりでLinkが失敗した場合、
[Build Settings]->[Build Options]->[Enable Bitcode]を「No」に変更します。
【参考】
Windowsのみの方は、「Unity Cloud Build」という選択もあります。
参照:WINDOWS環境だけでIOS向けアプリをUNITYで作る – UNITY CLOUD BUILD を試す
Unity:ビルドについて(WebGL)
UnityコンテンツをWebブラウザーで再生するためのプラグイン「Unity Web Player」が非推奨
とすることになりました。今後はWebブラウザー環境ではWebGLを推進していくことになります。
「Build and Run」を使用することで、ファイルは一時的にローカルのウェブサーバーにホスト
され、localhost URL から開かれます。公開する場合は、Webサーバー上に置きます。
Unity:ビルドについて(Unity Cloud Build)
Unity Cloud Buildは、Unity公式のクラウドサービスです。
クラウド上でプロジェクトのビルドを行い、結果を通知する CI(継続的インテグレーション)
と呼ばれるものです。(MacがなくてもiOSアプリが開発できる)
無料版では自動ビルドが1時間おき(Pro版は30分)だったり、REST APIでアクセスできない等の
制限があります。ビルド通知のメールに記載されたURLにiOSやAndroid端末からアクセスすると
すぐにインストールできます。
【参照】
Windows環境だけでiOS向けアプリをUnityで作る – Unity Cloud Build を試す
Unity Cloud Build無料プランでiOS、Androidアプリのビルドを自動化する - niacin's lab
Unity Cloud BuildとUnity Analytics – SlideShare
Unity Cloud Build に新機能追 - 強火で進め
Blender:セッション資料の内容
前回、3Dモデルのゴミを削除した某キャラをセッション資料として使用します。
今回は、ボーンを付けてアニメーションを追加し、Unityにインポートしてみます。
http://www.123dapp.com/catch/Mario/2276415
友人をスマホで撮影して3Dモデル化してUnityで動かしてみた
【ユニティちゃん】HGベアッガイさんが踊ってみた【3Dキャプチャ】 ‐ ニコニコ動画:GINZA
Blender:セッション資料
今回のセッション資料となります。
https://github.com/yaju/ShizuDev_UnityAndBlender/tree/master/Session10
※テクスチャの配置は下記フォルダになっているので注意
C:¥Project¥ShizuDev_UnityAndBlender¥Session10¥tex_0.jpg
blenderファイル 内容
mario_origin 原点
mario_lamp ランプ調整
mario_born ボーン
mario_pose ポーズ
mario_anime アニメーション
human19 歩行アニメーション
Blender:テクスチャのパス名の変更
プロパティエディタのヘッダをテクスチャアイコンにします。
新規ボタンの隣のアイコンを押して「Kd」を選択します。
ソースにテクスチャのパス名が表示されているので、指定したいパス名に変更します。
Blender:基本操作
 拡大・縮小
マウスのホイールで3Dモデルの拡大・縮小
 視点の向きの変更
マウスのホイールを押しながらマウス移動
 視点の移動
SHIFTキーとマウスのホイールを押しながらマウス移動
 前後不覚になった場合
Homeキーを押す、または下側にある「ビュー」メニューから「全てを表示」を
選択すると3Dビューウィンドウに丁度すべてが収まるように視点が移動される。
 履歴の参照とアンドゥで元に戻す
左側パネルの履歴にて
元に戻す(Ctrl + Z)
やり直す(Shift Ctrl + Z)
Blender:原点に設定する
ボーンを入れる前に、3Dモデルを原点に移動させます。ゴミを削除したのでズレている。
1. ビューの平行投影(Numpad 5)かつ前(Numpad 1)にします。
2. オレンジ色の●が原点です。「Shift + C」キーで3Dカーソルを原点に移動させます。
3. 表示が小さくなってしまうので、ホイールボタンで表示を大きくしていきます。
4. 3Dモデルの全体を選択して「R」キーでZ方向に回転させて、前向きにします。
Blender:原点に設定する
5. オブジェクトモードに変更し、「G」キーで3Dモデルの中心を青線に合わせ、赤線の上に移動します。
6. オブジェクト→トランスフォーム→原点を3Dカーソルへ移動を選択します。
7. ビューの右(Numpad 3)にして、 3Dモデルの中心を青線に合わせます。
8. 再度、ビューの前(Numpad 1)にします。 これでボーンを入れる準備ができました。
Blender:ランプの移動
3Dモデルの向きを変更したことにより、暗くなってしまっているのでランプを移動して明るくします。
1.ビューの左向き(Ctrl + Numpad 3) にします。
2.ランプを右クリックで選択し「G」キーで正面近くに移動します。
Blender:ランプの移動
3.ビューの上向き(Numpad 7) にします。
4.ランプを「G」キーで3Dモデルの正面に移動します。
5.3Dモデルが明るくなります。
6.ビューを前向き(Numpad 1)に戻します。
Blender:アーマーチェア(ルートボーン作成)
 ルートボーンの作成
アーマチェアを作成します。「オブジェクトモード」に変更してください。
ヘッダの追加→アーマーチェア→一つのボーンでアーマーチェアを作成します。
「Alt + G」キー(Macはoption + G)を押すと、アーマーチェアが原点(両足の真ん中)に移動します。
大きいので「S」キーでサイズを小さくします。またはトランスフォームで拡大縮小を「0.200」にします。
Blender:アーマーチェア(ルートボーン作成)
 ルートボーンの作成
プロパティエディタのヘッダにて「オブジェクトデータ」ボタンをクリックしてプロパティに切り替え
表示タブの「レントゲン」と「名前」にチェックを入れてください。
ビューの右方向(Num + 3)で「ライト:平行投影」にします。また「編集モード」に変更します。
Blender:アーマーチェア(ルートボーン作成)
 ルートボーンの作成
ボーンを右クリックして「R」キーを押し、ボーンの先が前へ向くように「Ctrl」キー(MacはControl)を
押しながら90度回転させます。(回転する際には、ピボットポイントを「中点」にするといいです)
ボーンの先が腹と尻の間、背骨が通るラインに来るように、マニュピュレータの青矢印と緑矢印で
ボーンを移動してください。(マニピュレータを使わないで「G」キーでの移動でも良いです)
マニピュレータの表示
Blender:アーマーチェア(体の中心にボーン作成)
 体の中心にボーンを作成する
ルートボーンの先端の小さい球を右クリックして選択し、「E」キーで上に押し出して体の中心を
通るボーンを作っていきます。
まず腹と胸の間まで押し出し、次に首の手前まで、次に首と頭部の間まで、最後の頭の上まで、
計4回、背骨を意識して押し出してください。
Blender:アーマーチェア(体の中心にボーン作成)
 体の中心にボーンを作成する
再び、ルートボーンの先端を右クリックして選択し、「E」キーで真下に向かって、足の付け根の高さまで
押し出して、腰のボーンを作成してください。
押し出し中にホイールボタンをクリックすると移動の軸が制限されて、真下に押し出すことが出来ます。
Blender:アーマーチェア(腕のボーン作成)
 腕のボーンを作成する
ビューで前向き(Num + 1)を選択して、「フロント:平行投影」にビューを変更します。
右側の腕を押し出して作成します。首の付け根のジョイントから押し出して、肩のボーンを作成します。
首の付け根のジョイント(Bone.002の先端)を右クリックで選択し、「E」キーで押し出します。
Blender:アーマーチェア(腕のボーン作成)
 腕のボーンを作成する
上腕、前腕、手のひらのボーンを押し出して作ります。
ジョイントを右クリックで選択し、「E」キーで押し出します。上腕、前腕、手のひらの3回繰り返す。
Blender:アーマーチェア(下半身のボーン作成)
 下半身のボーンを作成する
腰の骨から左足の付け根まで、押し出してボーンを作成してください。
Bone.005の大きすぎている場合、先にBone.005を全体を選択して「S」キーで小さくしておきます。
Bone.005の先端のみを選択して、「E」キーで左足の付け根まで押し出します。
Blender:アーマーチェア(下半身のボーン作成)
 下半身のボーンを作成する
ビューの右方向(Num + 3)で「ライト:平行投影」にします。
ボーンの先を選択している状態から、もも、すね、足のボーンを押し出して作ります。
ジョイントを右クリックで選択し、「E」キーで押し出します。もも、すね、足の3回繰り返す。
Blender:アーマーチェア(下半身のボーン作成)
 下半身のボーンを作成する
ビューの前方向(Num + 1)で「フロント:平行投影」にします。
正面にすると下半身の向きがズレているので向きを修正します。
Blender:アーマーチェア(下半身のボーン作成)
 下半身のボーンを作成する
腰から足につながるボーン(Bone.010)を右クリックで選択し、「X」キーを押してサブメニューで
「削除」を選択します。削除しても、腰と足は点線でつながっていて、親子関係は残っています。
Blender:アーマーチェア(各ボーンに名前付与)
 各ボーンに名前を付ける
半身完成したら、各ボーンの名前を付けていきます。
プロパティエディタのボーンボタンをクリックしてプロパティを表示し、各ボーンを選択して
名前を書き換えます。
元の名前 先の名前
Bone BodyRoot
Bone.001 Spine1
Bone.002 Spine2
Bone.003 Neck
Bone.004 Head
Bone.005 Pelvis
Bone.006 Clavicle
元の名前 先の名前
Bone.007 UpArm
Bone.008 LowArm
Bone.009 Hand
Bone.011 UpLeg
Bone.012 LowLeg
Bone.013 Foot
Blender:アーマーチェア(各ボーンに名前付与)
 各ボーンに名前を付ける
名前を付け終わったら、右側の7つのボーンを範囲選択(Ctrl(Macはcontrol)+ドラッグで囲む)などで
選択します。取りこぼした場合、Shiftキーを押しながら右クリックで選択していく。
ヘッダのアーマーチェア→オートネーム左右を選択(または「W」キー)します。
各ボーン名の後ろに「.L」が付きます。
Blender:アーマーチェア(左側のボーン作成)
 左側のボーンの作成
右側のボーンを複製して、左側のボーンを作成します。
アーマーチェア→複製を選択し、すぐに右クリックで複製を終了してください。
移動操作をキャンセルしたので、わかりずらいですが同じ場所に重なって複製されています。
「N」キーでプロパティを表示し、「3Dカーソル」の位置のXの値を「0」にします。
ヘッダのピボットポイントを「3Dカーソル」に変更します。
Blender:アーマーチェア(左側のボーン作成)
 左側のボーンの作成
メニューのアーマーチェア→ミラー→グローバルX軸を選択、3Dビュー内をクリックし
ボーンを左右反転させます。
ヘッダのピボットポイントを「中点」に戻しておきます。
Blender:アーマーチェア(左側のボーン作成)
 左側のボーンの作成
左側のボーンが選択されている状態で、ヘッダのアーマーチェア→ボーン名反転を選択してください。
左側のボーン名の後ろが「.L001」から「.R」に変わります。
左側の右半身なので「R」です。左側の位置が少しモデルとズレているので調整します。
これでアーマーチェアが完成しました。
Blender:アーマーチェア(メッシュに関連付け)
 メッシュにアーマーチェアを関連付ける
キャラクターのメッシュにアーマーチェアを組み込みます。
「オブジェクトモード」に戻します。
人体のメッシュオブジェクトを右クリックして選択します。
アーマーチェアをShift + 右クリックで追加します。
オブジェクト→親→「自動のウェイトで」→「自動のウェイトで」
を選択します。
Blender:アーマーチェア(メッシュに関連付け)
 メッシュにアーマーチェアを関連付ける
アーマーチェアを選択またはアウトライナーで「Armature」選択してから「ポーズモード」にします。
ボーンを選択すると水色になります。「R」キーで各ボーンを回転させ、ポーズを変更してみましょう。
ポーズに合わせてメッシュが変形するようになりました。
Blender:ウェイトペイントについて
ウェイトペイントについては、下記の動画を見るとイメージがつきやすいです。
ウェイトペイントでは関連性が強い順に赤→黄→緑→水色→青の色で塗られます。
初音ミクの袖と髪の毛がくっついてしまっていますが、青色に塗ることで引き離すことが
出来ます。同様に頭と髪の毛や顔が離れてしまっているので今度はくっつくようにしています。
https://www.youtube.com/watch?v=VSownh2xeXE
Blender:ウェイトペイントモード
 ウェイトペイントモード
ポーズのUpArm.Lを選択後に「R」キーで手を水平にします。
切り残しの頂点があった為、線がくっついています。これについては後で修正します。
モデルを選択してから、「ウェイトペイントモード」に変更します。
Blender:ウェイトペイントモード
塗られたウェイトは色で表現されます。強い順に赤→黄→緑→水色→青の色で塗られます。
左上腕を動かしたことで、余分な後頭部も引きずられて延びてしまっています。
ウェイトペイントを使って青色にしていきます。
ツールシェルフ→ツールのブラシで半径を10px(こだわらない)のブレンドを「減算」にします。
左上腕以外に左下腕、左手を選択して「R」キーで向きを変えたりして引きずられる部分を減らします。
削れたところもありますが、残ってしまう部分もあります。残ったところは後でナイフ等で削ります。
Blender:ウェイトペイントモード
右腕側と足も同様に行います。足はあまり変わらないかも。
Blender:ポーズをメッシュに反映
オブジェクトモードではポーズした状態ですが、編集モードではポーズ前の状態のままになっています。
ポーズした状態に反映させます。
オブジェクトモードに戻して、プロパティエディタのヘッダのレンジアイコンを選択して、追加で
アーマーチェアを選択します。そして「適用」ボタンを押します。
Blender:ポーズをメッシュに反映(デフォルトポーズ)
手を広げた状態をデフォルトポーズにしないと、手を上げた状態に戻ってポーズがズレてしまいます。
ポーズモードにして、ポーズ→適用→デフォルトのポーズに適用を選択します。
オブジェクトモードに戻して、プロパティエディタのヘッダのレンジアイコンを選択して、追加で
アーマーチェアを選択します。
オブジェクトに「Armature」を選択されているのを確認して「適用」ボタンを押します。
Blender:余分な頂点を削除する
延びきってしまった頂点を削除します。
アウトライナーで「mesh」を選択して、「Armature」の目のアイコンを押してアーマーチェアを非表示
にします。
Blender:余分な頂点を削除する
辺選択にして、「B」キーで箱選択またはCtrlキーと押しながら左ドラッグによる投げ縄選択で
余分な線を選択してから、「X」キーで「辺」を選択して削除します。
あと、細い頂点も削除しておくといいでしょう。
Blender:ウェイトペイント
辺選択にして、「B」キーで箱選択またはCtrlキーと押しながら左ドラッグによる投げ縄選択で
余分な線を選択してから、「X」キーで「辺」を選択して削除します。
あと、細い頂点も削除しておくといいでしょう。
Blender:再アーマーチェア(メッシュに関連付け)
メッシュにアーマーチェアを関連付けが外れてしまうので、再度設定します。
アーマーチェアを選択またはアウトライナーで「Armature」選択してから「ポーズモード」にします。
ボーンを選択すると水色になります。「R」キーで各ボーンを回転させ、ポーズを変更してみましょう。
ポーズに合わせてメッシュが変形するようになりました。
Blender:再ウェイトペイントモード
右上腕を動かしたことで、余分な箇所がまだ引きずられて延びてしまっています。
ウェイトペイントを使って青色にしていきます。
ツールシェルフ→ツールのブラシで半径を10px(こだわらない)のブレンを「減算」にします。
右耳あたりから飛び出でいる線も手の向きを大きく変更してから、ウェイトペイントで塗れば消えます。
左腕側と足も同様に行います。
動かしたポーズを元に戻したい場合、ポーズ→トランスフォームをクリア→すべてを選択します。
Blender:IK(インバース・キネマティクス)を使う
 Auto IKを使う
Auto IKは自動的にIKを適応してくれます。
ツールシェルフ→オプション→ポーズオプションで「オートIK」にチェックを入れます。
ボーンを選択して、「G」キーで移動させると他のボーンも動きます。ESCキーで解除
オートIKにチェックを付けたり外したりして、違いを見てみましょう。
オートIKなし、手のみ動作 オートIKあり、体ごと動作
Blender:IK(インバース・キネマティクス)を使う
 IK(逆運動学)とは
IKとはインバース・キネマティクスの略です。
通常のボーンは、FKでフォワードキネマティクスの略です。
FKの場合は親が動くと子も動くという仕組みで普通に体を動かす時の感じです。
それと違い、IKは子を動かすとつられて親が動くという仕組みです。
誰かに手を持たれて動かされると、動かしているのは手だけなのに、肘も腕も肩も動くのと同じです。
IKとFKの違い
もっとも大きな違いのひとつが補完されたモーションです。
親子関係の有無によってIKは直線的に、FKは円弧的に補完されます。
Blender:アニメーションを付ける
メニューの「Default」から「Animation」に変更します。
ビューの前方向(Num + 1)で「フロント:平行投影」にします。
「ポーズモード」にしておきます。ここらで一旦、保存しておきましょう。
Blender:アニメーションを付ける
左右の手をおろします。
「UpArm.L」を右クリックして選択し「R」キーを押して回転させ、腕を下げます。
「UpArm.R」も同様に回転させて、反対側の腕を下げます。
「A」キーで全てのボーンを選択し、「I」キーで「位置/回転」で位置、回転キーを付けます。
上側のドーブシート)下側のグラフィックエディタに全てのボーン名とキーが表示されます。
Blender:アニメーションを付ける
時間を11フレームにするのですが、初期の単位が800と大きいので100くらいまで間隔を小さくします。
最初に右側のグレーの●を移動してください。最後に左側のグレーの●を少し移動します。
その後に、緑色の線を11フレームに移動させます。
Blender:アニメーションを付ける
自動キーフレームを使ってキーを作成します。
タイムラインのヘッダにある「自動キーフレーム」ボタンをクリックしてください。
「UpArm.L」を右クリックして選択し「R」キーを押して回転させ、腕を上げます。
11フレームにキーを表す黄色い菱型が表示されます。タイムラインをドラッグすると動きを確認できます。
Blender:アニメーションを付ける
21フレームに移動して、「UpArm.L」を右クリックして選択し「R」キーを押して回転させ、腕を下げます。
Blender:アニメーションを付ける
アニメーションをコピーします。
11フレーム目のキーを右クリックして選択し、21フレーム目のキーをShiftキーを押しながら追加選択します。
Ctrl + Cキー(MacはControl + C)を押してコピーします。
次に時間を31フレームにして、Ctrl + Vキー(MacはControl + V)を押して貼り付けます。
Blender:アニメーションを付ける
タイムラインの終了を41にします。
時間を1フレームに戻し、再生ボタンを押すと手を振るアニメーションができています。
タイムラインのヘッダにある「自動キーフレーム」ボタンをクリックして解除します。
Blender:テクスチャの修正
前回、少し穴が空いた部分を直したのを、UVエディタで見てみます。
3Dモデルを選択出来るように、アウトライナーにて「mesh」を選択して「編集モード」にします。
「A」キーで3Dモデルを全選択します。
Blender:テクスチャの修正
Infoのスクリーンレイアウトタイプを「Default」から「UV Editing」に変更します。
※テクスチャの絵が表示されない場合、「tex_0.jpg」のパスを正しく指定してください。
UVエディタを見てみると、線が飛び出ています。
これは穴を埋めただけでテクスチャは設定していないためです。
Blender:テクスチャの修正
線が飛び出ているのを修正します。
「G」キーで移動させてキャラクターの体に埋め込んでしまいましょう。他の線も同様にします。
Blender:Unity向けにエクスポート
Infoのスクリーンレイアウトタイプを「Default」に戻します。
ファイル→エクスポート→Autodesk FBX(.fbx)を選択します。
Blender:Unity向けにエクスポート
前方に「-Zが前方」、上に「Yが上」、アーマーチェアとメッシュを選択する。
全てのアクションにチェックが付いていること。
ファイル名「mario」を入力して、「FBXをエクスポート」ボタンを押下します。
Blender:Unityにインポート
Unityで新規プロジェクトを3Dで作成します。
Blender:Unityにインポート
BlenderでエクスポートしたFBXファイル「Mario.fbx」とテクスチャファイル(tex_0.jpg)を
一緒にAssetsフォルダにドラッグ&ドロップします。
Blender:Unityにインポート
アニメーションが付いているので、InspectorのAnimationsで「Import Animation」にチェックを付けます。
RigにてAnimation Typesを「Humanoid」にします。Configureボタンを押してください。
オールグリー
ンになったら
大成功!
エラー部分は
レッドになる。
失敗した場合
見直すか最悪
Humanoidから
Generic等に
変更するとい
いです。
Blender:Unityにインポート
InspectorのmarioAvataerの場合、HierarchyとSceneは下図となっています。「Done」ボタンで閉じます。
Blender:Unityにインポート
marioAvaterを選択し、Muscles & Setings にて「Open Close」等のスライダーで動作を確認して見ましょう。
参照:ユニティちゃんのためにモーションを作成、適用する
Blender:Unityにインポート
Sceneにドラッグ&ドロップします。MarioのPositionは全て「0」にしておきます。
Marioをギズモで方向を変更して、正面に変更します。
Hierarchyにて「Main Camera」を選択し、「Field of View」を「20」くらいにしておきます。
Blender:Unityにインポート
Sceneにドラッグ&ドロップします。MarioのPositionは全て「0」にしておきます。
Marioをギズモで方向を変更して、正面に変更します。
Hierarchyにて「Main Camera」を選択し、「Field of View」を「20」くらいにしておきます。
Blender:Unityでアニメーション作成
既に、左手を上げ下げするアニメーションの「Armature|ArmatureAction」がインポートされています。
これを使用するには、アニメーターコントローラを作成します。
Project→Create→Animator Controllerで名前を「mario」として作成します。
アニメーションの「Armature|ArmatureAction」をAnimatorタブにドラッグ&ドロップします。
ドラッグ&ド
ロップします。
Blender:Unityでアニメーション作成
HierarchyでMarioを選択します。InspectorのAnimator Controllerに「mario」をセットします。
Playボタンを押してみると、左手を上げ下げするアニメーションが動きます。
但し、向きが反対側になってしまっています。
Blender:Unityでアニメーション作成
向きが反対なので正面を向くように変更します。
Inspectorにて「Rotation」の「Y 180」にしてください。これで正面を向くようになります。
Blender:Unityでアニメーション作成(Asset Store)
Assets Storeのアニメーションを採用してみます。
今回は『Locomotion Starter Kit』というものをダウンロードして使うことにします。
参照:Unityで、3DモデルのUnityちゃんをグリグリ動かす
Blender:Unityでアニメーション作成(Asset Store)
InspectorでAnimator Controllerを「Locomotion」に変更します。
HierarchyのMarioに、Assets→Scripts→LocomotionPlayer.csをアタッチします。
Blender:Unityでアニメーション作成(Asset Store)
Playボタンで再生します。矢印キーで走るなどのアニメーションが行われます。
Blender:Unityでアニメーション作成(踊ってみた)
UnityとBlenderハンズオンをやろうと思ったきっかけは、下記サイトを見たからです。
ここまでは無理なので、せめてMarioを踊らせてみます。
【ユニティちゃん】HGベアッガイさんが踊ってみた【3Dキャプチャ】
Blender:Unityでアニメーション作成(踊ってみた)
このダンス・アニメーションは、UnityChan公式サイトからダウンロードができます。
ユニティちゃんライブステージ! -Candy Rock Star-
ダウンロードしたフォルダ内(unitychan-crs-master¥Assets¥UnityChan¥Animations)に
下記の3つのfbxファイルがあります。
C86unitychan_001_SAK01_Final.fbx
C86unitychan_002_SIM01_Final.fbx
C86unitychan_003_NOT01_Final.fbx
使用するのは「C86unitychan_002_SIM01_Final.fbx」でいいようです。
他は素材として用意されているだけ?
http://dennou-note.blogspot.jp/2014/12/candy-rock-star-05.html
同様にBGMは、フォルダ内(unitychan-crs-master¥Assets¥UniteInTheSky)に
Unite In The Sky (full).mp3 と Unite In The Sky (short).mp3 があります。
Blender:Unityでアニメーション作成(踊ってみた)
Assetsフォルダ内に、下記2つを入れます。
1. C86unitychan_002_SIM01_Final.fbx
2. Unite In The Sky (full).mp3
C86unitychan_002_SIM01_Finalを選択し、Inspectorにて
RigのAnimation Typeを「Humanoid」に変更します。
Blender:Unityでアニメーション作成(踊ってみた)
Project→Create→Animator Controllerで名前を「marioDance」として作成します。
アニメーションの「Take 001」をAnimatorタブにドラッグ&ドロップします。
アニメーションクリップの「Take 001」を選択し、Inspectorの下のプレビュー画面を上に引っ張り出します。
プレビュー画面内の再生ボタンを押して、ヒューマンがダンスアニメーションするのを確認します。
ドラッグ&ド
ロップします。
Blender:Unityでアニメーション作成(踊ってみた)
Hierarchyで「mario」を選択し、InspectorでAnimator Controllerに「marioDance」をセットします。
BGMを付けるため、「Unite In The Sky (full).mp3」をHierarchyで「mario」にドラッグ&ドロップします。
Blender:Unityでアニメーション作成(踊ってみた)
デスクトップの一部分を録画してアニメーションGIFを作成する「ScreenToGif」を使って、
先頭から1分程度をGifアニメーションにしました。http://p.twpl.jp/show/orig/z6zfN
ご清聴ありがとうございました!

More Related Content

What's hot

HoloLensハンズオン@ももち浜TECHカフェ vol.2
HoloLensハンズオン@ももち浜TECHカフェ vol.2HoloLensハンズオン@ももち浜TECHカフェ vol.2
HoloLensハンズオン@ももち浜TECHカフェ vol.2
Takashi Yoshinaga
 
「もののけ大戦“陣”」製作事例
「もののけ大戦“陣”」製作事例「もののけ大戦“陣”」製作事例
「もののけ大戦“陣”」製作事例Ryohei Tokimura
 
AI x OpenCV x WebAR: Selfie Segmentationを使ってみよう
AI x OpenCV x WebAR: Selfie Segmentationを使ってみようAI x OpenCV x WebAR: Selfie Segmentationを使ってみよう
AI x OpenCV x WebAR: Selfie Segmentationを使ってみよう
Takashi Yoshinaga
 
「宴」実装時に得られたUnityプログラムノウハウ
「宴」実装時に得られたUnityプログラムノウハウ「宴」実装時に得られたUnityプログラムノウハウ
「宴」実装時に得られたUnityプログラムノウハウ
Ryohei Tokimura
 
Unity × graphics × effects
Unity × graphics × effectsUnity × graphics × effects
Unity × graphics × effects
Hironori Sugino
 
【Unityの集い in大阪】LT:Unity認定試験(プログラマ)を受験しました
【Unityの集い in大阪】LT:Unity認定試験(プログラマ)を受験しました【Unityの集い in大阪】LT:Unity認定試験(プログラマ)を受験しました
【Unityの集い in大阪】LT:Unity認定試験(プログラマ)を受験しました
Unity Technologies Japan K.K.
 
HoloLensハンズオン:AirTap & SpatialMapping編
HoloLensハンズオン:AirTap & SpatialMapping編HoloLensハンズオン:AirTap & SpatialMapping編
HoloLensハンズオン:AirTap & SpatialMapping編
Takashi Yoshinaga
 
iPhoneアプリ開発の歩き方〜Swift編〜
iPhoneアプリ開発の歩き方〜Swift編〜iPhoneアプリ開発の歩き方〜Swift編〜
iPhoneアプリ開発の歩き方〜Swift編〜
Yusuke SAITO
 
ARコンテンツ作成勉強会:使ってみようSmartAR 基礎から支援ツール活用まで
ARコンテンツ作成勉強会:使ってみようSmartAR  基礎から支援ツール活用までARコンテンツ作成勉強会:使ってみようSmartAR  基礎から支援ツール活用まで
ARコンテンツ作成勉強会:使ってみようSmartAR 基礎から支援ツール活用まで
Takashi Yoshinaga
 
HoloLensハンズオン:Gaze,Tap And Hold編
HoloLensハンズオン:Gaze,Tap And Hold編HoloLensハンズオン:Gaze,Tap And Hold編
HoloLensハンズオン:Gaze,Tap And Hold編
Takashi Yoshinaga
 
人工知能ハンズオン
人工知能ハンズオン人工知能ハンズオン
人工知能ハンズオン
yaju88
 
はじめようARCore
はじめようARCoreはじめようARCore
はじめようARCore
Takashi Yoshinaga
 
Unity恐くないよ!!
Unity恐くないよ!!Unity恐くないよ!!
Unity恐くないよ!!
nakamura001
 
第1回 【初心者向け】Unity+Oculus Riftで次世代の3Dゲームを作って感じるワークショップ
第1回 【初心者向け】Unity+Oculus Riftで次世代の3Dゲームを作って感じるワークショップ第1回 【初心者向け】Unity+Oculus Riftで次世代の3Dゲームを作って感じるワークショップ
第1回 【初心者向け】Unity+Oculus Riftで次世代の3Dゲームを作って感じるワークショップ
Yuichi Ishii
 
【Unite 2018 Tokyo】エディター拡張マニアクス2018
【Unite 2018 Tokyo】エディター拡張マニアクス2018【Unite 2018 Tokyo】エディター拡張マニアクス2018
【Unite 2018 Tokyo】エディター拡張マニアクス2018
Unity Technologies Japan K.K.
 
Oculus 体験・勉強会「VRコンテンツ制作入門」
Oculus 体験・勉強会「VRコンテンツ制作入門」Oculus 体験・勉強会「VRコンテンツ制作入門」
Oculus 体験・勉強会「VRコンテンツ制作入門」
Hiromichi Yamada
 
UnityとOculus Riftでフルダイブなゲームを作ってみた話
UnityとOculus Riftでフルダイブなゲームを作ってみた話UnityとOculus Riftでフルダイブなゲームを作ってみた話
UnityとOculus Riftでフルダイブなゲームを作ってみた話
Shohei Yamamoto
 
ハリウッド流映画脚本講座・特別編 「ゲーム」は「キャラクター」がドライブする 〜ヒットする、原作付きキャラクターゲームシナリオの作り方〜
ハリウッド流映画脚本講座・特別編「ゲーム」は「キャラクター」がドライブする〜ヒットする、原作付きキャラクターゲームシナリオの作り方〜ハリウッド流映画脚本講座・特別編「ゲーム」は「キャラクター」がドライブする〜ヒットする、原作付きキャラクターゲームシナリオの作り方〜
ハリウッド流映画脚本講座・特別編 「ゲーム」は「キャラクター」がドライブする 〜ヒットする、原作付きキャラクターゲームシナリオの作り方〜
小林 信行
 
Unity×HTMLで作るiPhone オンラインゲーム開発事例
Unity×HTMLで作るiPhone オンラインゲーム開発事例Unity×HTMLで作るiPhone オンラインゲーム開発事例
Unity×HTMLで作るiPhone オンラインゲーム開発事例
Kouji Hosoda
 
ゲームデザイナーのためのキャラクター表現&コンセプトメイキング:抜粋版
ゲームデザイナーのためのキャラクター表現&コンセプトメイキング:抜粋版ゲームデザイナーのためのキャラクター表現&コンセプトメイキング:抜粋版
ゲームデザイナーのためのキャラクター表現&コンセプトメイキング:抜粋版
小林 信行
 

What's hot (20)

HoloLensハンズオン@ももち浜TECHカフェ vol.2
HoloLensハンズオン@ももち浜TECHカフェ vol.2HoloLensハンズオン@ももち浜TECHカフェ vol.2
HoloLensハンズオン@ももち浜TECHカフェ vol.2
 
「もののけ大戦“陣”」製作事例
「もののけ大戦“陣”」製作事例「もののけ大戦“陣”」製作事例
「もののけ大戦“陣”」製作事例
 
AI x OpenCV x WebAR: Selfie Segmentationを使ってみよう
AI x OpenCV x WebAR: Selfie Segmentationを使ってみようAI x OpenCV x WebAR: Selfie Segmentationを使ってみよう
AI x OpenCV x WebAR: Selfie Segmentationを使ってみよう
 
「宴」実装時に得られたUnityプログラムノウハウ
「宴」実装時に得られたUnityプログラムノウハウ「宴」実装時に得られたUnityプログラムノウハウ
「宴」実装時に得られたUnityプログラムノウハウ
 
Unity × graphics × effects
Unity × graphics × effectsUnity × graphics × effects
Unity × graphics × effects
 
【Unityの集い in大阪】LT:Unity認定試験(プログラマ)を受験しました
【Unityの集い in大阪】LT:Unity認定試験(プログラマ)を受験しました【Unityの集い in大阪】LT:Unity認定試験(プログラマ)を受験しました
【Unityの集い in大阪】LT:Unity認定試験(プログラマ)を受験しました
 
HoloLensハンズオン:AirTap & SpatialMapping編
HoloLensハンズオン:AirTap & SpatialMapping編HoloLensハンズオン:AirTap & SpatialMapping編
HoloLensハンズオン:AirTap & SpatialMapping編
 
iPhoneアプリ開発の歩き方〜Swift編〜
iPhoneアプリ開発の歩き方〜Swift編〜iPhoneアプリ開発の歩き方〜Swift編〜
iPhoneアプリ開発の歩き方〜Swift編〜
 
ARコンテンツ作成勉強会:使ってみようSmartAR 基礎から支援ツール活用まで
ARコンテンツ作成勉強会:使ってみようSmartAR  基礎から支援ツール活用までARコンテンツ作成勉強会:使ってみようSmartAR  基礎から支援ツール活用まで
ARコンテンツ作成勉強会:使ってみようSmartAR 基礎から支援ツール活用まで
 
HoloLensハンズオン:Gaze,Tap And Hold編
HoloLensハンズオン:Gaze,Tap And Hold編HoloLensハンズオン:Gaze,Tap And Hold編
HoloLensハンズオン:Gaze,Tap And Hold編
 
人工知能ハンズオン
人工知能ハンズオン人工知能ハンズオン
人工知能ハンズオン
 
はじめようARCore
はじめようARCoreはじめようARCore
はじめようARCore
 
Unity恐くないよ!!
Unity恐くないよ!!Unity恐くないよ!!
Unity恐くないよ!!
 
第1回 【初心者向け】Unity+Oculus Riftで次世代の3Dゲームを作って感じるワークショップ
第1回 【初心者向け】Unity+Oculus Riftで次世代の3Dゲームを作って感じるワークショップ第1回 【初心者向け】Unity+Oculus Riftで次世代の3Dゲームを作って感じるワークショップ
第1回 【初心者向け】Unity+Oculus Riftで次世代の3Dゲームを作って感じるワークショップ
 
【Unite 2018 Tokyo】エディター拡張マニアクス2018
【Unite 2018 Tokyo】エディター拡張マニアクス2018【Unite 2018 Tokyo】エディター拡張マニアクス2018
【Unite 2018 Tokyo】エディター拡張マニアクス2018
 
Oculus 体験・勉強会「VRコンテンツ制作入門」
Oculus 体験・勉強会「VRコンテンツ制作入門」Oculus 体験・勉強会「VRコンテンツ制作入門」
Oculus 体験・勉強会「VRコンテンツ制作入門」
 
UnityとOculus Riftでフルダイブなゲームを作ってみた話
UnityとOculus Riftでフルダイブなゲームを作ってみた話UnityとOculus Riftでフルダイブなゲームを作ってみた話
UnityとOculus Riftでフルダイブなゲームを作ってみた話
 
ハリウッド流映画脚本講座・特別編 「ゲーム」は「キャラクター」がドライブする 〜ヒットする、原作付きキャラクターゲームシナリオの作り方〜
ハリウッド流映画脚本講座・特別編「ゲーム」は「キャラクター」がドライブする〜ヒットする、原作付きキャラクターゲームシナリオの作り方〜ハリウッド流映画脚本講座・特別編「ゲーム」は「キャラクター」がドライブする〜ヒットする、原作付きキャラクターゲームシナリオの作り方〜
ハリウッド流映画脚本講座・特別編 「ゲーム」は「キャラクター」がドライブする 〜ヒットする、原作付きキャラクターゲームシナリオの作り方〜
 
Unity×HTMLで作るiPhone オンラインゲーム開発事例
Unity×HTMLで作るiPhone オンラインゲーム開発事例Unity×HTMLで作るiPhone オンラインゲーム開発事例
Unity×HTMLで作るiPhone オンラインゲーム開発事例
 
ゲームデザイナーのためのキャラクター表現&コンセプトメイキング:抜粋版
ゲームデザイナーのためのキャラクター表現&コンセプトメイキング:抜粋版ゲームデザイナーのためのキャラクター表現&コンセプトメイキング:抜粋版
ゲームデザイナーのためのキャラクター表現&コンセプトメイキング:抜粋版
 

Viewers also liked

Munin manager - monitering casual talk #2
Munin manager - monitering casual talk #2Munin manager - monitering casual talk #2
Munin manager - monitering casual talk #2Ryo Kuroda
 
プログラミングHaskell(第2章)
プログラミングHaskell(第2章)プログラミングHaskell(第2章)
プログラミングHaskell(第2章)yaju88
 
公開型研修を通して社員一人ひとりの強みや個性を活かす|株式会社富士通ソーシアルサイエンスラボラトリ様の導入事例|アクティブアンドカンパニー
公開型研修を通して社員一人ひとりの強みや個性を活かす|株式会社富士通ソーシアルサイエンスラボラトリ様の導入事例|アクティブアンドカンパニー公開型研修を通して社員一人ひとりの強みや個性を活かす|株式会社富士通ソーシアルサイエンスラボラトリ様の導入事例|アクティブアンドカンパニー
公開型研修を通して社員一人ひとりの強みや個性を活かす|株式会社富士通ソーシアルサイエンスラボラトリ様の導入事例|アクティブアンドカンパニー
順也 大野
 
BlenderのAlembic状況(2016/6/26)
BlenderのAlembic状況(2016/6/26)BlenderのAlembic状況(2016/6/26)
BlenderのAlembic状況(2016/6/26)
Kazuma Hatta
 
Raytracing4
Raytracing4 Raytracing4
Raytracing4
Kazuma Hatta
 
Muninではじめる実践★リソース監視 -俺のサーバがこんなに重いはずがない、を乗り切るために-
Muninではじめる実践★リソース監視 -俺のサーバがこんなに重いはずがない、を乗り切るために-Muninではじめる実践★リソース監視 -俺のサーバがこんなに重いはずがない、を乗り切るために-
Muninではじめる実践★リソース監視 -俺のサーバがこんなに重いはずがない、を乗り切るために-
Masahito Zembutsu
 
テスト設計のタイミングと手法の変更による、品質向上と生産性向上 順序を入れ替え繰り返し考える
テスト設計のタイミングと手法の変更による、品質向上と生産性向上 順序を入れ替え繰り返し考えるテスト設計のタイミングと手法の変更による、品質向上と生産性向上 順序を入れ替え繰り返し考える
テスト設計のタイミングと手法の変更による、品質向上と生産性向上 順序を入れ替え繰り返し考える
HIDEKAZU MATSUURA
 
Windows Azureで Webサーバーを再発明してみる
Windows AzureでWebサーバーを再発明してみるWindows AzureでWebサーバーを再発明してみる
Windows Azureで Webサーバーを再発明してみるSunao Tomita
 
乱数のたのしい話
乱数のたのしい話乱数のたのしい話
乱数のたのしい話
なおき きしだ
 
Windowsの画面スケーリングを きちんと理解しよう
Windowsの画面スケーリングをきちんと理解しようWindowsの画面スケーリングをきちんと理解しよう
Windowsの画面スケーリングを きちんと理解しようYuya Yamaki
 
週末プログラミングで作るカジュアルゲーム~シューティング編~
週末プログラミングで作るカジュアルゲーム~シューティング編~週末プログラミングで作るカジュアルゲーム~シューティング編~
週末プログラミングで作るカジュアルゲーム~シューティング編~
Nohina Hidenari
 
Unityでつくるデジタルサイネージ
UnityでつくるデジタルサイネージUnityでつくるデジタルサイネージ
UnityでつくるデジタルサイネージNohina Hidenari
 
最新Mayaを使ったUnity 5向けキャラクターセットアップセミナー&使いこなしTips
最新Mayaを使ったUnity 5向けキャラクターセットアップセミナー&使いこなしTips最新Mayaを使ったUnity 5向けキャラクターセットアップセミナー&使いこなしTips
最新Mayaを使ったUnity 5向けキャラクターセットアップセミナー&使いこなしTips
小林 信行
 

Viewers also liked (13)

Munin manager - monitering casual talk #2
Munin manager - monitering casual talk #2Munin manager - monitering casual talk #2
Munin manager - monitering casual talk #2
 
プログラミングHaskell(第2章)
プログラミングHaskell(第2章)プログラミングHaskell(第2章)
プログラミングHaskell(第2章)
 
公開型研修を通して社員一人ひとりの強みや個性を活かす|株式会社富士通ソーシアルサイエンスラボラトリ様の導入事例|アクティブアンドカンパニー
公開型研修を通して社員一人ひとりの強みや個性を活かす|株式会社富士通ソーシアルサイエンスラボラトリ様の導入事例|アクティブアンドカンパニー公開型研修を通して社員一人ひとりの強みや個性を活かす|株式会社富士通ソーシアルサイエンスラボラトリ様の導入事例|アクティブアンドカンパニー
公開型研修を通して社員一人ひとりの強みや個性を活かす|株式会社富士通ソーシアルサイエンスラボラトリ様の導入事例|アクティブアンドカンパニー
 
BlenderのAlembic状況(2016/6/26)
BlenderのAlembic状況(2016/6/26)BlenderのAlembic状況(2016/6/26)
BlenderのAlembic状況(2016/6/26)
 
Raytracing4
Raytracing4 Raytracing4
Raytracing4
 
Muninではじめる実践★リソース監視 -俺のサーバがこんなに重いはずがない、を乗り切るために-
Muninではじめる実践★リソース監視 -俺のサーバがこんなに重いはずがない、を乗り切るために-Muninではじめる実践★リソース監視 -俺のサーバがこんなに重いはずがない、を乗り切るために-
Muninではじめる実践★リソース監視 -俺のサーバがこんなに重いはずがない、を乗り切るために-
 
テスト設計のタイミングと手法の変更による、品質向上と生産性向上 順序を入れ替え繰り返し考える
テスト設計のタイミングと手法の変更による、品質向上と生産性向上 順序を入れ替え繰り返し考えるテスト設計のタイミングと手法の変更による、品質向上と生産性向上 順序を入れ替え繰り返し考える
テスト設計のタイミングと手法の変更による、品質向上と生産性向上 順序を入れ替え繰り返し考える
 
Windows Azureで Webサーバーを再発明してみる
Windows AzureでWebサーバーを再発明してみるWindows AzureでWebサーバーを再発明してみる
Windows Azureで Webサーバーを再発明してみる
 
乱数のたのしい話
乱数のたのしい話乱数のたのしい話
乱数のたのしい話
 
Windowsの画面スケーリングを きちんと理解しよう
Windowsの画面スケーリングをきちんと理解しようWindowsの画面スケーリングをきちんと理解しよう
Windowsの画面スケーリングを きちんと理解しよう
 
週末プログラミングで作るカジュアルゲーム~シューティング編~
週末プログラミングで作るカジュアルゲーム~シューティング編~週末プログラミングで作るカジュアルゲーム~シューティング編~
週末プログラミングで作るカジュアルゲーム~シューティング編~
 
Unityでつくるデジタルサイネージ
UnityでつくるデジタルサイネージUnityでつくるデジタルサイネージ
Unityでつくるデジタルサイネージ
 
最新Mayaを使ったUnity 5向けキャラクターセットアップセミナー&使いこなしTips
最新Mayaを使ったUnity 5向けキャラクターセットアップセミナー&使いこなしTips最新Mayaを使ったUnity 5向けキャラクターセットアップセミナー&使いこなしTips
最新Mayaを使ったUnity 5向けキャラクターセットアップセミナー&使いこなしTips
 

Similar to UnityとBlenderハンズオン第10章

Swift Study Vol.4
Swift Study Vol.4Swift Study Vol.4
Swift Study Vol.4
Nagamine Hiromasa
 
Unityの夕べ in Fukuoka
Unityの夕べ in FukuokaUnityの夕べ in Fukuoka
Unityの夕べ in Fukuoka
Shinobu Izumi
 
モバイル向けクロスプラットフォーム開発ツール Xamarin の概要とその利点
モバイル向けクロスプラットフォーム開発ツール Xamarin の概要とその利点モバイル向けクロスプラットフォーム開発ツール Xamarin の概要とその利点
モバイル向けクロスプラットフォーム開発ツール Xamarin の概要とその利点
Yoshito Tabuchi
 
MRTK V2.3 Spatial Awareness
MRTK V2.3 Spatial AwarenessMRTK V2.3 Spatial Awareness
MRTK V2.3 Spatial Awareness
Yuichi Ishii
 
HoloLens 2Dでもここまでできる
HoloLens 2DでもここまでできるHoloLens 2Dでもここまでできる
HoloLens 2Dでもここまでできる
Akira Hatsune
 
HoloLensハンズオン:ハンドトラッキング&音声入力編
HoloLensハンズオン:ハンドトラッキング&音声入力編HoloLensハンズオン:ハンドトラッキング&音声入力編
HoloLensハンズオン:ハンドトラッキング&音声入力編
Takashi Yoshinaga
 
Mulvery@沖縄Ruby会議02
Mulvery@沖縄Ruby会議02Mulvery@沖縄Ruby会議02
Mulvery@沖縄Ruby会議02
Daichi Teruya
 
Leap Motion を用いた数学教材開発の例
Leap Motion を用いた数学教材開発の例Leap Motion を用いた数学教材開発の例
Leap Motion を用いた数学教材開発の例
Yukinori KITADAI
 
Mixed Reality Toolkit V2.4.0の機能 ~ Progress Indicator ~
Mixed Reality Toolkit V2.4.0の機能 ~ Progress Indicator ~Mixed Reality Toolkit V2.4.0の機能 ~ Progress Indicator ~
Mixed Reality Toolkit V2.4.0の機能 ~ Progress Indicator ~
Takahiro Miyaura
 
日本Androidの会のハンズオンセミナー資料(20130315)
日本Androidの会のハンズオンセミナー資料(20130315)日本Androidの会のハンズオンセミナー資料(20130315)
日本Androidの会のハンズオンセミナー資料(20130315)eijikushida
 
MRTK-Unreal(UX Tools) を利用した HoloLens 2 アプリ開発 | UNREAL FEST EXTREME 2020 WINTER
MRTK-Unreal(UX Tools) を利用した HoloLens 2 アプリ開発 | UNREAL FEST EXTREME 2020 WINTERMRTK-Unreal(UX Tools) を利用した HoloLens 2 アプリ開発 | UNREAL FEST EXTREME 2020 WINTER
MRTK-Unreal(UX Tools) を利用した HoloLens 2 アプリ開発 | UNREAL FEST EXTREME 2020 WINTER
エピック・ゲームズ・ジャパン Epic Games Japan
 
Cordovaコトハジメ( Html5fun×senchUG )
Cordovaコトハジメ( Html5fun×senchUG )Cordovaコトハジメ( Html5fun×senchUG )
Cordovaコトハジメ( Html5fun×senchUG )
Masayuki Abe
 
スマートフォン勉強会関西#16(iOS,Android,WP7マルチタッチ)
スマートフォン勉強会関西#16(iOS,Android,WP7マルチタッチ)スマートフォン勉強会関西#16(iOS,Android,WP7マルチタッチ)
スマートフォン勉強会関西#16(iOS,Android,WP7マルチタッチ)Tomonori Ohba
 
Webアプリのシナリオテスト自動化を運用に乗せるまでの10のステップ
Webアプリのシナリオテスト自動化を運用に乗せるまでの10のステップWebアプリのシナリオテスト自動化を運用に乗せるまでの10のステップ
Webアプリのシナリオテスト自動化を運用に乗せるまでの10のステップ
Naoki Iwami
 
ルーター自前実装の話
ルーター自前実装の話ルーター自前実装の話
ルーター自前実装の話
Kazushi Kawamura
 
Programming24 第2回androidアプリ勉強会
Programming24 第2回androidアプリ勉強会Programming24 第2回androidアプリ勉強会
Programming24 第2回androidアプリ勉強会codeal
 
レスポンシブWebデザイン【発展編】
レスポンシブWebデザイン【発展編】レスポンシブWebデザイン【発展編】
レスポンシブWebデザイン【発展編】
Yasuhito Yabe
 
CordovaでAngularJSアプリ開発
CordovaでAngularJSアプリ開発CordovaでAngularJSアプリ開発
CordovaでAngularJSアプリ開発
アシアル株式会社
 
ボット開発でも DevOps! BotBuilder のテスト手法
ボット開発でも DevOps! BotBuilder のテスト手法ボット開発でも DevOps! BotBuilder のテスト手法
ボット開発でも DevOps! BotBuilder のテスト手法
Kenichiro Nakamura
 
cocos2d-xにおけるBox2Dの利用方法および便利なツール
cocos2d-xにおけるBox2Dの利用方法および便利なツールcocos2d-xにおけるBox2Dの利用方法および便利なツール
cocos2d-xにおけるBox2Dの利用方法および便利なツールTomoaki Shimizu
 

Similar to UnityとBlenderハンズオン第10章 (20)

Swift Study Vol.4
Swift Study Vol.4Swift Study Vol.4
Swift Study Vol.4
 
Unityの夕べ in Fukuoka
Unityの夕べ in FukuokaUnityの夕べ in Fukuoka
Unityの夕べ in Fukuoka
 
モバイル向けクロスプラットフォーム開発ツール Xamarin の概要とその利点
モバイル向けクロスプラットフォーム開発ツール Xamarin の概要とその利点モバイル向けクロスプラットフォーム開発ツール Xamarin の概要とその利点
モバイル向けクロスプラットフォーム開発ツール Xamarin の概要とその利点
 
MRTK V2.3 Spatial Awareness
MRTK V2.3 Spatial AwarenessMRTK V2.3 Spatial Awareness
MRTK V2.3 Spatial Awareness
 
HoloLens 2Dでもここまでできる
HoloLens 2DでもここまでできるHoloLens 2Dでもここまでできる
HoloLens 2Dでもここまでできる
 
HoloLensハンズオン:ハンドトラッキング&音声入力編
HoloLensハンズオン:ハンドトラッキング&音声入力編HoloLensハンズオン:ハンドトラッキング&音声入力編
HoloLensハンズオン:ハンドトラッキング&音声入力編
 
Mulvery@沖縄Ruby会議02
Mulvery@沖縄Ruby会議02Mulvery@沖縄Ruby会議02
Mulvery@沖縄Ruby会議02
 
Leap Motion を用いた数学教材開発の例
Leap Motion を用いた数学教材開発の例Leap Motion を用いた数学教材開発の例
Leap Motion を用いた数学教材開発の例
 
Mixed Reality Toolkit V2.4.0の機能 ~ Progress Indicator ~
Mixed Reality Toolkit V2.4.0の機能 ~ Progress Indicator ~Mixed Reality Toolkit V2.4.0の機能 ~ Progress Indicator ~
Mixed Reality Toolkit V2.4.0の機能 ~ Progress Indicator ~
 
日本Androidの会のハンズオンセミナー資料(20130315)
日本Androidの会のハンズオンセミナー資料(20130315)日本Androidの会のハンズオンセミナー資料(20130315)
日本Androidの会のハンズオンセミナー資料(20130315)
 
MRTK-Unreal(UX Tools) を利用した HoloLens 2 アプリ開発 | UNREAL FEST EXTREME 2020 WINTER
MRTK-Unreal(UX Tools) を利用した HoloLens 2 アプリ開発 | UNREAL FEST EXTREME 2020 WINTERMRTK-Unreal(UX Tools) を利用した HoloLens 2 アプリ開発 | UNREAL FEST EXTREME 2020 WINTER
MRTK-Unreal(UX Tools) を利用した HoloLens 2 アプリ開発 | UNREAL FEST EXTREME 2020 WINTER
 
Cordovaコトハジメ( Html5fun×senchUG )
Cordovaコトハジメ( Html5fun×senchUG )Cordovaコトハジメ( Html5fun×senchUG )
Cordovaコトハジメ( Html5fun×senchUG )
 
スマートフォン勉強会関西#16(iOS,Android,WP7マルチタッチ)
スマートフォン勉強会関西#16(iOS,Android,WP7マルチタッチ)スマートフォン勉強会関西#16(iOS,Android,WP7マルチタッチ)
スマートフォン勉強会関西#16(iOS,Android,WP7マルチタッチ)
 
Webアプリのシナリオテスト自動化を運用に乗せるまでの10のステップ
Webアプリのシナリオテスト自動化を運用に乗せるまでの10のステップWebアプリのシナリオテスト自動化を運用に乗せるまでの10のステップ
Webアプリのシナリオテスト自動化を運用に乗せるまでの10のステップ
 
ルーター自前実装の話
ルーター自前実装の話ルーター自前実装の話
ルーター自前実装の話
 
Programming24 第2回androidアプリ勉強会
Programming24 第2回androidアプリ勉強会Programming24 第2回androidアプリ勉強会
Programming24 第2回androidアプリ勉強会
 
レスポンシブWebデザイン【発展編】
レスポンシブWebデザイン【発展編】レスポンシブWebデザイン【発展編】
レスポンシブWebデザイン【発展編】
 
CordovaでAngularJSアプリ開発
CordovaでAngularJSアプリ開発CordovaでAngularJSアプリ開発
CordovaでAngularJSアプリ開発
 
ボット開発でも DevOps! BotBuilder のテスト手法
ボット開発でも DevOps! BotBuilder のテスト手法ボット開発でも DevOps! BotBuilder のテスト手法
ボット開発でも DevOps! BotBuilder のテスト手法
 
cocos2d-xにおけるBox2Dの利用方法および便利なツール
cocos2d-xにおけるBox2Dの利用方法および便利なツールcocos2d-xにおけるBox2Dの利用方法および便利なツール
cocos2d-xにおけるBox2Dの利用方法および便利なツール
 

More from yaju88

数学史 黎明期
数学史 黎明期数学史 黎明期
数学史 黎明期
yaju88
 
TensorFlowによるFizz Buzz
TensorFlowによるFizz BuzzTensorFlowによるFizz Buzz
TensorFlowによるFizz Buzz
yaju88
 
実践コンピュータビジョン 9章 画像の領域分割
実践コンピュータビジョン 9章 画像の領域分割実践コンピュータビジョン 9章 画像の領域分割
実践コンピュータビジョン 9章 画像の領域分割
yaju88
 
実践コンピュータビジョン 3章 画像間の写像
実践コンピュータビジョン 3章 画像間の写像実践コンピュータビジョン 3章 画像間の写像
実践コンピュータビジョン 3章 画像間の写像
yaju88
 
サザエさんのじゃんけん データ分析
サザエさんのじゃんけん データ分析サザエさんのじゃんけん データ分析
サザエさんのじゃんけん データ分析
yaju88
 
静岡Developers勉強会 入門機械学習
静岡Developers勉強会 入門機械学習静岡Developers勉強会 入門機械学習
静岡Developers勉強会 入門機械学習
yaju88
 
JavaScriptの正規表現
JavaScriptの正規表現JavaScriptの正規表現
JavaScriptの正規表現
yaju88
 
Windows8 最新技術動向
Windows8 最新技術動向Windows8 最新技術動向
Windows8 最新技術動向
yaju88
 
静岡Developers勉強会 HTML5&CSS3
静岡Developers勉強会 HTML5&CSS3静岡Developers勉強会 HTML5&CSS3
静岡Developers勉強会 HTML5&CSS3
yaju88
 
プログラミングHaskell(第1章)
プログラミングHaskell(第1章)プログラミングHaskell(第1章)
プログラミングHaskell(第1章)yaju88
 
設計時の見落とし
設計時の見落とし設計時の見落とし
設計時の見落としyaju88
 
掲示板を見よう
掲示板を見よう掲示板を見よう
掲示板を見ようyaju88
 
北斗の拳の世界をオブジェクト指向で
北斗の拳の世界をオブジェクト指向で北斗の拳の世界をオブジェクト指向で
北斗の拳の世界をオブジェクト指向でyaju88
 
ドラえもんの世界をオブジェクト指向で
ドラえもんの世界をオブジェクト指向でドラえもんの世界をオブジェクト指向で
ドラえもんの世界をオブジェクト指向でyaju88
 
漢字の成り立ち
漢字の成り立ち漢字の成り立ち
漢字の成り立ちyaju88
 
データセンターVs消費電力
データセンターVs消費電力データセンターVs消費電力
データセンターVs消費電力yaju88
 

More from yaju88 (16)

数学史 黎明期
数学史 黎明期数学史 黎明期
数学史 黎明期
 
TensorFlowによるFizz Buzz
TensorFlowによるFizz BuzzTensorFlowによるFizz Buzz
TensorFlowによるFizz Buzz
 
実践コンピュータビジョン 9章 画像の領域分割
実践コンピュータビジョン 9章 画像の領域分割実践コンピュータビジョン 9章 画像の領域分割
実践コンピュータビジョン 9章 画像の領域分割
 
実践コンピュータビジョン 3章 画像間の写像
実践コンピュータビジョン 3章 画像間の写像実践コンピュータビジョン 3章 画像間の写像
実践コンピュータビジョン 3章 画像間の写像
 
サザエさんのじゃんけん データ分析
サザエさんのじゃんけん データ分析サザエさんのじゃんけん データ分析
サザエさんのじゃんけん データ分析
 
静岡Developers勉強会 入門機械学習
静岡Developers勉強会 入門機械学習静岡Developers勉強会 入門機械学習
静岡Developers勉強会 入門機械学習
 
JavaScriptの正規表現
JavaScriptの正規表現JavaScriptの正規表現
JavaScriptの正規表現
 
Windows8 最新技術動向
Windows8 最新技術動向Windows8 最新技術動向
Windows8 最新技術動向
 
静岡Developers勉強会 HTML5&CSS3
静岡Developers勉強会 HTML5&CSS3静岡Developers勉強会 HTML5&CSS3
静岡Developers勉強会 HTML5&CSS3
 
プログラミングHaskell(第1章)
プログラミングHaskell(第1章)プログラミングHaskell(第1章)
プログラミングHaskell(第1章)
 
設計時の見落とし
設計時の見落とし設計時の見落とし
設計時の見落とし
 
掲示板を見よう
掲示板を見よう掲示板を見よう
掲示板を見よう
 
北斗の拳の世界をオブジェクト指向で
北斗の拳の世界をオブジェクト指向で北斗の拳の世界をオブジェクト指向で
北斗の拳の世界をオブジェクト指向で
 
ドラえもんの世界をオブジェクト指向で
ドラえもんの世界をオブジェクト指向でドラえもんの世界をオブジェクト指向で
ドラえもんの世界をオブジェクト指向で
 
漢字の成り立ち
漢字の成り立ち漢字の成り立ち
漢字の成り立ち
 
データセンターVs消費電力
データセンターVs消費電力データセンターVs消費電力
データセンターVs消費電力
 

Recently uploaded

CS集会#13_なるほどわからん通信技術 発表資料
CS集会#13_なるほどわからん通信技術 発表資料CS集会#13_なるほどわからん通信技術 発表資料
CS集会#13_なるほどわからん通信技術 発表資料
Yuuitirou528 default
 
FIDO Alliance Osaka Seminar: NEC & Yubico Panel.pdf
FIDO Alliance Osaka Seminar: NEC & Yubico Panel.pdfFIDO Alliance Osaka Seminar: NEC & Yubico Panel.pdf
FIDO Alliance Osaka Seminar: NEC & Yubico Panel.pdf
FIDO Alliance
 
【AI論文解説】Consistency ModelとRectified Flow
【AI論文解説】Consistency ModelとRectified Flow【AI論文解説】Consistency ModelとRectified Flow
【AI論文解説】Consistency ModelとRectified Flow
Sony - Neural Network Libraries
 
FIDO Alliance Osaka Seminar: PlayStation Passkey Deployment Case Study.pdf
FIDO Alliance Osaka Seminar: PlayStation Passkey Deployment Case Study.pdfFIDO Alliance Osaka Seminar: PlayStation Passkey Deployment Case Study.pdf
FIDO Alliance Osaka Seminar: PlayStation Passkey Deployment Case Study.pdf
FIDO Alliance
 
TaketoFujikawa_物語のコンセプトに基づく情報アクセス手法の基礎検討_JSAI2024
TaketoFujikawa_物語のコンセプトに基づく情報アクセス手法の基礎検討_JSAI2024TaketoFujikawa_物語のコンセプトに基づく情報アクセス手法の基礎検討_JSAI2024
TaketoFujikawa_物語のコンセプトに基づく情報アクセス手法の基礎検討_JSAI2024
Matsushita Laboratory
 
単腕マニピュレータによる 複数物体の同時組み立ての 基礎的考察 / Basic Approach to Robotic Assembly of Multi...
単腕マニピュレータによる 複数物体の同時組み立ての 基礎的考察 / Basic Approach to Robotic Assembly of Multi...単腕マニピュレータによる 複数物体の同時組み立ての 基礎的考察 / Basic Approach to Robotic Assembly of Multi...
単腕マニピュレータによる 複数物体の同時組み立ての 基礎的考察 / Basic Approach to Robotic Assembly of Multi...
Fukuoka Institute of Technology
 
LoRaWAN 4チャンネル電流センサー・コンバーター CS01-LBカタログ
LoRaWAN 4チャンネル電流センサー・コンバーター CS01-LBカタログLoRaWAN 4チャンネル電流センサー・コンバーター CS01-LBカタログ
LoRaWAN 4チャンネル電流センサー・コンバーター CS01-LBカタログ
CRI Japan, Inc.
 
論文紹介: Offline Q-Learning on diverse Multi-Task data both scales and generalizes
論文紹介: Offline Q-Learning on diverse Multi-Task data both scales and generalizes論文紹介: Offline Q-Learning on diverse Multi-Task data both scales and generalizes
論文紹介: Offline Q-Learning on diverse Multi-Task data both scales and generalizes
atsushi061452
 
MPAなWebフレームワーク、Astroの紹介 (その2) 2024/05/24の勉強会で発表されたものです。
MPAなWebフレームワーク、Astroの紹介 (その2) 2024/05/24の勉強会で発表されたものです。MPAなWebフレームワーク、Astroの紹介 (その2) 2024/05/24の勉強会で発表されたものです。
MPAなWebフレームワーク、Astroの紹介 (その2) 2024/05/24の勉強会で発表されたものです。
iPride Co., Ltd.
 
FIDO Alliance Osaka Seminar: Welcome Slides.pdf
FIDO Alliance Osaka Seminar: Welcome Slides.pdfFIDO Alliance Osaka Seminar: Welcome Slides.pdf
FIDO Alliance Osaka Seminar: Welcome Slides.pdf
FIDO Alliance
 
【DLゼミ】XFeat: Accelerated Features for Lightweight Image Matching
【DLゼミ】XFeat: Accelerated Features for Lightweight Image Matching【DLゼミ】XFeat: Accelerated Features for Lightweight Image Matching
【DLゼミ】XFeat: Accelerated Features for Lightweight Image Matching
harmonylab
 
YugabyteDB適用に向けた取り組みと隠れた魅力 (DSS Asia 2024 発表資料)
YugabyteDB適用に向けた取り組みと隠れた魅力 (DSS Asia 2024 発表資料)YugabyteDB適用に向けた取り組みと隠れた魅力 (DSS Asia 2024 発表資料)
YugabyteDB適用に向けた取り組みと隠れた魅力 (DSS Asia 2024 発表資料)
NTT DATA Technology & Innovation
 
2024年度_サイバーエージェント_新卒研修「データベースの歴史」.pptx
2024年度_サイバーエージェント_新卒研修「データベースの歴史」.pptx2024年度_サイバーエージェント_新卒研修「データベースの歴史」.pptx
2024年度_サイバーエージェント_新卒研修「データベースの歴史」.pptx
yassun7010
 
FIDO Alliance Osaka Seminar: LY-DOCOMO-KDDI-Mercari Panel.pdf
FIDO Alliance Osaka Seminar: LY-DOCOMO-KDDI-Mercari Panel.pdfFIDO Alliance Osaka Seminar: LY-DOCOMO-KDDI-Mercari Panel.pdf
FIDO Alliance Osaka Seminar: LY-DOCOMO-KDDI-Mercari Panel.pdf
FIDO Alliance
 
FIDO Alliance Osaka Seminar: CloudGate.pdf
FIDO Alliance Osaka Seminar: CloudGate.pdfFIDO Alliance Osaka Seminar: CloudGate.pdf
FIDO Alliance Osaka Seminar: CloudGate.pdf
FIDO Alliance
 
論文紹介:When Visual Prompt Tuning Meets Source-Free Domain Adaptive Semantic Seg...
論文紹介:When Visual Prompt Tuning Meets Source-Free Domain Adaptive Semantic Seg...論文紹介:When Visual Prompt Tuning Meets Source-Free Domain Adaptive Semantic Seg...
論文紹介:When Visual Prompt Tuning Meets Source-Free Domain Adaptive Semantic Seg...
Toru Tamaki
 

Recently uploaded (16)

CS集会#13_なるほどわからん通信技術 発表資料
CS集会#13_なるほどわからん通信技術 発表資料CS集会#13_なるほどわからん通信技術 発表資料
CS集会#13_なるほどわからん通信技術 発表資料
 
FIDO Alliance Osaka Seminar: NEC & Yubico Panel.pdf
FIDO Alliance Osaka Seminar: NEC & Yubico Panel.pdfFIDO Alliance Osaka Seminar: NEC & Yubico Panel.pdf
FIDO Alliance Osaka Seminar: NEC & Yubico Panel.pdf
 
【AI論文解説】Consistency ModelとRectified Flow
【AI論文解説】Consistency ModelとRectified Flow【AI論文解説】Consistency ModelとRectified Flow
【AI論文解説】Consistency ModelとRectified Flow
 
FIDO Alliance Osaka Seminar: PlayStation Passkey Deployment Case Study.pdf
FIDO Alliance Osaka Seminar: PlayStation Passkey Deployment Case Study.pdfFIDO Alliance Osaka Seminar: PlayStation Passkey Deployment Case Study.pdf
FIDO Alliance Osaka Seminar: PlayStation Passkey Deployment Case Study.pdf
 
TaketoFujikawa_物語のコンセプトに基づく情報アクセス手法の基礎検討_JSAI2024
TaketoFujikawa_物語のコンセプトに基づく情報アクセス手法の基礎検討_JSAI2024TaketoFujikawa_物語のコンセプトに基づく情報アクセス手法の基礎検討_JSAI2024
TaketoFujikawa_物語のコンセプトに基づく情報アクセス手法の基礎検討_JSAI2024
 
単腕マニピュレータによる 複数物体の同時組み立ての 基礎的考察 / Basic Approach to Robotic Assembly of Multi...
単腕マニピュレータによる 複数物体の同時組み立ての 基礎的考察 / Basic Approach to Robotic Assembly of Multi...単腕マニピュレータによる 複数物体の同時組み立ての 基礎的考察 / Basic Approach to Robotic Assembly of Multi...
単腕マニピュレータによる 複数物体の同時組み立ての 基礎的考察 / Basic Approach to Robotic Assembly of Multi...
 
LoRaWAN 4チャンネル電流センサー・コンバーター CS01-LBカタログ
LoRaWAN 4チャンネル電流センサー・コンバーター CS01-LBカタログLoRaWAN 4チャンネル電流センサー・コンバーター CS01-LBカタログ
LoRaWAN 4チャンネル電流センサー・コンバーター CS01-LBカタログ
 
論文紹介: Offline Q-Learning on diverse Multi-Task data both scales and generalizes
論文紹介: Offline Q-Learning on diverse Multi-Task data both scales and generalizes論文紹介: Offline Q-Learning on diverse Multi-Task data both scales and generalizes
論文紹介: Offline Q-Learning on diverse Multi-Task data both scales and generalizes
 
MPAなWebフレームワーク、Astroの紹介 (その2) 2024/05/24の勉強会で発表されたものです。
MPAなWebフレームワーク、Astroの紹介 (その2) 2024/05/24の勉強会で発表されたものです。MPAなWebフレームワーク、Astroの紹介 (その2) 2024/05/24の勉強会で発表されたものです。
MPAなWebフレームワーク、Astroの紹介 (その2) 2024/05/24の勉強会で発表されたものです。
 
FIDO Alliance Osaka Seminar: Welcome Slides.pdf
FIDO Alliance Osaka Seminar: Welcome Slides.pdfFIDO Alliance Osaka Seminar: Welcome Slides.pdf
FIDO Alliance Osaka Seminar: Welcome Slides.pdf
 
【DLゼミ】XFeat: Accelerated Features for Lightweight Image Matching
【DLゼミ】XFeat: Accelerated Features for Lightweight Image Matching【DLゼミ】XFeat: Accelerated Features for Lightweight Image Matching
【DLゼミ】XFeat: Accelerated Features for Lightweight Image Matching
 
YugabyteDB適用に向けた取り組みと隠れた魅力 (DSS Asia 2024 発表資料)
YugabyteDB適用に向けた取り組みと隠れた魅力 (DSS Asia 2024 発表資料)YugabyteDB適用に向けた取り組みと隠れた魅力 (DSS Asia 2024 発表資料)
YugabyteDB適用に向けた取り組みと隠れた魅力 (DSS Asia 2024 発表資料)
 
2024年度_サイバーエージェント_新卒研修「データベースの歴史」.pptx
2024年度_サイバーエージェント_新卒研修「データベースの歴史」.pptx2024年度_サイバーエージェント_新卒研修「データベースの歴史」.pptx
2024年度_サイバーエージェント_新卒研修「データベースの歴史」.pptx
 
FIDO Alliance Osaka Seminar: LY-DOCOMO-KDDI-Mercari Panel.pdf
FIDO Alliance Osaka Seminar: LY-DOCOMO-KDDI-Mercari Panel.pdfFIDO Alliance Osaka Seminar: LY-DOCOMO-KDDI-Mercari Panel.pdf
FIDO Alliance Osaka Seminar: LY-DOCOMO-KDDI-Mercari Panel.pdf
 
FIDO Alliance Osaka Seminar: CloudGate.pdf
FIDO Alliance Osaka Seminar: CloudGate.pdfFIDO Alliance Osaka Seminar: CloudGate.pdf
FIDO Alliance Osaka Seminar: CloudGate.pdf
 
論文紹介:When Visual Prompt Tuning Meets Source-Free Domain Adaptive Semantic Seg...
論文紹介:When Visual Prompt Tuning Meets Source-Free Domain Adaptive Semantic Seg...論文紹介:When Visual Prompt Tuning Meets Source-Free Domain Adaptive Semantic Seg...
論文紹介:When Visual Prompt Tuning Meets Source-Free Domain Adaptive Semantic Seg...
 

UnityとBlenderハンズオン第10章