回答編集履歴
6
間違いを修正
answer
CHANGED
@@ -15,7 +15,7 @@
|
|
15
15
|
|
16
16
|
|
17
17
|
**[受信側]**
|
18
|
-
・uGUIの場合、
|
18
|
+
・uGUIの場合、Raycast TargetがオンになったuGUIオブジェクト(Image、Textなど)
|
19
19
|
・uGUI以外の場合、Clliderがアタッチされている。
|
20
20
|
|
21
21
|
### Event Trigger、IxxxxHandlerの選び方
|
5
修正
answer
CHANGED
@@ -59,8 +59,8 @@
|
|
59
59
|
**オブジェクトの重なり順**
|
60
60
|
Event Systemは重なり順を考慮してくれます。例えばuGUIのButtonより前にImageがある場合、Buttonにイベントが伝達されず反応しなくなります。これをうまく利用するとユーザーの動作をコントロールしやすくなります。
|
61
61
|
|
62
|
-
**動くuGUI要素は
|
62
|
+
**動くuGUI要素は結構な負荷に**
|
63
|
-
Event Systemとは関係ないですが、
|
63
|
+
Event Systemとは関係ないですが、uGUIのすべての要素は画面に対して相対的に配置されます。Imageなどを動かす場合すべての要素が再計算されるので結構な負荷になります。対策としてはCanvasをもう一つ用意しそこで動かす方法や、動くものはuGUIを使わないという選択肢もあります。内容にもよりますが重くて動きが悪い場合はご検討ください。
|
64
64
|
|
65
65
|
**Unity上で使う座標の扱いを覚える**
|
66
66
|
uGUIを扱う上で座標の種類を知っておくと便利です。
|
4
修正
answer
CHANGED
@@ -59,6 +59,9 @@
|
|
59
59
|
**オブジェクトの重なり順**
|
60
60
|
Event Systemは重なり順を考慮してくれます。例えばuGUIのButtonより前にImageがある場合、Buttonにイベントが伝達されず反応しなくなります。これをうまく利用するとユーザーの動作をコントロールしやすくなります。
|
61
61
|
|
62
|
+
**動くuGUI要素は以外に重い**
|
63
|
+
Event Systemとは関係ないですが、uUGIのすべての要素は画面に対して相対的に配置されます。Imageなどを動かす場合すべての要素が再計算されるので結構な負荷になります。対策としてはCanvasをもう一つ用意しそこで動かす方法や、動くものはuGUIを使わないという選択肢もあります。内容にもよりますが重くて動きが悪い場合はご検討ください。
|
64
|
+
|
62
65
|
**Unity上で使う座標の扱いを覚える**
|
63
66
|
uGUIを扱う上で座標の種類を知っておくと便利です。
|
64
67
|
|
3
追記
answer
CHANGED
@@ -22,7 +22,7 @@
|
|
22
22
|
スクリプトで書きたい派の方はIxxxxHandlerを。Inspector上から手動でアタッチしたい派の方はEvent Triggerをアタッチし該当スクリプトをアタッチすると良いと思います。それ以外に、ひとつのオブジェクトに対してイベントを動的に切り替えたい時などはEvent Triggerをアタッチし、スクリプトで切り替えるといいと思います。
|
23
23
|
|
24
24
|
### IxxxxHandlerをuGUIのImageに対して実装するサンプル
|
25
|
-
Imageをドラッグする最小コードです。下記のコードをAssets以下に保存してuGUIの
|
25
|
+
Imageをドラッグする最小コードです。下記のコードをAssets以下に保存してuGUIのImageにアタッチすることで動作します。
|
26
26
|
|
27
27
|
```C#
|
28
28
|
using UnityEngine;
|
@@ -56,6 +56,9 @@
|
|
56
56
|
**Event SystemのDrag Threshold**
|
57
57
|
どのタイミングからドラッグがスタートするかを決めることができます。ドラッグに対しての感度みたいなものです。数値が低いほど感度が高くなります。例えば、1つのボタンがクリックできる克つ移動できるとします。感度が高いほどドラッグとして見なされやすくなるので、ユーザーが少しもドラッグせずクリックしなければクリックイベントが発火しないなどの設定ができます。
|
58
58
|
|
59
|
+
**オブジェクトの重なり順**
|
60
|
+
Event Systemは重なり順を考慮してくれます。例えばuGUIのButtonより前にImageがある場合、Buttonにイベントが伝達されず反応しなくなります。これをうまく利用するとユーザーの動作をコントロールしやすくなります。
|
61
|
+
|
59
62
|
**Unity上で使う座標の扱いを覚える**
|
60
63
|
uGUIを扱う上で座標の種類を知っておくと便利です。
|
61
64
|
|
2
修正
answer
CHANGED
@@ -19,7 +19,7 @@
|
|
19
19
|
・uGUI以外の場合、Clliderがアタッチされている。
|
20
20
|
|
21
21
|
### Event Trigger、IxxxxHandlerの選び方
|
22
|
-
スクリプトで書きたい派の方はIxxxxHandlerを。Inspector上から手動でアタッチしたい派の方はEvent Triggerを
|
22
|
+
スクリプトで書きたい派の方はIxxxxHandlerを。Inspector上から手動でアタッチしたい派の方はEvent Triggerをアタッチし該当スクリプトをアタッチすると良いと思います。それ以外に、ひとつのオブジェクトに対してイベントを動的に切り替えたい時などはEvent Triggerをアタッチし、スクリプトで切り替えるといいと思います。
|
23
23
|
|
24
24
|
### IxxxxHandlerをuGUIのImageに対して実装するサンプル
|
25
25
|
Imageをドラッグする最小コードです。下記のコードをAssets以下に保存してuGUIのイメージにアタッチすることで動作します。
|
@@ -54,7 +54,7 @@
|
|
54
54
|
### 知っておくと便利なこと
|
55
55
|
|
56
56
|
**Event SystemのDrag Threshold**
|
57
|
-
どのタイミングからドラッグがスタートするかを決めることができます。ドラッグに対しての感度みたいなものです。数値が低いほど感度が高くなります。例えば、1つのボタンがクリックできる克つ移動できるとします。感度が高いほどドラッグとして見なされやすくなるので、ユーザーが少しもドラッグせずクリックしなければクリックイベントが発火しま
|
57
|
+
どのタイミングからドラッグがスタートするかを決めることができます。ドラッグに対しての感度みたいなものです。数値が低いほど感度が高くなります。例えば、1つのボタンがクリックできる克つ移動できるとします。感度が高いほどドラッグとして見なされやすくなるので、ユーザーが少しもドラッグせずクリックしなければクリックイベントが発火しないなどの設定ができます。
|
58
58
|
|
59
59
|
**Unity上で使う座標の扱いを覚える**
|
60
60
|
uGUIを扱う上で座標の種類を知っておくと便利です。
|
1
修正
answer
CHANGED
@@ -57,7 +57,7 @@
|
|
57
57
|
どのタイミングからドラッグがスタートするかを決めることができます。ドラッグに対しての感度みたいなものです。数値が低いほど感度が高くなります。例えば、1つのボタンがクリックできる克つ移動できるとします。感度が高いほどドラッグとして見なされやすくなるので、ユーザーが少しもドラッグせずクリックしなければクリックイベントが発火しません。
|
58
58
|
|
59
59
|
**Unity上で使う座標の扱いを覚える**
|
60
|
-
uGUI
|
60
|
+
uGUIを扱う上で座標の種類を知っておくと便利です。
|
61
61
|
|
62
62
|
【Unity】【uGUI】Screenの座標とWorld(3D)座標の変換について
|
63
63
|
[http://tsubakit1.hateblo.jp/entry/2016/03/01/020510](http://tsubakit1.hateblo.jp/entry/2016/03/01/020510)
|