0
私がここでやろうとしているのは、これを黒にすることです。私はインスペクタのカラーティントを変更しましたが、まだ動作しませんでした。透明シェーダをカラーブラック(Unity)に変更する
ここに私のコードは、これまでの私の髪シェーダのためである:
Shader "Custom/Paul/Hair" {
Properties {
_MainTex ("Base (RGB) Trans (A)", 2D) = "white" {}
_Color ("Color Tint", Color) = (1,1,1,1)
}
SubShader {
Tags {"Queue"="Transparent" "IgnoreProjector"="True" "RenderType"="Transparent"}
LOD 100
ZWrite off
Lighting Off
Blend SrcAlpha OneMinusSrcAlpha
Cull back
Pass {
CGPROGRAM
#pragma vertex vert
#pragma fragment frag
#pragma multi_compile_fog
#include "UnityCG.cginc"
struct appdata_t {
float4 vertex : POSITION;
float2 texcoord : TEXCOORD0;
};
struct v2f {
float4 vertex : SV_POSITION;
half2 texcoord : TEXCOORD0;
UNITY_FOG_COORDS(1)
half4 color: COLOR;
};
sampler2D _MainTex;
float4 _MainTex_ST;
v2f vert (appdata_t v)
{
v2f o;
o.vertex = UnityObjectToClipPos(v.vertex);
o.texcoord = TRANSFORM_TEX(v.texcoord, _MainTex);
UNITY_TRANSFER_FOG(o,o.vertex);
return o;
}
fixed4 frag (v2f i) : SV_Target
{
fixed4 col = tex2D(_MainTex, i.texcoord);
//fixed4 col = tex2D(_MainTex, i.texcoord) * _Color;
UNITY_APPLY_FOG(i.fogCoord, col);
return col;
}
ENDCG
}
}
}
が、私はプロパティで色合いの色を変更しようとしたが、それは髪の色を変更しません。シェーダプロパティでヘアカラーを動的に変更する方法はありますか?コードだけでもシェーダプロパティではありません。私の悪い英語のために申し訳ありません。
さらにもう1つ。私は何の誤りもありません。
*透明な部分を黒色に変更したくないのはほぼ確実です。第二に、あなたは* color *を黒に変えなかった、あなたはそれを完全に透明な白に変えました。* – Draco18s
@ Draco18s私は実際にそれを試しましたが、何もしませんでした。だから私は再び白に変更します。 – NoobProgrammer
それから、あなたはそれを黒に変更したことを示すイメージを更新します。 「私は黒がほしい」と言って、色を白に設定すると、あなたは驚くほど明白なことはしていないと思います(したがって、最小の*完全な検証例は提供していません)。 – Draco18s