0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

Gizmos.DrawGUITextureの挙動がややこしい

Posted at

最初に

Gizmos.DrawGUITextureを使ったが挙動に癖があった。
Gizmosの中で唯一TextureをSceneView上に貼り付けられるが、使用できる用途が限られているように感じた。

結論からいうと、SceneView上でUI要素に対して使うのが主な用途だと思う。
それ以外はかなり難しそう。

こちらで確認した動作をここにまとめておく。
動作の確認は Unity 2021.3.19f1 で行った。

screenRect引数は整数値

関数の引数にscreenRectというRect型の引数があるが、
実際には座標や幅、高さがint型に直されて使われる。

このため最小サイズが決まっている。

ScreenSpaceに表示される

ScreenSpaceとはUIが表示される場所のこと。
具体的にはCanvasを新規作成したときに表示される場所。
(普通のゲームオブジェクトに対してやたらデカく表示されるやつ)

なので、基本的な使い道はSceneViewでUI要素に対して使うこと。

GameView上で見た時の挙動が不思議

ちなみにGizmoはGameView上でも表示できる。
Gizmos.DrawGUITextureで貼り付けたTextureもGameView上で表示できる。

しかしScreenSpace-Overlayのようにカメラ上に勝手に表示されない。
わざわざカメラで撮影しに行く必要がある

設定するときの座標はScreenSpaceに準拠しているが、実際にはWorld空間にいる扱いのようだ。
(ScreenSpace-Overlayのように扱えれば、もっと使い道があるのに……)


挙動について補足があればコメントよろしくお願いします。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?