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

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

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

C#はマルチパラダイムプログラミング言語の1つで、命令形・宣言型・関数型・ジェネリック型・コンポーネント指向・オブジェクティブ指向のプログラミング開発すべてに対応しています。

オブジェクト

オブジェクト指向において、データとメソッドの集合をオブジェクト(Object)と呼びます。

Unity

Unityは、Unity Technologiesが開発・販売している、IDEを内蔵するゲームエンジンです。主にC#を用いたプログラミングでコンテンツの開発が可能です。

Q&A

解決済

2回答

5486閲覧

UnityのRenderTextureで映した物が、オブジェクトに隠れない方法

orochinodoppo

総合スコア14

C#

C#はマルチパラダイムプログラミング言語の1つで、命令形・宣言型・関数型・ジェネリック型・コンポーネント指向・オブジェクティブ指向のプログラミング開発すべてに対応しています。

オブジェクト

オブジェクト指向において、データとメソッドの集合をオブジェクト(Object)と呼びます。

Unity

Unityは、Unity Technologiesが開発・販売している、IDEを内蔵するゲームエンジンです。主にC#を用いたプログラミングでコンテンツの開発が可能です。

0グッド

0クリップ

投稿2019/11/14 04:17

編集2019/11/14 10:07

前提・実現したいこと

トルネコの大冒険みたいなマップを実装しようと思い、実現方法を模索していたところ、RenderTextureというものを知りました。
LineRendererでマップを描画し、RenderTextureで写せばできるかな思い、試しにやってみたのですが、RenderTextureで写したマップがオブジェクトに隠れてしまいます。

イメージ的には↓のようにしたいのですが、
イメージ説明
イメージ説明
↓のように地面でマップが隠れてしまいます。
イメージ説明
イメージ説明

初歩的なことだと思いますが、どなたかご教授ください。

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

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

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

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

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

guest

回答2

0

自己解決

こちらのサイトを参考にしたら実装したいことができました。
http://naichilab.blogspot.jp/2013/07/unity.html
RenderTextureとか使わなくてよかったんですね。
RenderTextureは結局よくわからなかった、、、。

そもそも、RenderTextureの使い方が間違っていたので、この件はクローズします。
ご迷惑をおかけしました。

投稿2019/11/14 09:30

編集2019/11/14 10:08
orochinodoppo

総合スコア14

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

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

hogefugapiyo

2019/11/15 00:30

テクスチャにレンダリングできるのが強みです。 ゲームで使うなら、UIに3Dオブジェクトを表示したりするときに使うのも手です(よく3Dモデルが回転しているUIとかありますよね、ああいうのが作れます) http://www.karvan1230.com/entry/2018/01/20/013921
orochinodoppo

2019/11/15 01:22

なるほど、3DオブジェクトをUIのように使うことができるんですね。 RawImageっていうものを知らなかったから使えなかったのかー。 参考になりました。ありがとうございました。
guest

0

恐らくCanvasのRender ModeがScreen Space-Cameraになっているのではないでしょうか。
Render Cameraにセットされているカメラを右側の〇を押してNoneにしたのち、
Render Mode をScreen Space -Overlayに変更してください。

この時、恐らくAdditional Shader channelsがMixになっていて下に黄色い警告マークと英文が表示されていると思いますが、タブを開いてTexCoord1のみにチェックを入れると警告は消えます。

イメージ説明

投稿2019/11/14 06:27

Y0241-N

総合スコア1066

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

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

orochinodoppo

2019/11/14 09:29

ご丁寧にご教授してくださってありがとうございます。 そもそもRenderTextureの使い方が間違っているような気がします。 RenderTextureに映す物もメインカメラに映り込ませようとしたのが、おかしいですよね。
Y0241-N

2019/11/15 00:01

今回のような使い方ですと、常に画面の最前面に映っていてほしいので、メインカメラ基準というのは都合が悪いですね。 参考にしたというURL先のサイトを見たのですが、Depthを調整することで床より手前に表示できたという感じなのでしょうか?
orochinodoppo

2019/11/15 01:12

そうですね。 以下の手順で実現できました。 ①メインカメラとサブカメラで別々にオブジェクトを映す (メインカメラとサブカメラに映すオブジェクトが被らないようにする、またはレイヤーを設定) ↓ ②サブカメラのClearFlagsをDepthOnlyにする ↓ ③サブカメラのDepthをメインカメラより大きい値する。
Y0241-N

2019/11/15 01:24

なるほど、面白いですね。 uGUIと組み合わせる必要が無いのであれば、確かにこの方法でも問題なさそうですね。 表示切替もカメラのActiveをON/OFFするだけでいいですし... メインとサブで移すオブジェクトが同じであれば、更に何かと利便性がありそうですね、 勉強になりました、ありがとうございます。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.48%

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

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

質問する

関連した質問