#困っている点
半透明のオブジェクト内が表示されたりされなかったりします.
具体的に例を挙げますと,肝臓(黄色の線内にある半透明の赤)の中に門脈(水色),肝静脈(青)があるのですが,カメラの角度により,肝臓内が表示されたりされなかったりします.
肝臓が特に目立つのですが,半透明の物体は回転しているとパッと表示が切り替わることがあり,とても気持ち悪いです.
#現在の設定
次の記事を参考にし,そのままShaderを設定しています.
このShaderを各マテリアルに設定し,Rendering Mode : Fade,AlbedoのA値を調整することで半透明にしています.
【Unity】3Dモデルの半透明をキレイに表示するシェーダを実装する
Shaderの内容が長く,文字数制限に引っかかりました…
#試したこと
Unity 半透明描画するサーフェースシェーダーを参考に,テクスチャからではなくInspectorで自由に色を変えられるよう次のようにShaderを書きました.
C#
1Shader "Custom/Transparent" { 2 Properties { 3 _BaseColor ("Base Color", Color) = (1,1,1,1) 4 } 5 6 SubShader { 7 Tags { 8 "Queue" = "Transparent" 9 "RenderType" = "Transparent" 10 } 11 CGPROGRAM 12 #pragma surface surf Lambert alpha 13 14 15 struct Input { 16 float2 uv_MainTex; 17 }; 18 fixed4 _BaseColor; 19 20 void surf(Input IN, inout SurfaceOutput o) { 21 o.Albedo = _BaseColor.rgb; 22 o.Alpha = 0.5; 23 } 24 ENDCG 25 } 26}
元のスクリプトは無職透明で綺麗にレンダリングされていましたが,色を変更するために修正した途端に前後関係が崩壊してしまいました.
半透明のレンダリングは破綻しやすく,描画も重くなりますが,色を付けて半透明にした方が臓器ごとの立体的な把握がしやすいので,何とか半透明の状態でレンダリングをしたいです.
いくつかShaderを試し,最初の記事のShaderが一番綺麗に表示することができましたが,回転させると破綻する箇所があり悩んでいます.
Inspectorでの設定に改善の余地があるのでしょうか.それともShaderを変えるべきなのでしょうか.
お勧めの記事などでも良いのでご教示頂けましたら幸いです.

回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2018/06/28 10:25