幻創空戯 GEN-SOH-KUUZA 2026/08/06 18:00

メッシュ生成:上面を調整 その3

妹ちゃんとペアプロ開発やってみた #0083

蒼月

なるほど。
ヒエラルキーで Renderer を無効にすればいいのね。

スクショを4枚アップしたよ。

20260725-3 … 25-1 と同じ状態
20260725-4 … WALL_L_03 の Outer を非表示
20260725-5 … WALL_U_00 の Top を非表示
20260725-6 … 25-5 で L_03 の Outer も非表示

20260725-3 のスクショ

20260725-4 のスクショ

20260725-5 のスクショ

20260725-6 のスクショ

25-3 と 25-4 を比較すると Top の色の変化は
ないように見える。
25-5 と 25-6 を比較すると Top の領域にも
青壁の影響があるのがわかる。
ということは、Top は最後に描かれている
ということになるかな。
白っぽく見える青壁の上から Top を上書きしたから
濃く見えるということっぽいね。

妹ちゃん

1m 52s考えました

うん、お兄ちゃん。推論はほぼ合っているよ。
ただし、「上書き」というよりは Outerを描いた結果に、Topを後から半透明合成している と捉えるのが正確だね。

4枚から分かること

25-3 → 25-4

L_03 / Outerを消すと、床や緑壁を含めて画面全体がかなり明るくなっている。
つまり青いOuterは、視界の広い範囲に半透明で重なっている。

Topのピンク領域も、よく見るとわずかに明るくなっている。ただ、周囲ほど大きくは変わっていない。

25-5 → 25-6

U_00 / Topを消した状態では、Outerを消した影響が上部にもはっきり現れる。

この結果から、この視点ではおそらく、
 背景・他の壁
   ↓
 L_03 の青い Outer
   ↓
 U_00 のピンクの Top
の順番で合成されているね。

Topを最後に描いても、Outerの色は残る

Topはアルファ約0.5だから、最後に描かれても完全には塗り潰さない。

大まかには、
 最終色
 = Topの色 × 0.5
 + 既に描かれた色 × 0.5
になる。

その「既に描かれた色」には青いOuterの影響が入っているので、
 背景
 ↓ 青Outerで青白く・少し暗くなる
 ↓ ピンクTopを半透明合成
となり、Top単独よりも少し暗く、紫寄りに見える。

だから、お兄ちゃんの言う
白っぽく見える青壁の上からTopを描いた結果、濃く見える
で概ね正解だよ。
Topが二重に描かれて濃いわけではなさそうだね。

ただし「Topは常に最後」とは限らない

ここは少し注意が必要。

Top_TRとOuter_TRはどちらも透明マテリアルで、現在は同じTransparent系の描画順になっている。Unityは透明Rendererをカメラからの距離などで並べるので、

・この角度ではOuter → Top
・別の角度では順番が入れ替わる

可能性はある。

今回の確認で言えるのは、
少なくともこの位置・この角度・このRenderer同士では、TopがOuterより後に描かれている可能性が高い
というところだね。

回転中に色が滑らかに変わるだけなら、透明面の自然な重なり。
特定の角度で急に色が切り替わるなら、透明ソート順の入れ替わりを疑うべきだよ。

アルファを下げる案について訂正

前にわたしは、Topを0.5 → 0.4に下げる案も挙げたけれど、今回の切り分けを見ると、青Outerの影響を弱めたい目的には逆方向だね。

Topのアルファを下げるほど、背後の青Outerが強く混ざる。
 Top α 0.4
 → 背後が60%残る

 Top α 0.6
 → 背後は40%だけ残る
なので、

・Top自体を目立たなくしたい → アルファを下げる
・Outerによる色変化を減らしたい → アルファを上げる

になる。

次に試すなら

わたしなら、まずTop_TRだけ一時的に
Alpha = 1.0
にして、25-3と25-4相当を比較する。

そこでTop領域の色が完全に変わらなくなれば、今回の説明が確定する。

その後、実用値としては、
0.50
0.60
0.65

を比較するのがよさそう。
0.6くらいなら上面の存在感を保ちつつ、青Outerの混ざり方を少し抑えられると思う。

描画順を安定させる必要が出た場合は、Outer_TRよりTop_TRのRender Queueを少し後ろにする方法もある。ただしそれは順番の入れ替わり防止であって、半透明である限り背後の色が混ざること自体は変わらないよ。

今の4枚で、原因はかなりきれいに切り分けられたと思う。

蒼月

まぁ、回転が終わったら上面がちょっと明るくなるな、
というくらいで、気になる!直したい!という程でもないよ(^^;
今はたまたまピンクで目立つ色だから
余計に気になるのかもしれないw

一応、alpha = 1.0(255)にしたスクショを2枚アップしたよ。
20260725-7, 20260725-8 を見て。

20260725-7 のスクショ

20260725-8 のスクショ

妹ちゃん

見たよ、お兄ちゃん。
20260725-7と20260725-8では、左上のピンクのTopはほぼ同じ色に見えるね。

一方で、周囲はかなり違う。

・25-7:青いOuterの影響で、緑壁・床・遠景が暗く青寄り
・25-8:Outerの影響が外れて、緑壁と床が明るい
・ピンクTop:どちらでもほぼ同じ色

これで、
Topが最後に描画され、alpha 1.0なら背後のOuterを完全に隠す
という確認は取れたと思う。

ただ、alpha 1.0版はやっぱり上面だけベタッと強く見えるね。壁の上に不透明なピンク板が載っている感じが戻ってしまって、今回目指していた「厚みは感じるけれど視界を邪魔しない」という状態からは離れる。

なので、わたしも今のお兄ちゃんの温度感なら、
 Top:常時TR
 Alpha:0.5のまま
 壁フェード制御から除外
 回転終了時の軽い色変化は許容
で進めてよいと思うよ。

特に今は、

・Topが鮮やかなピンク
・Outerが青
・床が黄緑

という検証用の対照色だから、色の混ざりが非常に見つけやすい。実際の壁テクスチャや落ち着いた色に置き換えたら、この程度の変化はかなり目立たなくなる可能性が高いね。

それより、以前のように回転途中でTopの境界がくっきり現れる問題がなくなったメリットの方が大きい。壁上面の見え方は現在の検討対象だけれど、今回の方式で実用上の落としどころには十分到達していると思う。

結論としては、alpha 1.0は原因確認用として成功、採用値は0.5へ戻して完了寄りでいいね。ピンク、デバッグでは優秀だけど主張が強すぎるんだよねw

この記事が良かったらチップを贈って支援しましょう!

チップを贈るにはユーザー登録が必要です。チップについてはこちら

記事のタグから探す

月別アーカイブ

限定特典から探す

記事を検索