SlideShare a Scribd company logo
1 of 121
クォータニオン完全マスター
ユニティ・テクノロジーズ・ジャパン合同会社
安原 祐二
Unity スクリプトリファレンスより抜粋
座標変換
CG
オイラー角
複素数
クォータニオン
本セッションの旅程
座標変換
CGの
きほん
たくさんの点を動かす!
© Unity Technologies Japan/UCL
P(1, 2)
x
y
二次元座標
P’(-2, 1)
x
y
P(1, 2)
P(1, 2) P’(-2, 1)
ある変換で点を移動
変換
ある変換=なんらかのルール
同じ変換でたくさんの点を移動
Q(2, 0) Q’(0, 2)
変換
P(1, 2) P’(-2, 1)
変換
R(1, 1) R’(-1, 1)
変換
こういう式にしてみよう
x’ = ax + by
y’ = cx + dy
P’(x’, y’) = [変換]P(x, y)
x’ = ax + by
y’ = cx + dy
x’ = 1x + 0y
y’ = 0x + 1y
a=1 b=0 c=0 d=1 なら
x’ = x
y’ = y
変化しない変換
色々できそう!
色々できそう!
x’ = ax + by
y’ = cx + dy
x’ = 1x + 0y
y’ = 0x + 1y
a=1 b=0 c=0 d=1 なら
x’ = x
y’ = y
変化しない変換
x’ = 0x + 1y
y’ = 1x + 0y
a=0 b=1 c=1 d=0 なら
x’ = y
y’ = x
xy入れ替え変換
abcdをまとめてしまおう
x’ = ax + by
y’ = cx + dy
a b
c d( )
これを行列と呼ぶ!
変換を行列Mとして
P(1, 2) P’(-2, 1)
変換
P’=MP
P’(x’, y’) = [変換]P(x, y)
a b
c d( )P’= P
変換を行列Mとして
P(1, 2) P’(-2, 1)
変換
P’=MP
P’(x’, y’) = [変換]P(x, y)
(
行列に点ベクトルを掛ける
a b
c d( )=
a b
c d( ) 1
2)=)(-2
1
x’ = ax + by
y’ = cx + dy
-2 = a1 + b2
1 = c1 + d2
例えば
)(x’
y’ (x
y)
-2 = a1 + b2
1 = c1 + d2
行列に点ベクトルを掛ける
-2 = a1 + b2
1 = c1 + d2
1
2( )a b
c d( ) 1
=)(-2
1 2
1
2
+
+
三次元では3x3行列になる
x’ = ax + by + cz
y’ = dx + ey + fz
a b c
d e f
g h i( )
z’ = gx + hy + iz
概念は同じなので
以降も二次元で続けます
いろいろな行列
2 0
0 2( ) 2倍に拡大
スケーリング行列
cosθ -sinθ
sinθ cosθ( )θ回転する
回転行列
デモ
x
y
あれ?
移動は?
行列の値をどう工夫しても移動はできない!
x’ = ax + by
y’ = cx + dy
x’ = ax + by + s
y’ = cx + dy + t
移動するために式を変更
これで(s,t)で移動できる
追加!
移動を実現するために行列を拡張
a b s
c d t( )
a b
c d( )
a b s
c d t
0 0 1
( )
何かと都合がいいので
3x3 にする
x’ = ax + by + s
y’ = cx + dy + t
行と列の数が同じ
正方行列と呼ぶ
デモ
三次元でも同様にして移動を実現
つまり三次元では4x4行列を使う
a b c s
d e f t
g h i u
0 0 0 1
)(
x’
y’
z’
1
( )=
x
y
z
1
( )
a b s
c d t
0 0 1
( )
二次元用3x3行列の
各部分の役割
回転 移動
a b c s
d e f t
g h i u
0 0 0 1
)(
回転 移動
三次元用4x4行列の
各部分の役割
回転 移動
三次元用4x4行列の
各部分の役割
transform.rotation transform.position
Quaternion
クォータニオン
で作る
Vector3
ベクトル
で作る
a b c s
d e f t
g h i u
0 0 0 1
)(
異なる変換をいくつも重ねる
これを点ごとに計算するのはたいへん…
P’=(○(○(○(○P))))
いくつも変換する場合は事前に計算しておける
点ごとにMを掛ければ済む
P’=MP
P’=○○○○P
P’=(○(○(○(○P))))
M=○○○○ を
事前に計算して…
座標変換
CG
オイラー角
複素数
クォータニオン
CGに応用する行列
3つの変換行列
• モデル行列
• ビュー行列
• プロジェクション行列
すべての変換前
モデリングした物体の座標
データにはこの座標が
格納されている
この変換が
モデル行列
Transformで
移動・回転
シーンにはカメラがある
カメラ
Transformで
移動・回転
z
カメラが原点・ゼロ回転
になるように変換
この変換が
ビュー行列
空間全体をモニタの位置に合わせる!
z
画角や near, far を処理
w に z を格納など…
この変換が
プロジェクション行列
Unity組み込みシェーダ
UnityShaderVariables.cginc より抜粋
M:モデル V:ビュー P:プロジェクション
モニタに映すための
透視変換
この変換は
行列ではなく奥行きで割る
遠くのものを小さく!
透視変換のようす
座標変換
CG
オイラー角
複素数
クォータニオン
オイラー角方式
二次元の回転はシンプル
回転軸はひとつ
cosθ -sinθ
sinθ cosθ( )θ回転の
回転行列
三次元では3軸の
回転量をそれぞれ記述
あらゆる姿勢を表現可能
これがオイラー角方式
x
y
z
直感的!
Unity の Inspector の Rotation は…
表示に関しては
オイラー角方式
P’=YXZP
X X軸まわりの回転行列
Y Y軸まわりの回転行列
Z Z軸まわりの回転行列
オイラー角方式の回転には順番がある
Unityは
ZYXの順番
プログラム例:
オイラー角で作った回転を代入
transform.rotation = Quaternion.Euler(x, y, z);
①
②
③
変換を3回重ねている
座標変換
CG
オイラー角
複素数
クォータニオン
複素数と複素平面
クォータニオンは
複素数の拡張
問題
は虚数単位
虚数の定義
虚数単位
複素数
:実部
:虚部
2
1
普通の平面
P(1, 2)
x
y
実軸
虚軸
1+2i
1
2
複素平面
実軸
虚軸
半径1の円周上の点を
考える
単位円と呼ぶ
実軸
虚軸
1+0i つまり 1
実軸
虚軸
-1+0i つまり -1
1
実軸
虚軸
0+i つまり i
-1 1
実軸
虚軸
0-i つまり -i
-1 1
i
実軸
虚軸
-1 1
i
-i
実軸
虚軸
-1 1
i
-i
45°
実軸
虚軸
cos45°-1 1
i
-i
45°
sin45°
実軸
虚軸
cos45°+isin45°
-1 1
i
-i
45°
cos45°
sin45°
0.7+0.7iぐらい
実軸
虚軸
cosθ+isinθ
-1 1
i
-i
θ
cosθ
sinθ
重大な事実
単位円上の点は回転だった
実軸
虚軸
-1 1
i
-i
ゼロ回転
実軸
虚軸
-1 1
i
-i
180°回転
実軸
虚軸
90°回転
-1 1
i
-i
実軸
虚軸
270°回転
-1 1
i
-i
実軸
虚軸
-90°回転
-1 1
i
-i 270°と-90°は
同じ意味
もしくは
もっと重大な事実
点と点を掛けると回転する
虚数の性質
実軸
虚軸
i
-1 1
i
-i
i は90°回転
実軸
虚軸
i
-1 1
i
-i
i は i をさらに
90°回転
2
つまり
i = -12
実軸
虚軸
-1 1
i
-i
-1
-1をさらに
180°回転
つまり
(-1) = 12
実軸
虚軸
0.7+0.7i
-1 1
i
-i
実軸
虚軸
0.98i
-1 1
i
-i
0.7+0.7i
θ
実軸
虚軸
cosθ+isinθ
-1 1
i
-i
(cosθ+isinθ)
2
回転角を足す
と
複素数を掛ける
は
同じ意味!
cos2θ+isin2θ
=
2θ
ところで…
この方程式を解いてみよう
実軸
虚軸
-1 1
i
-i
実軸
虚軸
-1 1
i
-i
から正三角形!
120°
座標変換
CG
オイラー角
複素数
クォータニオン
クォータニオン
考案者はハミルトン
(William Rowan Hamilton 1805-1865)
「複素平面の三次元版は
作れないものか…」
虚軸を3つにすればうまくいく!
i が虚数単位
クォータニオン複素数
i, j, kが虚数単位
i =-12
i =-12
j =-12
k =-12
ij=k jk=i ki=j
ji=-k kj=-i ik=-j
驚愕のアイデア!
クォータニオンは複素数の三次元版
a+ib a+ib+jc+kd
クォータニオン複素数
複素数の要素はふたつ
クォータニオンの要素は4つ
クォータニオン要素を
x, y, z, w とする
ix+jy+kz+w
(x, y, z, w)
実部虚部
複素平面の回転軸は
固定だった
立体の場合
(x, y, z)
ix+jy+kz+w
(x, y, z, w)
実部虚部
回転軸が
虚部のベクトル
複素数の回転と
クォータニオンの回転
cosθ+isinθ
複素数
cosー+nsinー
2 2
θ θ
n=inx+jny+knz
n(nx, ny, nz)は回転軸のベクトル
クォータニオン
重大な事実
あらゆる回転は
ひとつの軸回転で表現できる
そしてクォータニオンは
軸回転を表現する
クォータニオンなら
一発で決まる!
あらゆる回転は
ひとつの軸回転で表現できる
クォータニオンのテクニック
便利なテクニック
Slerp (Spherical Linear Interpolation):球面線形補間
transform.rotation =
Quaternion.Slerp(transform.rotation,
target_rotation,
0.1f);
現在の値
目標の値
適当な率
凝ったテクニック
バネトルク
目標との差分に比例したトルクをかける
基本戦略:
目標への差分を求めて、トルクに変換する
差分クォータニオンの求めかた
差分=目標の値×現在の値
-1
実演
バネトルク実装例
4要素の符号を反転しても
同じ回転になる
(x, y, z, w)
(-x, -y, -z, -w)
実は回転の方向が異なる
(x, y, z, w)
(-x, -y, -z, -w)
バネトルクを完成させる
テクニック
wが負のときに反転すると
短い方の回転になる
(x, y, z, w)
(-x, -y, -z, -w)
修正済みコード
追加
var rot = Quaternion.LookRotation(diff);
第二引数に Vector.up が省略されている
var up = transform.TransformVector(Vector3.up);
var rot = Quaternion.LookRotation(diff, up);
自分の姿勢から up ベクトルを作る
水平を維持しないテクニック
修正済みコードその2
追加
デモ
このあと学習を続けるなら…
• トルクや物理を詳しく知りたい→Unity道場札幌講演をぜひ!
https://www.youtube.com/watch?v=FqjM9oujyNE&feature=youtu.be
• クォータニオンの応用例を知りたい→Unite2017Tokyoをぜひ!
https://www.youtube.com/watch?v=6EtTI5xC524 27分あたりから
• なんで と、 になるのか気になる→ ブログ「クォータニ
オンで回転を表現する定義にθ/2が使用される理由」をぜひ!
http://qiita.com/yuji_yasuhara/items/a5b7c489e1d521adbd72
θ
2
cosー+nsinー
2
θ
2
θ
ー
参考:Inverse自前実装
虚部を反転するだけで逆クォータニオン
実軸
虚軸
-1 1
i
-i
マメ知識
逆変換は
虚部の符号を反転
共役複素数と呼ぶ
おしまい

More Related Content

What's hot

なぜなにリアルタイムレンダリング
なぜなにリアルタイムレンダリングなぜなにリアルタイムレンダリング
なぜなにリアルタイムレンダリングSatoshi Kodaira
 
そう、UE4ならね。あなたのモバイルゲームをより快適にする沢山の冴えたやり方について Part 2 <Texture Streaming, メモリプロ...
  そう、UE4ならね。あなたのモバイルゲームをより快適にする沢山の冴えたやり方について Part 2 <Texture Streaming, メモリプロ...  そう、UE4ならね。あなたのモバイルゲームをより快適にする沢山の冴えたやり方について Part 2 <Texture Streaming, メモリプロ...
そう、UE4ならね。あなたのモバイルゲームをより快適にする沢山の冴えたやり方について Part 2 <Texture Streaming, メモリプロ...エピック・ゲームズ・ジャパン Epic Games Japan
 
Game Creators Conference 2019 Keiji Kikuchi
Game Creators Conference 2019 Keiji KikuchiGame Creators Conference 2019 Keiji Kikuchi
Game Creators Conference 2019 Keiji KikuchiKeiji Kikuchi
 
目指せ脱UE4初心者!?知ってると開発が楽になる便利機能を紹介 - DataAsset, Subsystem, GameplayAbility編 -
目指せ脱UE4初心者!?知ってると開発が楽になる便利機能を紹介 - DataAsset, Subsystem, GameplayAbility編 -目指せ脱UE4初心者!?知ってると開発が楽になる便利機能を紹介 - DataAsset, Subsystem, GameplayAbility編 -
目指せ脱UE4初心者!?知ってると開発が楽になる便利機能を紹介 - DataAsset, Subsystem, GameplayAbility編 -historia_Inc
 
【Unity道場】新しいPrefabワークフロー入門
【Unity道場】新しいPrefabワークフロー入門【Unity道場】新しいPrefabワークフロー入門
【Unity道場】新しいPrefabワークフロー入門Unity Technologies Japan K.K.
 
UE4×Switchで60FPSの(ネットワーク)対戦アクションをなんとかして作る! | UNREAL FEST EXTREME 2020 WINTER
UE4×Switchで60FPSの(ネットワーク)対戦アクションをなんとかして作る!  | UNREAL FEST EXTREME 2020 WINTERUE4×Switchで60FPSの(ネットワーク)対戦アクションをなんとかして作る!  | UNREAL FEST EXTREME 2020 WINTER
UE4×Switchで60FPSの(ネットワーク)対戦アクションをなんとかして作る! | UNREAL FEST EXTREME 2020 WINTERエピック・ゲームズ・ジャパン Epic Games Japan
 

What's hot (20)

UE4ディープラーニングってやつでなんとかして!環境構築編(Python3+TensorFlow)
UE4ディープラーニングってやつでなんとかして!環境構築編(Python3+TensorFlow) UE4ディープラーニングってやつでなんとかして!環境構築編(Python3+TensorFlow)
UE4ディープラーニングってやつでなんとかして!環境構築編(Python3+TensorFlow)
 
[CEDEC2018] UE4アニメーションシステム総おさらい
[CEDEC2018] UE4アニメーションシステム総おさらい[CEDEC2018] UE4アニメーションシステム総おさらい
[CEDEC2018] UE4アニメーションシステム総おさらい
 
なぜなにリアルタイムレンダリング
なぜなにリアルタイムレンダリングなぜなにリアルタイムレンダリング
なぜなにリアルタイムレンダリング
 
GPU最適化入門
GPU最適化入門GPU最適化入門
GPU最適化入門
 
UE4における大規模背景制作事例(コリジョン編)
UE4における大規模背景制作事例(コリジョン編) UE4における大規模背景制作事例(コリジョン編)
UE4における大規模背景制作事例(コリジョン編)
 
実行速度の最適化のあれこれ プラス おまけ
実行速度の最適化のあれこれ プラス おまけ  実行速度の最適化のあれこれ プラス おまけ
実行速度の最適化のあれこれ プラス おまけ
 
CEDEC2016: Unreal Engine 4 のレンダリングフロー総おさらい
CEDEC2016: Unreal Engine 4 のレンダリングフロー総おさらいCEDEC2016: Unreal Engine 4 のレンダリングフロー総おさらい
CEDEC2016: Unreal Engine 4 のレンダリングフロー総おさらい
 
猫でも分かるUE4のポストプロセスを使った演出・絵作り
猫でも分かるUE4のポストプロセスを使った演出・絵作り猫でも分かるUE4のポストプロセスを使った演出・絵作り
猫でも分かるUE4のポストプロセスを使った演出・絵作り
 
そう、UE4ならね。あなたのモバイルゲームをより快適にする沢山の冴えたやり方について Part 2 <Texture Streaming, メモリプロ...
  そう、UE4ならね。あなたのモバイルゲームをより快適にする沢山の冴えたやり方について Part 2 <Texture Streaming, メモリプロ...  そう、UE4ならね。あなたのモバイルゲームをより快適にする沢山の冴えたやり方について Part 2 <Texture Streaming, メモリプロ...
そう、UE4ならね。あなたのモバイルゲームをより快適にする沢山の冴えたやり方について Part 2 <Texture Streaming, メモリプロ...
 
UE4におけるエフェクトの基本戦略事例 後半
UE4におけるエフェクトの基本戦略事例  後半UE4におけるエフェクトの基本戦略事例  後半
UE4におけるエフェクトの基本戦略事例 後半
 
Unreal Engine 4を使って地球を衛る方法
Unreal Engine 4を使って地球を衛る方法Unreal Engine 4を使って地球を衛る方法
Unreal Engine 4を使って地球を衛る方法
 
初心者向け UE4 映像制作での シーケンサー と Movie Render Queue の使い方
初心者向け UE4 映像制作での シーケンサー と Movie Render Queue の使い方初心者向け UE4 映像制作での シーケンサー と Movie Render Queue の使い方
初心者向け UE4 映像制作での シーケンサー と Movie Render Queue の使い方
 
UE4におけるレベル制作事例
UE4におけるレベル制作事例  UE4におけるレベル制作事例
UE4におけるレベル制作事例
 
UE4における大規模背景制作事例 描画特殊表現編
UE4における大規模背景制作事例 描画特殊表現編UE4における大規模背景制作事例 描画特殊表現編
UE4における大規模背景制作事例 描画特殊表現編
 
UE4で”MetaHumanを使わずに”耳なし芳一になる10の方法 | UE4 Character Art Dive Online
UE4で”MetaHumanを使わずに”耳なし芳一になる10の方法 | UE4 Character Art Dive OnlineUE4で”MetaHumanを使わずに”耳なし芳一になる10の方法 | UE4 Character Art Dive Online
UE4で”MetaHumanを使わずに”耳なし芳一になる10の方法 | UE4 Character Art Dive Online
 
UE4 Hair & Groomでのリアルタイムファーレンダリング (UE4 Character Art Dive Online)
UE4 Hair & Groomでのリアルタイムファーレンダリング (UE4 Character Art Dive Online)UE4 Hair & Groomでのリアルタイムファーレンダリング (UE4 Character Art Dive Online)
UE4 Hair & Groomでのリアルタイムファーレンダリング (UE4 Character Art Dive Online)
 
Game Creators Conference 2019 Keiji Kikuchi
Game Creators Conference 2019 Keiji KikuchiGame Creators Conference 2019 Keiji Kikuchi
Game Creators Conference 2019 Keiji Kikuchi
 
目指せ脱UE4初心者!?知ってると開発が楽になる便利機能を紹介 - DataAsset, Subsystem, GameplayAbility編 -
目指せ脱UE4初心者!?知ってると開発が楽になる便利機能を紹介 - DataAsset, Subsystem, GameplayAbility編 -目指せ脱UE4初心者!?知ってると開発が楽になる便利機能を紹介 - DataAsset, Subsystem, GameplayAbility編 -
目指せ脱UE4初心者!?知ってると開発が楽になる便利機能を紹介 - DataAsset, Subsystem, GameplayAbility編 -
 
【Unity道場】新しいPrefabワークフロー入門
【Unity道場】新しいPrefabワークフロー入門【Unity道場】新しいPrefabワークフロー入門
【Unity道場】新しいPrefabワークフロー入門
 
UE4×Switchで60FPSの(ネットワーク)対戦アクションをなんとかして作る! | UNREAL FEST EXTREME 2020 WINTER
UE4×Switchで60FPSの(ネットワーク)対戦アクションをなんとかして作る!  | UNREAL FEST EXTREME 2020 WINTERUE4×Switchで60FPSの(ネットワーク)対戦アクションをなんとかして作る!  | UNREAL FEST EXTREME 2020 WINTER
UE4×Switchで60FPSの(ネットワーク)対戦アクションをなんとかして作る! | UNREAL FEST EXTREME 2020 WINTER
 

Viewers also liked

【Unity道場スペシャル 2017博多】無料アニメーションツールAnima2Dを使ってみよう
【Unity道場スペシャル 2017博多】無料アニメーションツールAnima2Dを使ってみよう【Unity道場スペシャル 2017博多】無料アニメーションツールAnima2Dを使ってみよう
【Unity道場スペシャル 2017博多】無料アニメーションツールAnima2Dを使ってみようUnity Technologies Japan K.K.
 
【Unity道場 博多スペシャル 2017】Textmesh proを使いこなす
【Unity道場 博多スペシャル 2017】Textmesh proを使いこなす【Unity道場 博多スペシャル 2017】Textmesh proを使いこなす
【Unity道場 博多スペシャル 2017】Textmesh proを使いこなすUnity Technologies Japan K.K.
 
【Unity道場スペシャル 2017博多】スマホゲーム開発者が知っておくべきチートのリスク&対策
【Unity道場スペシャル 2017博多】スマホゲーム開発者が知っておくべきチートのリスク&対策【Unity道場スペシャル 2017博多】スマホゲーム開発者が知っておくべきチートのリスク&対策
【Unity道場スペシャル 2017博多】スマホゲーム開発者が知っておくべきチートのリスク&対策Unity Technologies Japan K.K.
 
【Unity道場スペシャル 2017博多】Unityで楽しむノンフォトリアルな絵づくり講座:トゥーンシェーダー・マニアクス
【Unity道場スペシャル 2017博多】Unityで楽しむノンフォトリアルな絵づくり講座:トゥーンシェーダー・マニアクス【Unity道場スペシャル 2017博多】Unityで楽しむノンフォトリアルな絵づくり講座:トゥーンシェーダー・マニアクス
【Unity道場スペシャル 2017博多】Unityで楽しむノンフォトリアルな絵づくり講座:トゥーンシェーダー・マニアクスUnity Technologies Japan K.K.
 
Substance勉強会 in Osaka
Substance勉強会 in OsakaSubstance勉強会 in Osaka
Substance勉強会 in OsakaAiko Shinohara
 
【Unity道場スペシャル 2017札幌】最適化をする前に覚えておきたい技術 -札幌編-
【Unity道場スペシャル 2017札幌】最適化をする前に覚えておきたい技術 -札幌編-【Unity道場スペシャル 2017札幌】最適化をする前に覚えておきたい技術 -札幌編-
【Unity道場スペシャル 2017札幌】最適化をする前に覚えておきたい技術 -札幌編-Unity Technologies Japan K.K.
 

Viewers also liked (6)

【Unity道場スペシャル 2017博多】無料アニメーションツールAnima2Dを使ってみよう
【Unity道場スペシャル 2017博多】無料アニメーションツールAnima2Dを使ってみよう【Unity道場スペシャル 2017博多】無料アニメーションツールAnima2Dを使ってみよう
【Unity道場スペシャル 2017博多】無料アニメーションツールAnima2Dを使ってみよう
 
【Unity道場 博多スペシャル 2017】Textmesh proを使いこなす
【Unity道場 博多スペシャル 2017】Textmesh proを使いこなす【Unity道場 博多スペシャル 2017】Textmesh proを使いこなす
【Unity道場 博多スペシャル 2017】Textmesh proを使いこなす
 
【Unity道場スペシャル 2017博多】スマホゲーム開発者が知っておくべきチートのリスク&対策
【Unity道場スペシャル 2017博多】スマホゲーム開発者が知っておくべきチートのリスク&対策【Unity道場スペシャル 2017博多】スマホゲーム開発者が知っておくべきチートのリスク&対策
【Unity道場スペシャル 2017博多】スマホゲーム開発者が知っておくべきチートのリスク&対策
 
【Unity道場スペシャル 2017博多】Unityで楽しむノンフォトリアルな絵づくり講座:トゥーンシェーダー・マニアクス
【Unity道場スペシャル 2017博多】Unityで楽しむノンフォトリアルな絵づくり講座:トゥーンシェーダー・マニアクス【Unity道場スペシャル 2017博多】Unityで楽しむノンフォトリアルな絵づくり講座:トゥーンシェーダー・マニアクス
【Unity道場スペシャル 2017博多】Unityで楽しむノンフォトリアルな絵づくり講座:トゥーンシェーダー・マニアクス
 
Substance勉強会 in Osaka
Substance勉強会 in OsakaSubstance勉強会 in Osaka
Substance勉強会 in Osaka
 
【Unity道場スペシャル 2017札幌】最適化をする前に覚えておきたい技術 -札幌編-
【Unity道場スペシャル 2017札幌】最適化をする前に覚えておきたい技術 -札幌編-【Unity道場スペシャル 2017札幌】最適化をする前に覚えておきたい技術 -札幌編-
【Unity道場スペシャル 2017札幌】最適化をする前に覚えておきたい技術 -札幌編-
 

Similar to 【Unity道場スペシャル 2017博多】クォータニオン完全マスター

【Unity道場スペシャル 2017大阪】クォータニオン完全マスター
【Unity道場スペシャル 2017大阪】クォータニオン完全マスター【Unity道場スペシャル 2017大阪】クォータニオン完全マスター
【Unity道場スペシャル 2017大阪】クォータニオン完全マスターUnity Technologies Japan K.K.
 
ディジタル信号処理の課題解説 その3
ディジタル信号処理の課題解説 その3ディジタル信号処理の課題解説 その3
ディジタル信号処理の課題解説 その3noname409
 
機械学習と深層学習の数理
機械学習と深層学習の数理機械学習と深層学習の数理
機械学習と深層学習の数理Ryo Nakamura
 
RTミドルウェアによるロボットプログラミング技術 4.ロボットの運動学と制御の基礎(解答)
RTミドルウェアによるロボットプログラミング技術 4.ロボットの運動学と制御の基礎(解答)RTミドルウェアによるロボットプログラミング技術 4.ロボットの運動学と制御の基礎(解答)
RTミドルウェアによるロボットプログラミング技術 4.ロボットの運動学と制御の基礎(解答)Noriaki Ando
 
文字列カーネルによる辞書なしツイート分類 〜文字列カーネル入門〜
文字列カーネルによる辞書なしツイート分類 〜文字列カーネル入門〜文字列カーネルによる辞書なしツイート分類 〜文字列カーネル入門〜
文字列カーネルによる辞書なしツイート分類 〜文字列カーネル入門〜Takeshi Arabiki
 
代数トポロジー入門
代数トポロジー入門代数トポロジー入門
代数トポロジー入門Tatsuki SHIMIZU
 
ディジタル信号処理の課題解説
ディジタル信号処理の課題解説ディジタル信号処理の課題解説
ディジタル信号処理の課題解説noname409
 
introductino to persistent homology and topological data analysis
introductino to persistent homology and topological data analysisintroductino to persistent homology and topological data analysis
introductino to persistent homology and topological data analysisTatsuki SHIMIZU
 
パターン認識と機械学習6章(カーネル法)
パターン認識と機械学習6章(カーネル法)パターン認識と機械学習6章(カーネル法)
パターン認識と機械学習6章(カーネル法)Yukara Ikemiya
 
JOIss2020 発表資料
JOIss2020 発表資料JOIss2020 発表資料
JOIss2020 発表資料mdkcpp 1015
 
ディジタル信号処理 課題解説(その3) 2014年度版
ディジタル信号処理 課題解説(その3) 2014年度版ディジタル信号処理 課題解説(その3) 2014年度版
ディジタル信号処理 課題解説(その3) 2014年度版dsp_kyoto_2014
 
topology of musical data
topology of musical datatopology of musical data
topology of musical dataTatsuki SHIMIZU
 
水平線検出による船体動揺映像の安定化論文
水平線検出による船体動揺映像の安定化論文水平線検出による船体動揺映像の安定化論文
水平線検出による船体動揺映像の安定化論文doboncho
 

Similar to 【Unity道場スペシャル 2017博多】クォータニオン完全マスター (20)

【Unity道場スペシャル 2017大阪】クォータニオン完全マスター
【Unity道場スペシャル 2017大阪】クォータニオン完全マスター【Unity道場スペシャル 2017大阪】クォータニオン完全マスター
【Unity道場スペシャル 2017大阪】クォータニオン完全マスター
 
ディジタル信号処理の課題解説 その3
ディジタル信号処理の課題解説 その3ディジタル信号処理の課題解説 その3
ディジタル信号処理の課題解説 その3
 
機械学習と深層学習の数理
機械学習と深層学習の数理機械学習と深層学習の数理
機械学習と深層学習の数理
 
RTミドルウェアによるロボットプログラミング技術 4.ロボットの運動学と制御の基礎(解答)
RTミドルウェアによるロボットプログラミング技術 4.ロボットの運動学と制御の基礎(解答)RTミドルウェアによるロボットプログラミング技術 4.ロボットの運動学と制御の基礎(解答)
RTミドルウェアによるロボットプログラミング技術 4.ロボットの運動学と制御の基礎(解答)
 
CG2013 06
CG2013 06CG2013 06
CG2013 06
 
文字列カーネルによる辞書なしツイート分類 〜文字列カーネル入門〜
文字列カーネルによる辞書なしツイート分類 〜文字列カーネル入門〜文字列カーネルによる辞書なしツイート分類 〜文字列カーネル入門〜
文字列カーネルによる辞書なしツイート分類 〜文字列カーネル入門〜
 
代数トポロジー入門
代数トポロジー入門代数トポロジー入門
代数トポロジー入門
 
Ppt kasawaki
Ppt kasawakiPpt kasawaki
Ppt kasawaki
 
kasawaki b
kasawaki bkasawaki b
kasawaki b
 
Convex Hull Trick
Convex Hull TrickConvex Hull Trick
Convex Hull Trick
 
ディジタル信号処理の課題解説
ディジタル信号処理の課題解説ディジタル信号処理の課題解説
ディジタル信号処理の課題解説
 
Ppt minagawa
Ppt minagawaPpt minagawa
Ppt minagawa
 
minagawa m
minagawa mminagawa m
minagawa m
 
introductino to persistent homology and topological data analysis
introductino to persistent homology and topological data analysisintroductino to persistent homology and topological data analysis
introductino to persistent homology and topological data analysis
 
機械学習とこれを支える並列計算 : 並列計算の現状と産業応用について
機械学習とこれを支える並列計算 : 並列計算の現状と産業応用について機械学習とこれを支える並列計算 : 並列計算の現状と産業応用について
機械学習とこれを支える並列計算 : 並列計算の現状と産業応用について
 
パターン認識と機械学習6章(カーネル法)
パターン認識と機械学習6章(カーネル法)パターン認識と機械学習6章(カーネル法)
パターン認識と機械学習6章(カーネル法)
 
JOIss2020 発表資料
JOIss2020 発表資料JOIss2020 発表資料
JOIss2020 発表資料
 
ディジタル信号処理 課題解説(その3) 2014年度版
ディジタル信号処理 課題解説(その3) 2014年度版ディジタル信号処理 課題解説(その3) 2014年度版
ディジタル信号処理 課題解説(その3) 2014年度版
 
topology of musical data
topology of musical datatopology of musical data
topology of musical data
 
水平線検出による船体動揺映像の安定化論文
水平線検出による船体動揺映像の安定化論文水平線検出による船体動揺映像の安定化論文
水平線検出による船体動揺映像の安定化論文
 

More from Unity Technologies Japan K.K.

建築革命、更に更に進化!便利さ向上【Unity Reflect ver 3.0 】
建築革命、更に更に進化!便利さ向上【Unity Reflect ver 3.0 】建築革命、更に更に進化!便利さ向上【Unity Reflect ver 3.0 】
建築革命、更に更に進化!便利さ向上【Unity Reflect ver 3.0 】Unity Technologies Japan K.K.
 
UnityのクラッシュをBacktraceでデバッグしよう!
UnityのクラッシュをBacktraceでデバッグしよう!UnityのクラッシュをBacktraceでデバッグしよう!
UnityのクラッシュをBacktraceでデバッグしよう!Unity Technologies Japan K.K.
 
Unityで始めるバーチャルプロダクション
Unityで始めるバーチャルプロダクションUnityで始めるバーチャルプロダクション
Unityで始めるバーチャルプロダクションUnity Technologies Japan K.K.
 
ビジュアルスクリプティング (旧:Bolt) で始めるUnity入門3日目 ゲームをカスタマイズしよう
ビジュアルスクリプティング (旧:Bolt) で始めるUnity入門3日目 ゲームをカスタマイズしようビジュアルスクリプティング (旧:Bolt) で始めるUnity入門3日目 ゲームをカスタマイズしよう
ビジュアルスクリプティング (旧:Bolt) で始めるUnity入門3日目 ゲームをカスタマイズしようUnity Technologies Japan K.K.
 
ビジュアルスクリプティングで始めるUnity入門2日目 ゴールとスコアの仕組み - Unityステーション
ビジュアルスクリプティングで始めるUnity入門2日目 ゴールとスコアの仕組み - Unityステーションビジュアルスクリプティングで始めるUnity入門2日目 ゴールとスコアの仕組み - Unityステーション
ビジュアルスクリプティングで始めるUnity入門2日目 ゴールとスコアの仕組み - UnityステーションUnity Technologies Japan K.K.
 
ビジュアルスクリプティングで始めるUnity入門1日目 プレイヤーを動かそう
ビジュアルスクリプティングで始めるUnity入門1日目 プレイヤーを動かそうビジュアルスクリプティングで始めるUnity入門1日目 プレイヤーを動かそう
ビジュアルスクリプティングで始めるUnity入門1日目 プレイヤーを動かそうUnity Technologies Japan K.K.
 
PlasticSCMの活用テクニックをハンズオンで一緒に学ぼう!
PlasticSCMの活用テクニックをハンズオンで一緒に学ぼう!PlasticSCMの活用テクニックをハンズオンで一緒に学ぼう!
PlasticSCMの活用テクニックをハンズオンで一緒に学ぼう!Unity Technologies Japan K.K.
 
点群を使いこなせ! 可視化なんて当たり前、xRと点群を組み合わせたUnityの世界 【Interact , Stipple】
点群を使いこなせ! 可視化なんて当たり前、xRと点群を組み合わせたUnityの世界 【Interact , Stipple】点群を使いこなせ! 可視化なんて当たり前、xRと点群を組み合わせたUnityの世界 【Interact , Stipple】
点群を使いこなせ! 可視化なんて当たり前、xRと点群を組み合わせたUnityの世界 【Interact , Stipple】Unity Technologies Japan K.K.
 
Unity教える先生方注目!ティーチャートレーニングデイを体験しよう
Unity教える先生方注目!ティーチャートレーニングデイを体験しようUnity教える先生方注目!ティーチャートレーニングデイを体験しよう
Unity教える先生方注目!ティーチャートレーニングデイを体験しようUnity Technologies Japan K.K.
 
「原神」におけるコンソールプラットフォーム開発
「原神」におけるコンソールプラットフォーム開発「原神」におけるコンソールプラットフォーム開発
「原神」におけるコンソールプラットフォーム開発Unity Technologies Japan K.K.
 
FANTASIANの明日使えない特殊テクニック教えます
FANTASIANの明日使えない特殊テクニック教えますFANTASIANの明日使えない特殊テクニック教えます
FANTASIANの明日使えない特殊テクニック教えますUnity Technologies Japan K.K.
 
インディーゲーム開発の現状と未来 2021
インディーゲーム開発の現状と未来 2021インディーゲーム開発の現状と未来 2021
インディーゲーム開発の現状と未来 2021Unity Technologies Japan K.K.
 
建築革命、更に進化!デジタルツイン基盤の真打ち登場【概要編 Unity Reflect ver 2.1 】
建築革命、更に進化!デジタルツイン基盤の真打ち登場【概要編 Unity Reflect ver 2.1 】建築革命、更に進化!デジタルツイン基盤の真打ち登場【概要編 Unity Reflect ver 2.1 】
建築革命、更に進化!デジタルツイン基盤の真打ち登場【概要編 Unity Reflect ver 2.1 】Unity Technologies Japan K.K.
 
Burstを使ってSHA-256のハッシュ計算を高速に行う話
Burstを使ってSHA-256のハッシュ計算を高速に行う話Burstを使ってSHA-256のハッシュ計算を高速に行う話
Burstを使ってSHA-256のハッシュ計算を高速に行う話Unity Technologies Japan K.K.
 
Cinemachineで見下ろし視点のカメラを作る
Cinemachineで見下ろし視点のカメラを作るCinemachineで見下ろし視点のカメラを作る
Cinemachineで見下ろし視点のカメラを作るUnity Technologies Japan K.K.
 
Unityティーチャートレーニングデイ -認定プログラマー編-
Unityティーチャートレーニングデイ -認定プログラマー編-Unityティーチャートレーニングデイ -認定プログラマー編-
Unityティーチャートレーニングデイ -認定プログラマー編-Unity Technologies Japan K.K.
 
Unityティーチャートレーニングデイ -認定3Dアーティスト編-
Unityティーチャートレーニングデイ -認定3Dアーティスト編-Unityティーチャートレーニングデイ -認定3Dアーティスト編-
Unityティーチャートレーニングデイ -認定3Dアーティスト編-Unity Technologies Japan K.K.
 
Unityティーチャートレーニングデイ -認定アソシエイト編-
Unityティーチャートレーニングデイ -認定アソシエイト編-Unityティーチャートレーニングデイ -認定アソシエイト編-
Unityティーチャートレーニングデイ -認定アソシエイト編-Unity Technologies Japan K.K.
 

More from Unity Technologies Japan K.K. (20)

建築革命、更に更に進化!便利さ向上【Unity Reflect ver 3.0 】
建築革命、更に更に進化!便利さ向上【Unity Reflect ver 3.0 】建築革命、更に更に進化!便利さ向上【Unity Reflect ver 3.0 】
建築革命、更に更に進化!便利さ向上【Unity Reflect ver 3.0 】
 
UnityのクラッシュをBacktraceでデバッグしよう!
UnityのクラッシュをBacktraceでデバッグしよう!UnityのクラッシュをBacktraceでデバッグしよう!
UnityのクラッシュをBacktraceでデバッグしよう!
 
Unityで始めるバーチャルプロダクション
Unityで始めるバーチャルプロダクションUnityで始めるバーチャルプロダクション
Unityで始めるバーチャルプロダクション
 
ビジュアルスクリプティング (旧:Bolt) で始めるUnity入門3日目 ゲームをカスタマイズしよう
ビジュアルスクリプティング (旧:Bolt) で始めるUnity入門3日目 ゲームをカスタマイズしようビジュアルスクリプティング (旧:Bolt) で始めるUnity入門3日目 ゲームをカスタマイズしよう
ビジュアルスクリプティング (旧:Bolt) で始めるUnity入門3日目 ゲームをカスタマイズしよう
 
ビジュアルスクリプティングで始めるUnity入門2日目 ゴールとスコアの仕組み - Unityステーション
ビジュアルスクリプティングで始めるUnity入門2日目 ゴールとスコアの仕組み - Unityステーションビジュアルスクリプティングで始めるUnity入門2日目 ゴールとスコアの仕組み - Unityステーション
ビジュアルスクリプティングで始めるUnity入門2日目 ゴールとスコアの仕組み - Unityステーション
 
ビジュアルスクリプティングで始めるUnity入門1日目 プレイヤーを動かそう
ビジュアルスクリプティングで始めるUnity入門1日目 プレイヤーを動かそうビジュアルスクリプティングで始めるUnity入門1日目 プレイヤーを動かそう
ビジュアルスクリプティングで始めるUnity入門1日目 プレイヤーを動かそう
 
PlasticSCMの活用テクニックをハンズオンで一緒に学ぼう!
PlasticSCMの活用テクニックをハンズオンで一緒に学ぼう!PlasticSCMの活用テクニックをハンズオンで一緒に学ぼう!
PlasticSCMの活用テクニックをハンズオンで一緒に学ぼう!
 
点群を使いこなせ! 可視化なんて当たり前、xRと点群を組み合わせたUnityの世界 【Interact , Stipple】
点群を使いこなせ! 可視化なんて当たり前、xRと点群を組み合わせたUnityの世界 【Interact , Stipple】点群を使いこなせ! 可視化なんて当たり前、xRと点群を組み合わせたUnityの世界 【Interact , Stipple】
点群を使いこなせ! 可視化なんて当たり前、xRと点群を組み合わせたUnityの世界 【Interact , Stipple】
 
Unity教える先生方注目!ティーチャートレーニングデイを体験しよう
Unity教える先生方注目!ティーチャートレーニングデイを体験しようUnity教える先生方注目!ティーチャートレーニングデイを体験しよう
Unity教える先生方注目!ティーチャートレーニングデイを体験しよう
 
「原神」におけるコンソールプラットフォーム開発
「原神」におけるコンソールプラットフォーム開発「原神」におけるコンソールプラットフォーム開発
「原神」におけるコンソールプラットフォーム開発
 
FANTASIANの明日使えない特殊テクニック教えます
FANTASIANの明日使えない特殊テクニック教えますFANTASIANの明日使えない特殊テクニック教えます
FANTASIANの明日使えない特殊テクニック教えます
 
インディーゲーム開発の現状と未来 2021
インディーゲーム開発の現状と未来 2021インディーゲーム開発の現状と未来 2021
インディーゲーム開発の現状と未来 2021
 
建築革命、更に進化!デジタルツイン基盤の真打ち登場【概要編 Unity Reflect ver 2.1 】
建築革命、更に進化!デジタルツイン基盤の真打ち登場【概要編 Unity Reflect ver 2.1 】建築革命、更に進化!デジタルツイン基盤の真打ち登場【概要編 Unity Reflect ver 2.1 】
建築革命、更に進化!デジタルツイン基盤の真打ち登場【概要編 Unity Reflect ver 2.1 】
 
Burstを使ってSHA-256のハッシュ計算を高速に行う話
Burstを使ってSHA-256のハッシュ計算を高速に行う話Burstを使ってSHA-256のハッシュ計算を高速に行う話
Burstを使ってSHA-256のハッシュ計算を高速に行う話
 
Cinemachineで見下ろし視点のカメラを作る
Cinemachineで見下ろし視点のカメラを作るCinemachineで見下ろし視点のカメラを作る
Cinemachineで見下ろし視点のカメラを作る
 
徹底解説 Unity Reflect【開発編 ver2.0】
徹底解説 Unity Reflect【開発編 ver2.0】徹底解説 Unity Reflect【開発編 ver2.0】
徹底解説 Unity Reflect【開発編 ver2.0】
 
徹底解説 Unity Reflect【概要編 ver2.0】
徹底解説 Unity Reflect【概要編 ver2.0】徹底解説 Unity Reflect【概要編 ver2.0】
徹底解説 Unity Reflect【概要編 ver2.0】
 
Unityティーチャートレーニングデイ -認定プログラマー編-
Unityティーチャートレーニングデイ -認定プログラマー編-Unityティーチャートレーニングデイ -認定プログラマー編-
Unityティーチャートレーニングデイ -認定プログラマー編-
 
Unityティーチャートレーニングデイ -認定3Dアーティスト編-
Unityティーチャートレーニングデイ -認定3Dアーティスト編-Unityティーチャートレーニングデイ -認定3Dアーティスト編-
Unityティーチャートレーニングデイ -認定3Dアーティスト編-
 
Unityティーチャートレーニングデイ -認定アソシエイト編-
Unityティーチャートレーニングデイ -認定アソシエイト編-Unityティーチャートレーニングデイ -認定アソシエイト編-
Unityティーチャートレーニングデイ -認定アソシエイト編-
 

【Unity道場スペシャル 2017博多】クォータニオン完全マスター