Koo叔说Shader—最基本的Shader

写在前面

看了许多Shader教程,也学到了一些常见的Shader效果,但还是有一些迷糊,不能灵活的运用。所以打算一步步从零开始,把Shader彻底搞明白。以此记录一下学习过程。

Shader效果

  • 单个对象
  • 正确渲染出对象
  • 将对象设置成黄色(为啥是黄色,随便选的颜色:-))

思路

  • 这里选择Quad作为渲染对象,顶点组成比较简单
  • 要正确显示出Quad,需要将顶点位置告诉GPU
  • 要正确显示黄色,则要告诉GPU一个黄色的色值

以下是具体细节实现的过程,我们一步步来:

先建一个新的项目

目录结构如下:

这里写图片描述

先从最简单的开始,后期可能会整理,Materials主要存放材质,Prefabs存放实验用的prefab,Textures主要是贴图资源,Loading是测试用的场景,Shaders里放实验用的Shader

新建测试对象

  • 选择GameObject->3D Object->Quad,新建一个Quad对象
  • 新建一个Material,替换掉默认的Material
  • 新建一个Shader,替换掉默认的Shader
  • 将Shader中自动生成的内容清空,然后一步步的添加需要的内容,清空后的Shader内容如下:
Shader "Unlit/first"{

}

这时的场景显示如下:
这里写图片描述
为什么会显示一个粉色呢?

选中Shader后,查看Inspector面板发现,原来有一个错误,Unity发现Shader是一个空的,所以不能编译,就给Quad对象一个默认的粉色来提醒(实际上是用了一个默认的Shader)

选中shader后在Inspector面板查看如下:

这里写图片描述
会出现一个Errors,提示没有subshaders或默认的fallbacks支持GPU,也没有生成编译后的Shader代码。

试试加上属性会是什么结果:


                
  • 3
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值