Unity | Shader基础知识(第十集:shader常用外部资产单词速成)

本文介绍了UnityShader中常用的外部资产,包括颜色、图片和数字资源,并详细解释了Tiling(铺地砖,控制纹理重复)和Offset(偏移,调整纹理位置)的概念。作者承诺将持续更新内容,解答读者疑问。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

目录

一、外部资产简介

二、常用的外部资产单词

三、常用的外部资产单词和引入内部

四、图片资产外部调整的具体讲解

1.Tiling,中文:铺地砖

2.Offset,中文:偏移

五、作者的话


一、外部资产简介

在第六集中,我们加入过外部颜色资源。

Unity | Shader基础知识(第六集:语法<如何加入外部颜色资源>)-优快云博客

在第七集中,我们加入过外部图片资源。

Unity | Shader基础知识(第七集:案例<让图片和外部颜色叠加显示>)_unity颜色叠加-优快云博客

以上两部分主要应用了一下外部资源,今天把常见的合起来总结一下。另外讲一下图片中的Tiling和Offset是什么意思。 

二、常用的外部资产单词

1.常用单词
图1 外部资产
    Properties
    {
       //颜色
        _Color ("颜色", Color) = (1,1,1,1)

        //图片
        _Tex("2D图片",2D) = "white"{}
        _Tex3("3D图片",3D) = "white"{}
        _Cube("Cube图片",CUBE)=""{}

        //数字
        _Float("Float数字",Float) = 0.5
        _Int("Int数字",Int) = 1
        _Range("范围",Range(0,100))=1
        _Vector("坐标",Vector)=(1,1,1,1)
    }
2.补充单词

从外表看它就是我们在普通代码当中常见的bool,但实际上它是一个数字。

补图1 Toggle
    Properties
    {
        [Toggle] _MyToggle("MyToggle",float) =0
    }

 后面的数字设置也是,如果是没打钩 =0,打钩了就 =1,没有其他数字。

引用方式和float是一致的,因为本质上还是float。

三、常用的外部资产单词和引入内部

以上是我们设置了一些初始值,但是这些并没有放到我们shader里面开始应用。

shader对很多格式都不支持的,所以我们仔细观察,它只有两个大类,一个是数字,一个是图片,所以在放进shader里面的时候,我们要重新初始化一遍。

Shader "Custom/NewSurfaceShader"
{
    Properties
    {
        //颜色
        _Color ("颜色", Color) = (1,1,1,1)

        //图片
        _Tex("2D图片",2D) = "white"{}
        _Tex3("3D图片",3D) = "white"{}
        _Cube("Cube图片",CUBE)=""{}

        //数字
        _Float("Float数字",Float) = 0.5
        _Int("Int数字",Int) = 1
        _Range("范围",Range(0,100))=1
        _Vector("坐标",Vector)=(1,1,1,1)
    }
    SubShader
    {
        //这里是CG语言
        CGPROGRAM

        //****************************
        //这里就是把格式重写一遍,注意看,名称和上面是一样的
        //四个数字代表颜色
        fixed4 _Color;

        //普通图片
        sampler2D _Tex;
        //3D图片
        sampler3D _Tex3;
        //Cube图片
        samplerCUBE _Cube;

        //一个数字
        float _Float;
        int _Int;
        //这里是不需要很大的小数
        half _Range;
        float4 _Vector;
        //********************************

        ENDCG
    }
}

四、图片资产外部调整的具体讲解

放图片大家一般都是会的,这里主要讲解一下Tiling和Offset(如图2所示)

图2 2D图片外部资产
1.Tiling,中文:铺地砖

其实这个翻译已经很贴切了,下面具体讲一下。

假如我们有一面墙,我们想在上面贴一个图,我们可以选择贴一张花纹(如图3所示),也可以选择贴一堆花纹(如图4所示)。

up不会P图,(如图2所示)这张图意思就是,还是这面墙,但我只铺一张大大的瓷砖。

图2 贴一张(蓝色)
图3 贴一堆

这时候可能有人问:

用一张瓷砖贴不满怎么办?那就继续放大瓷砖,直到能贴满,然后把多出来的地方裁掉。

所以,我们只限定瓷砖的数量,不限定瓷砖的大小,就是Tiling。

x得意思是,横着能贴个瓷砖。y得意思是竖着能贴几张瓷砖。

2.Offset,中文:偏移

例如,我们只贴一张瓷砖,正常来说肯定是贴在中间的(如图4所示),但是我不希望它在中间(如图4所示),怎么办?就调整offset的大小来移动位置。

图4 不在中间的一张瓷砖

五、作者的话

关于更新:

这部分内容目前是计划持续更新,尽可能保持之前的节奏,一周一更。

前段时间工作非常忙,加上过年,就断了。

关于提问:

因为每个人的问题都不太一样,有时候无法根据现象判断出到底哪里出问题了。所以如果我能猜出来就给大家回,猜不出来,我也会回复我猜不出来。

如果大家提问知识点相关的问题,比如哪里没看懂,哪里讲的不清楚,我会修改文章重新在文章里加这部分内容,也会新写文章专门来进行讲解。

最后,大家新年快乐,希望新的一年大家平平安安,事事顺利,心想事成。

评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

菌菌巧乐兹

希望能给大家写更多有用的文章~

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值