やったこと
同じz軸上に複数の画像を乗せたいが、角度によって表示がブレるので、(左)
「レイヤーの順序」や「Sorting Group」を使用してどの角度でも同じに見えるようにした。(右)
発生した問題/試したこと
奥に行っても手前に表示される。
z軸に合わせて「レイヤーの順序」や「Sorting Group」の数字を変更した。
解決しきれなかった問題
このオブジェクトはかなり動くから、毎フレームレイヤーの順序を変更するのは重そう。
後ろから見たときに奥のほうが手前に表示されてしまう。
できれば…
負荷は多少なら良いが、あまりかけたくない。
演出として、枠だけ動かしたりなどをしたいので、1つの画像として処理はしたくない。
補足
この方法の原型が残っていなくても、解決できれば方法は問いません。
オブジェクトの中身
Unity 2020.1.12f1 (常に最新版を使う予定)
Windows 10
気になる質問をクリップする
クリップした質問は、後からいつでもMYページで確認できます。
またクリップした質問に回答があった際、通知やメールを受け取ることができます。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
回答1件
0
ベストアンサー
すごく素朴な案なんですけども、下図のように三角形部分だけわずかにずらしてみるのはダメでしょうかね(背景と三角形のZ座標が本当にぴったり同じでないと何かまずいことがあるでしょうか)?
念のためFrame Debuggerで描画過程を見てみると奥から順に背景→三角形→背景→三角形→...と描画されたようですし、
背面から見れば三角形は背景に隠れて見えなくなりました。
##追記
背景を下図のようなメッシュにして...
Wavefront
1# 64 vertex positions 2v -37.5 50 0 3v -37.5 46.875 0 4v 37.5 46.875 0 5v 37.5 50 0 6v 41.149174 46.138271 0 7v 42.365566 49.017689 0 8v 44.129128 44.129128 0 9v 46.338837 46.338837 0 10v 46.138271 41.149174 0 11v 49.017689 42.365566 0 12v 46.875 37.5 0 13v 50 37.5 0 14v 46.875 -37.5 0 15v 50 -37.5 0 16v 46.138271 -41.149174 0 17v 49.017689 -42.365566 0 18v 44.129128 -44.129128 0 19v 46.338837 -46.338837 0 20v 41.149174 -46.138271 0 21v 42.365566 -49.017689 0 22v 37.5 -46.875 0 23v 37.5 -50 0 24v -37.5 -46.875 0 25v -37.5 -50 0 26v -41.149174 -46.138271 0 27v -42.365566 -49.017689 0 28v -44.129128 -44.129128 0 29v -46.338837 -46.338837 0 30v -46.138271 -41.149174 0 31v -49.017689 -42.365566 0 32v -46.875 -37.5 0 33v -50 -37.5 0 34v -46.875 37.5 0 35v -50 37.5 0 36v -46.138271 41.149174 0 37v -49.017689 42.365566 0 38v -44.129128 44.129128 0 39v -46.338837 46.338837 0 40v -41.149174 46.138271 0 41v -42.365566 49.017689 0 42v 37.5 43.75 0 43v -37.5 43.75 0 44v -37.5 37.5 0 45v 37.5 37.5 0 46v 43.75 -37.5 0 47v 43.75 37.5 0 48v 37.5 -37.5 0 49v -37.5 -43.75 0 50v 37.5 -43.75 0 51v -37.5 -37.5 0 52v -43.75 37.5 0 53v -43.75 -37.5 0 54v 43.258846 39.932781 0 55v 39.932781 43.258846 0 56v 41.919418 41.919418 0 57v 43.258846 -39.932781 0 58v 41.919418 -41.919418 0 59v 39.932781 -43.258846 0 60v -43.258846 -39.932781 0 61v -39.932781 -43.258846 0 62v -41.919418 -41.919418 0 63v -39.932781 43.258846 0 64v -43.258846 39.932781 0 65v -41.919418 41.919418 0 66 67# 64 UV coordinates 68vt 0.125 1 0 69vt 0.125 0.96875006 0 70vt 0.87500006 0.96875006 0 71vt 0.87500006 1 0 72vt 0.91149175 0.96138275 0 73vt 0.92365569 0.99017692 0 74vt 0.94129133 0.94129133 0 75vt 0.96338838 0.96338838 0 76vt 0.96138275 0.91149175 0 77vt 0.99017692 0.92365569 0 78vt 0.96875006 0.87500006 0 79vt 1 0.87500006 0 80vt 0.96875006 0.125 0 81vt 1 0.125 0 82vt 0.96138275 0.088508248 0 83vt 0.99017692 0.076344311 0 84vt 0.94129133 0.058708727 0 85vt 0.96338838 0.036611617 0 86vt 0.91149175 0.038617253 0 87vt 0.92365569 0.0098231435 0 88vt 0.87500006 0.03125 0 89vt 0.87500006 0 0 90vt 0.125 0.03125 0 91vt 0.125 0 0 92vt 0.088508278 0.038617253 0 93vt 0.076344334 0.0098231435 0 94vt 0.058708742 0.058708727 0 95vt 0.036611635 0.036611617 0 96vt 0.038617279 0.088508248 0 97vt 0.0098231202 0.076344311 0 98vt 0.03125 0.125 0 99vt 0 0.125 0 100vt 0.03125 0.87500006 0 101vt 0 0.87500006 0 102vt 0.038617279 0.91149175 0 103vt 0.0098231202 0.92365569 0 104vt 0.058708742 0.94129133 0 105vt 0.036611635 0.96338838 0 106vt 0.088508278 0.96138275 0 107vt 0.076344334 0.99017692 0 108vt 0.87500006 0.93750006 0 109vt 0.125 0.93750006 0 110vt 0.125 0.87500006 0 111vt 0.87500006 0.87500006 0 112vt 0.93750006 0.125 0 113vt 0.93750006 0.87500006 0 114vt 0.87500006 0.125 0 115vt 0.125 0.0625 0 116vt 0.87500006 0.0625 0 117vt 0.125 0.125 0 118vt 0.0625 0.87500006 0 119vt 0.0625 0.125 0 120vt 0.93258852 0.89932787 0 121vt 0.89932787 0.93258852 0 122vt 0.91919428 0.91919428 0 123vt 0.93258852 0.10067219 0 124vt 0.91919428 0.080805838 0 125vt 0.89932787 0.067411542 0 126vt 0.067411534 0.10067219 0 127vt 0.10067219 0.067411542 0 128vt 0.080805823 0.080805838 0 129vt 0.10067219 0.93258852 0 130vt 0.067411534 0.89932787 0 131vt 0.080805823 0.91919428 0 132 133# 1 vertex normals 134vn 0 0 1 135 136# Mesh 'SignBackground' with 66 faces 137g SignBackground 138f 1/1/1 2/2/1 3/3/1 139f 3/3/1 4/4/1 1/1/1 140f 4/4/1 3/3/1 5/5/1 141f 5/5/1 6/6/1 4/4/1 142f 6/6/1 5/5/1 7/7/1 143f 7/7/1 8/8/1 6/6/1 144f 8/8/1 7/7/1 9/9/1 145f 9/9/1 10/10/1 8/8/1 146f 10/10/1 9/9/1 11/11/1 147f 11/11/1 12/12/1 10/10/1 148f 12/12/1 11/11/1 13/13/1 149f 13/13/1 14/14/1 12/12/1 150f 14/14/1 13/13/1 15/15/1 151f 15/15/1 16/16/1 14/14/1 152f 16/16/1 15/15/1 17/17/1 153f 17/17/1 18/18/1 16/16/1 154f 18/18/1 17/17/1 19/19/1 155f 19/19/1 20/20/1 18/18/1 156f 20/20/1 19/19/1 21/21/1 157f 21/21/1 22/22/1 20/20/1 158f 22/22/1 21/21/1 23/23/1 159f 23/23/1 24/24/1 22/22/1 160f 24/24/1 23/23/1 25/25/1 161f 25/25/1 26/26/1 24/24/1 162f 26/26/1 25/25/1 27/27/1 163f 27/27/1 28/28/1 26/26/1 164f 28/28/1 27/27/1 29/29/1 165f 29/29/1 30/30/1 28/28/1 166f 30/30/1 29/29/1 31/31/1 167f 31/31/1 32/32/1 30/30/1 168f 32/32/1 31/31/1 33/33/1 169f 33/33/1 34/34/1 32/32/1 170f 34/34/1 33/33/1 35/35/1 171f 35/35/1 36/36/1 34/34/1 172f 36/36/1 35/35/1 37/37/1 173f 37/37/1 38/38/1 36/36/1 174f 38/38/1 37/37/1 39/39/1 175f 39/39/1 40/40/1 38/38/1 176f 40/40/1 39/39/1 2/2/1 177f 2/2/1 1/1/1 40/40/1 178f 41/41/1 42/42/1 43/43/1 179f 43/43/1 44/44/1 41/41/1 180f 45/45/1 46/46/1 44/44/1 181f 44/44/1 47/47/1 45/45/1 182f 48/48/1 49/49/1 47/47/1 183f 47/47/1 50/50/1 48/48/1 184f 51/51/1 52/52/1 50/50/1 185f 50/50/1 43/43/1 51/51/1 186f 41/41/1 44/44/1 46/46/1 187f 46/46/1 53/53/1 41/41/1 188f 54/54/1 41/41/1 53/53/1 189f 53/53/1 55/55/1 54/54/1 190f 56/56/1 45/45/1 47/47/1 191f 47/47/1 49/49/1 56/56/1 192f 57/57/1 56/56/1 49/49/1 193f 49/49/1 58/58/1 57/57/1 194f 48/48/1 50/50/1 52/52/1 195f 52/52/1 59/59/1 48/48/1 196f 60/60/1 48/48/1 59/59/1 197f 59/59/1 61/61/1 60/60/1 198f 51/51/1 43/43/1 42/42/1 199f 42/42/1 62/62/1 51/51/1 200f 63/63/1 51/51/1 62/62/1 201f 62/62/1 64/64/1 63/63/1 202f 50/50/1 47/47/1 44/44/1 203f 44/44/1 43/43/1 50/50/1
マテリアルは下記のように不透明両面描画とし...
ShaderLab
1Shader "Unlit/Opaque (Double Sided)" 2{ 3 Properties 4 { 5 _MainTex ("Texture", 2D) = "white" {} 6 } 7 SubShader 8 { 9 Tags { "Queue"="Geometry" "RenderType"="Opaque" } 10 11 Cull Off 12 13 Pass 14 { 15 CGPROGRAM 16 #pragma vertex vert 17 #pragma fragment frag 18 #pragma multi_compile_fog 19 #pragma multi_compile_instancing 20 21 #include "UnityCG.cginc" 22 23 struct appdata 24 { 25 float4 vertex : POSITION; 26 float2 uv : TEXCOORD0; 27 UNITY_VERTEX_INPUT_INSTANCE_ID 28 }; 29 30 struct v2f 31 { 32 float2 uv : TEXCOORD0; 33 UNITY_FOG_COORDS(1) 34 float4 vertex : SV_POSITION; 35 }; 36 37 sampler2D _MainTex; 38 float4 _MainTex_ST; 39 40 v2f vert(appdata v) 41 { 42 v2f o; 43 UNITY_SETUP_INSTANCE_ID(v); 44 o.vertex = UnityObjectToClipPos(v.vertex); 45 o.uv = TRANSFORM_TEX(v.uv, _MainTex); 46 UNITY_TRANSFER_FOG(o,o.vertex); 47 return o; 48 } 49 50 fixed4 frag(v2f i) : SV_Target 51 { 52 fixed4 col = tex2D(_MainTex, i.uv); 53 UNITY_APPLY_FOG(i.fogCoord, col); 54 return col; 55 } 56 ENDCG 57 } 58 } 59}
前面のTextMesh ProオブジェクトのZ座標は背景から0.001ずらしたところ、ちょっと確認した限りでは見た目上の不自然さはなさそうでした。
投稿2020/11/11 12:07
編集2020/11/11 21:11総合スコア10811
あなたの回答
tips
太字
斜体
打ち消し線
見出し
引用テキストの挿入
コードの挿入
リンクの挿入
リストの挿入
番号リストの挿入
表の挿入
水平線の挿入
プレビュー
質問の解決につながる回答をしましょう。 サンプルコードなど、より具体的な説明があると質問者の理解の助けになります。 また、読む側のことを考えた、分かりやすい文章を心がけましょう。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2020/11/11 15:22
2020/11/11 21:13
2020/11/12 14:28