fc2ブログ
ヽ|∵|ゝ(Fantom) の 開発blog? ホーム »図解
このページの記事一覧

【Unity】5ボタンマウスの KeyCode 図解  


 Unity の UI 操作でも、マウスのバックボタンが使えたら少し便利かな、と思って調べてみたら、簡単だった(笑)。早速「VRM Live Viewer」に導入してみたら、結構良い感じ。クリティカルでない「はい/いいえ」の2択を「進む(フォワード)/戻る(バック)」ボタンで操作できたら、色々楽になるかもね。

 何でも図や表にしておくのは、ただの私のクセ。まぁ、何度もマニュアルを見て探すのが億劫なので、一見してわかるものが欲しいだけなんだけどね(笑)。

KeyCode

(※) Unity 2018.4.6f1 / Windows10(x64) で確認



■マウスのボタンと KeyCode 対応図


(マウス イラスト素材) 無料イラスト素材倉庫 (※少し加工)

 あくまでもデフォルト状態なので、専用ドライバ等でカスタマイズしてる場合は定かではない。たぶん、ゲーミングマウスみたいな多ボタンマウスも 5~n で行けるんだろうね(※未確認)。

 判定するメソッドは Input.GetKey / GetKeyDown / GetKeyUp などお好みで。

 Input.GetMouseButtonDown(int) などでも引数の番号を入れれば、マニュアルには 0~2 までしか書いてないが、3, 4 でもバック/フォワード判定できるみたい

 ホイールの Input.mouseScrollDelta はオマケ(笑)。

(マニュアル)
KeyCode
Input.GetKey
Input.GetKeyDown
Input.GetKeyUp
Input.GetMouseButton
Input.GetMouseButtonDown
Input.GetMouseButtonUp
Input.mouseScrollDelta
Input.GetAxis







(関連記事)
【Unity】【C#】KeyCode をリアルタイムで調べる / Windows 日本語キーボードでの記号の KeyCode 一覧
【Unity】【C#】長押し(ロングタップ)を取得してコールバックする
【Unity】【C#】スワイプ(フリック)を判定、方向を取得してコールバックする
【Unity】【C#】ピンチ操作を取得してコールバックする
【Unity】【C#】ゲームパッドの右スティックを使えるようにする


関連記事
スポンサーサイト



category: Unity

thread: ゲーム開発

janre: コンピュータ

tag: Unityリファレンス  図解  InputManager 
tb: 0   cm: --

【Unity】図解 Yaw(ヨー)、Pitch(ピッチ)、Roll(ロール)の覚え方 by ユニティちゃん(笑)  


 あくまでも Unity での左手座標系での回転になるが、符号を含めた方向の画像はググっても見つからなかったので自分で作ってみた(笑)。いくつか画像を載せておくが、これらは以前の記事の解説用に作ったもので、視覚的にちゃちゃっと確認したいときに便利と思って集めただけのものだ。なので、内容的に重複しているものがあるが了承して欲しい。自分にとってわかりやすい画像を見れば良いのではないだろうか。画像によってはクリックすると大きく表示できるものもあるので、小さくて見づらかったらクリックして欲しい。

 ちなみに Yaw(ヨー)、Pitch(ピッチ)、Roll(ロール)は回転する方向のことであって、それぞれ Y, X, Z軸で回転するという意味ではない。なので例えば、右手系座標のときは Z, Y, X軸がそれぞれ Yaw, Pitch, Roll になったりもする。簡単な覚え方は、首を左右に振る回転をYaw(ヨー)、首を縦に振る回転をPitch(ピッチ)、首をかしげる回転をRoll(ロール)と覚えれば楽だ。これなら 座標系が異なるときでも回転方向がわかりやすいので、間違えることはないだろう(符号は座標系によるので注意)。


(※) Unity 5.6.2p2 / Windows10(x64) で確認

■Yaw, Pitch, Roll と首(頭)の向き
Yaw Pitch Roll by UnityChan
首の回し方で視界がどう見えるかを考えれば、簡単に覚えられる

Yaw Pitch Roll by UnityChan
Yaw(ヨー)はバレリーナのようにくるくる回り、
Pitch(ピッチ)はでんぐり返しのようにコロコロ転がり、
Roll(ロール)は寝転がりながら左右にのたうち回る、と覚えるとか(笑)。


■平面に射影された角度

符号付き角度


Unity の 3D での回転方向と符号(前、上、右は Z軸正方向を向いているとき)

●XZ平面に射影された角度

Yaw での回転の角度に符号を付けたものと考える

●YZ平面に射影された角度

Pitch での回転の角度に符号を付けたものと考える

●XY平面に射影された角度

Roll での回転の角度に符号を付けたものと考える


■平面と2D外積

2D外積

●XZ平面での2D外積

Y軸を無視したXZ平面は上空から見ている感じになる(※地の底から空へでも良いが逆向きに見えるので注意)。

●YZ平面での2D外積

X軸を無視したYZ平面は横(右)から見た感じになる。緑の横線が床となり、原点を中心にぐるりと回転する感じ。
キャラが人型なら、でんぐり返しが正方向、バク転が負方向になる。

●XY平面での2D外積(2Dモードと同じ)[※2D画面]

Z軸を無視したXY平面は 2Dモードと同じ。3Dモードなら背中から見ている感じになる。
この場合、頭のてっぺん(transform.up)を基準に回転の角度を考える。


 XY平面での2D外積だけは 2Dモードの画像を使っているので注意。これは「2Dでの符号(方向)付き角度を求める」の記事のものである。2Dでは▲は上の方向を向いているが、3Dでは背中から見る感じになるので、例の三角柱の場合は■にみえるハズ。手抜きで2D画面の解説をそのまま使っている(笑)。

 なお、「2D外積」という用語は、数学的に正式な名称でも定義でもなく、私が便宜上使っているだけの言葉なので、その概念は以前の記事を参照して欲しい。





(関連記事)
【Unity】【C#】床面(Yaw)/YZ平面(Pitch)に射影された角度を、符号(方向)付きで求める [3D]
【Unity】【C#】符号(方向)付き角度を、2Dの外積を使って求める [2D]




このコンテンツの一部には『ユニティちゃんライセンス』で許諾されたアセットが使用されています。
Portions of this work are licensed under Unity-Chan License

関連記事

category: Unity

thread: ゲーム開発

janre: コンピュータ

tag: 図解 
tb: 0   cm: --

【Android】【Java】FontMetrics 図解  


FontMetrics 図解

 以前FontMetrics のまとめ。結構確認したいときも多いので、自分用リファレンス的な。

Paint paint = new Paint();
paint.setTextSize(22f);
FontMetrics fontMetrics = paint.getFontMetrics();

 フォントサイズは 22f で実験。プロパティを調べてみると以下のようになる(全て float 型)。


 Applet と違って Android では負の値も出る。ベースラインからの距離と向きという感じ。
 「fontMetrics.leading」は除いてるが、複数行のとき行間となる
 文字の高さは paint.getFontMetrics(null) でも paint.descent() - paint.ascent() でも同じ。
 文字列の幅は paint.measureText("文字列") で求められる。


(関連記事)
【Android】Paint で斜体文字(≒italic) の Canvas 描画


関連記事

category: Android

thread: プログラミング

janre: コンピュータ

tag: Android資料  グラフィックス  図解 
tb: 0   cm: --


プロフィール

Social

検索フォーム

全記事一覧

カテゴリ

ユーザータグ

最新記事

リンク

PR

▲ Pagetop