美术相关 调颜色没反应

14
回复
1883
查看
打印 上一主题 下一主题
[ 复制链接 ]
5熟悉之中
867/1000
排名
4150
昨日变化

14

主题

244

帖子

867

积分

Rank: 5Rank: 5

UID
231366
好友
9
蛮牛币
1609
威望
0
注册时间
2017-7-10
在线时间
253 小时
最后登录
2019-4-19
10蛮牛币
我用了自定义的材质球    自己写的shader      调color  不会改变物体的颜色了     想知道如何操作

BS89SGRGCK1L{IQT(P]O(QO.png (27.28 KB, 下载次数: 11)

BS89SGRGCK1L{IQT(P]O(QO.png
排名
28925
昨日变化

0

主题

6

帖子

27

积分

Rank: 1

UID
312611
好友
1
蛮牛币
49
威望
0
注册时间
2019-1-23
在线时间
9 小时
最后登录
2019-2-12
沙发
2019-1-25 10:54:42 只看该作者
{:86:}{:86:}{:86:}
4四处流浪
408/500
排名
8010
昨日变化

5

主题

89

帖子

408

积分

Rank: 4

UID
135780
好友
1
蛮牛币
745
威望
0
注册时间
2016-1-28
在线时间
156 小时
最后登录
2019-4-18
板凳
2019-1-25 12:51:59 只看该作者
调材质颜色:     
transform.GetComponent<Renderer>().materials[0].SetColor("_MainColor", Color.blue);
transform.GetComponent<Renderer>().materials[0].SetColor("_ShadowColor", Color.black);
6蛮牛粉丝
1044/1500
排名
3375
昨日变化

2

主题

222

帖子

1044

积分

Rank: 6Rank: 6Rank: 6

UID
227258
好友
1
蛮牛币
1518
威望
0
注册时间
2017-6-17
在线时间
375 小时
最后登录
2019-4-12
地板
2019-1-25 14:05:17 只看该作者
没有代码怎么看0.0
5熟悉之中
555/1000
排名
5577
昨日变化

0

主题

66

帖子

555

积分

Rank: 5Rank: 5

UID
75479
好友
0
蛮牛币
1039
威望
0
注册时间
2015-2-23
在线时间
205 小时
最后登录
2019-3-29
5#
2019-1-25 14:20:27 只看该作者
你最好贴出shader源码
5熟悉之中
867/1000
排名
4150
昨日变化

14

主题

244

帖子

867

积分

Rank: 5Rank: 5

UID
231366
好友
9
蛮牛币
1609
威望
0
注册时间
2017-7-10
在线时间
253 小时
最后登录
2019-4-19
6#
楼主 2019-1-25 14:53:50 只看该作者
zsy654321 发表于 2019-1-25 14:20
你最好贴出shader源码

Shader "Custom/Shadow"
{
        Properties
        {
                _MainTex("Main Tex", 2D) = "white" {}
                _AlphaTex("AlphaTex",2D) = "white"{}
                _Offset("Offset", vector) = (0, 0, 0, 0)
                _ShadowColor("ShadowColor",color)=(0,0,0,0)
                _MainColor("MainColor",color)=(0,0,0,0)
        }
                CGINCLUDE
#include "UnityCG.cginc"
        sampler2D _MainTex;
        float4 _Offset;
        sampler2D _AlphaTex;
        float4 _MainTex_ST;
        fixed4 _MainColor;
        fixed4 _ShadowColor;

        struct v2f {
                float4 pos : POSITION;
                float2 uv : TEXCOORD0;
        };

        v2f vert_normal(appdata_base v) {
                v2f o;
                o.pos = UnityObjectToClipPos(v.vertex);
                o.uv = TRANSFORM_TEX(v.texcoord, _MainTex);
                return o;
        }

        v2f vert_offset(appdata_base v) {
                v2f o;
                float4 pos = mul(unity_ObjectToWorld, v.vertex);
                o.pos = mul(UNITY_MATRIX_VP, pos + _Offset);
                o.uv = TRANSFORM_TEX(v.texcoord, _MainTex);
                return o;
        }

        float4 frag_normal(v2f i) : COLOR
        {
                float4 texcol = tex2D(_MainTex, i.uv);
                texcol += fixed4((fixed3)_MainColor,0);
                texcol.w = tex2D(_AlphaTex,i.uv)*texcol.w;
                return texcol;
        }

                float4 frag_color(v2f i) : COLOR
        {
                float4 c;
                c = tex2D(_MainTex, i.uv);
                c += fixed4((fixed3)_ShadowColor,0);
                c.w = tex2D(_AlphaTex,i.uv)*c.w;
                if (c.w >= 0.5)
                {
                        c.r = 0;
                        c.g = 0;
                        c.b = 0;
                        c.w = 0.5f;
                }
               

        return c;
        }

                ENDCG
                SubShader {
                Tags{ "Queue" = "Transparent" }
                        Pass{
                        ZWrite Off
                        Blend SrcAlpha OneMinusSrcAlpha
                        CGPROGRAM
#pragma vertex vert_offset
#pragma fragment frag_color
                        ENDCG
                }
                        Pass{
                        ZWrite Off
                        Blend SrcAlpha OneMinusSrcAlpha
                        CGPROGRAM
#pragma vertex vert_normal
#pragma fragment frag_normal
                        ENDCG
                }
        }
        FallBack "Diffuse"
}
5熟悉之中
867/1000
排名
4150
昨日变化

14

主题

244

帖子

867

积分

Rank: 5Rank: 5

UID
231366
好友
9
蛮牛币
1609
威望
0
注册时间
2017-7-10
在线时间
253 小时
最后登录
2019-4-19
7#
楼主 2019-1-25 14:58:37 只看该作者
xiablank 发表于 2019-1-25 12:51
调材质颜色:     
transform.GetComponent().materials[0].SetColor("_MainColor", Color.blue);
transfor ...

我知道这样可以变色, 但是所有用这个shader的物体都会变 。所以有没有别的方法,
我的需求是  很多物体都有阴影  但  击中谁,谁会变红  
5熟悉之中
867/1000
排名
4150
昨日变化

14

主题

244

帖子

867

积分

Rank: 5Rank: 5

UID
231366
好友
9
蛮牛币
1609
威望
0
注册时间
2017-7-10
在线时间
253 小时
最后登录
2019-4-19
8#
楼主 2019-1-25 15:02:34 只看该作者
xiablank 发表于 2019-1-25 12:51
调材质颜色:     
transform.GetComponent().materials[0].SetColor("_MainColor", Color.blue);
transfor ...

我知道这样可以变色, 但是所有用这个shader的物体都会变 。所以有没有别的方法,
我的需求是  很多物体都有阴影  但  击中谁,谁会变红  
4四处流浪
408/500
排名
8010
昨日变化

5

主题

89

帖子

408

积分

Rank: 4

UID
135780
好友
1
蛮牛币
745
威望
0
注册时间
2016-1-28
在线时间
156 小时
最后登录
2019-4-18
9#
2019-1-25 17:01:05 只看该作者
不会啊 我试的没问题啊 你代码怎么写的
        if (Input.GetMouseButtonDown(0))
        {
            RaycastHit hit;
            if (Physics.Raycast(Camera.main.ScreenPointToRay(Input.mousePosition), out hit))
            {
                hit.transform.GetComponent<Renderer>().materials[0].SetColor("_MainColor", Color.blue);
                hit.transform.GetComponent<Renderer>().materials[0].SetColor("_ShadowColor", Color.black);
            }
        }
5熟悉之中
867/1000
排名
4150
昨日变化

14

主题

244

帖子

867

积分

Rank: 5Rank: 5

UID
231366
好友
9
蛮牛币
1609
威望
0
注册时间
2017-7-10
在线时间
253 小时
最后登录
2019-4-19
10#
楼主 2019-1-25 17:29:20 只看该作者
本帖最后由 安生李 于 2019-1-25 17:32 编辑
xiablank 发表于 2019-1-25 17:01
不会啊 我试的没问题啊 你代码怎么写的
        if (Input.GetMouseButtonDown(0))
        {

最主要的是不够红  ,不是叠加的那种    就是全红 ,, 就是当maincolor 的 a 的值为1 的时候是最红    当a=0的时候是叠加的感觉
4四处流浪
408/500
排名
8010
昨日变化

5

主题

89

帖子

408

积分

Rank: 4

UID
135780
好友
1
蛮牛币
745
威望
0
注册时间
2016-1-28
在线时间
156 小时
最后登录
2019-4-18
11#
2019-1-25 17:59:22 只看该作者
shader改成这样试试
texcol += fixed4((fixed3)_MainColor,0) 改成 texcol += _MainColor
c += fixed4((fixed3)_ShadowColor,0) 改成 c +=_ShadowColor;
5熟悉之中
555/1000
排名
5577
昨日变化

0

主题

66

帖子

555

积分

Rank: 5Rank: 5

UID
75479
好友
0
蛮牛币
1039
威望
0
注册时间
2015-2-23
在线时间
205 小时
最后登录
2019-3-29
12#
2019-1-25 19:32:26 只看该作者
你这没有用顶点颜色啊,肯定会出现这种问题的
5熟悉之中
867/1000
排名
4150
昨日变化

14

主题

244

帖子

867

积分

Rank: 5Rank: 5

UID
231366
好友
9
蛮牛币
1609
威望
0
注册时间
2017-7-10
在线时间
253 小时
最后登录
2019-4-19
13#
楼主 2019-1-26 09:59:36 只看该作者
zsy654321 发表于 2019-1-25 19:32
你这没有用顶点颜色啊,肯定会出现这种问题的

不懂,   啊啊啊啊啊啊啊啊啊啊啊啊
5熟悉之中
555/1000
排名
5577
昨日变化

0

主题

66

帖子

555

积分

Rank: 5Rank: 5

UID
75479
好友
0
蛮牛币
1039
威望
0
注册时间
2015-2-23
在线时间
205 小时
最后登录
2019-3-29
14#
2019-1-26 10:03:45 只看该作者
安生李 发表于 2019-1-26 09:59
不懂,   啊啊啊啊啊啊啊啊啊啊啊啊

你都能自己写shader,总不能对图形学一无所知吧,顶点数据包括 位置 UV 法线 切线 颜色,你的shader代码只用了位置和uv,颜色没用啊

0

主题

13

帖子

17

积分

Rank: 1

UID
64096
好友
0
蛮牛币
3
威望
0
注册时间
2014-12-28
在线时间
4 小时
最后登录
2019-1-27
15#
2019-1-26 23:43:46 只看该作者
谢谢分享
您需要登录后才可以回帖 登录 | 注册帐号

本版积分规则