質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
Unity3D

Unity3Dは、ゲームや対話式の3Dアプリケーション、トレーニングシュミレーション、そして医学的・建築学的な技術を可視化する、商業用の開発プラットフォームです。

Q&A

解決済

1回答

1297閲覧

3DプロジェクトでのSpriteRendererの取り扱い方

unity2018

総合スコア34

Unity3D

Unity3Dは、ゲームや対話式の3Dアプリケーション、トレーニングシュミレーション、そして医学的・建築学的な技術を可視化する、商業用の開発プラットフォームです。

0グッド

0クリップ

投稿2018/11/16 10:37

実行したいことは先日教えていただいた
http://tsubakit1.hateblo.jp/entry/2017/07/21/012736
このようなエフェクトを3Dゲームのcanvas上に表示したいです

上記エフェクトは2DゲームプロジェクトでSpriteとSpriteMaskを追加することでとても簡単に実行できましたが
3Dゲームプロジェクト上で同じ手順をしてもSpriteがワールド座標に変換され
Spriteがカメラに表示されません(Sptite,Mask共にCanvas上に追加)
これは3Dプロジェクト特有のものでしょうか?
また3Dプロジェクトで実行したいのですが、どうすればよろしいでしょうか?

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

ベストアンサー

CanvasはuGUIというUI表示用の機能で使用するものです。
(UI用の画像は「Image」というコンポーネントを用いて、Canvasオブジェクトの子オブジェクトとなるように配置します)
なのでSpriteやSpriteMaskはCanvas下に置かないのが大前提です。(置いてもいいけどちゃんと理解した上でやるべき)

2Dプロジェクトと3Dプロジェクトは実際は同じものです。
(一部の設定が2D/3Dに最適化されているだけです。後から変更可能です)
どちらの場合も全てのオブジェクトは3D空間上にあります。
(Canvas下の場合は画面サイズに合わせた自動計算とそれに伴う表示変更が行われているので違って見える。そもそも「Transform」と「RectTransform」という似て非なるオブジェクトが付いているはず)

多分Spriteの座標とカメラの座標がずれていて見えないだけだと思います。
この辺りが不明瞭なら、まずは何かしらのチュートリアルをやった方がいいと思います。

投稿2018/11/17 05:07

sakura_hana

総合スコア11427

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

unity2018

2018/11/17 19:11 編集

常にSpriteを表示したい場合はカメラと並行して移動させるしか方法はないのですか?
sakura_hana

2018/11/18 04:28

Spriteをカメラに合わせて移動させる カメラをSpriteに合わせて移動させる Spriteとカメラは動かさず他のオブジェクトを移動させる Sprite専用カメラを用意して、その他を映すカメラと重ねる Cinemachineを使ってカメラを切り替える(一例→ http://tsubakit1.hateblo.jp/entry/2018/11/15/220209 ) ぱっと思い付くのはこの辺りです。
unity2018

2018/11/19 15:41

回答ありがとうございます ピンポイントの質問はチュートリアルより sakura_hanaに聞いた方が早いし便利ですね
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問