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

news2024/11/20 3:25:39

目录

一、外部资产简介

二、常用的外部资产单词

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

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

1.Tiling,中文:铺地砖

2.Offset,中文:偏移

五、作者的话


一、外部资产简介

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

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

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

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

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

二、常用的外部资产单词

图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)
    }

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

以上是我们设置了一些初始值,但是这些并没有放到我们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 不在中间的一张瓷砖

五、作者的话

关于更新:

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

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

关于提问:

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

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

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

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1478482.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

新王炸:文生视频Sora模型发布,能否引爆AI芯片热潮

前言 前方高能预警,Sora来袭! 浅析Sora的技术亮点 语言模型中构建关键词联系 视频素材分解为时空碎片 扩散模型DiT Not for play, But change world! OpenAI的宏大目标 未来已来,只是尚未流行 Sora的成本与OpenAI的7万亿美金豪赌 算…

GPT-SoVITS音色克隆-模型训练步骤

GPT-SoVITS音色克隆-模型训练步骤 GPT-SoVITS模型源码一个简单的TTS后端项目 基于模型部署和训练教程,语雀 模型部署和训练教程 启动模型训练的主页面 1. 切到模型路径 /psycheEpic/GPT-SoVITS进入Python虚拟环境,并挂起执行python脚本 conda activ…

nginx使用详解--缓存使用

Nginx 是一个功能强大的 Web 服务器和反向代理服务器,它可以用于实现静态内容的缓存,缓存可以分为客户端缓存和服务端缓存。 客户端缓存 客户端缓存指的是浏览器缓存, 浏览器缓存是最快的缓存, 因为它直接从本地获取(但有可能需要发送一个协商缓存的请…

leetcode:1974. 使用特殊打字机键入单词的最少时间(python3解法)

难度:简单 有一个特殊打字机,它由一个 圆盘 和一个 指针 组成, 圆盘上标有小写英文字母 a 到 z。只有 当指针指向某个字母时,它才能被键入。指针 初始时 指向字符 a 。 每一秒钟,你可以执行以下操作之一: 将…

算法基础(三)(模拟)

1.模拟算法介绍: 模拟算法通过模拟实际情况来解决问题,一般容易理解但是实现起来比较复杂,有很多需要注意的细节,或者是一些所谓很“麻烦”的东西。模拟题一般不涉及太难的算法,一般就是由较多的简单但是不好处理的部…

RT-Thread+ENV+MDK+STM32CubeMX适配

前言 (1)如果有嵌入式企业需要招聘湖南区域日常实习生,任何区域的暑假Linux驱动/单片机/RTOS的实习岗位,可C站直接私聊,或者邮件:zhangyixu02gmail.com,此消息至2025年1月1日前均有效 &#xff…

T - SQL使用事务 及 在Winform使用事务

事务适用场景 1 事务使用在存储过程中,直接在数据库中进行编写 2 事务使用在Winfrom项目中 SQl:使用事务转账操作的实例 一般都会找一个变量记录错误的个数,error记录上一句sql的错误和错误编号 declare errornum int 0 -- 定义…

el-table 指定表格合并行与单元格,以及表头合并单元格

1&#xff1a;页面html <template><div class"container"><div class"flex-end"><el-button type"primary" click"allEndBtn">批量办结</el-button><el-button type"primary" click"…

【第十天】C++函数对象/仿函数、谓词、适配器及常见algorithm算法

一、函数对象 重载了函数调用运算符()的类 实例化的对象叫函数对象&#xff0c;也叫仿函数。 如果函数对象 有一个参数 叫&#xff1a;一元函数对象/仿函数如果函数对象 有二个参数 叫&#xff1a;二元函数对象/仿函数如果函数对象 有三个及以上参数 叫&#xff1a;多元函数对…

Java设计模式 | 七大原则之合成复用原则

基本介绍 合成复用原则&#xff08;Composite Reuse Principle&#xff09;尽量使用合成/聚合的方式&#xff0c;而不是使用继承 设计原则核心思想总结 找出应用中可能需要变化之处&#xff0c;把他们独立出来&#xff0c;不要和那些不需要变化的代码混在一起针对接口编程&…

Ubuntu系统下DPDK环境搭建

目录 一.虚拟机配置1.添加一个网卡(桥接模式)2.修改网卡类型3.修改网卡名称4.重启虚拟机5.查看网卡信息6.dpdk配置内存巨型页 三 DPDK源代码下载和编译1.下载源代码2.解压源代码3.安装编译环境4.编译5.设置dpdk的环境变量6.禁止多队列网卡7.加载igb_uio模块8.网卡绑定9.验证测试…

Docker 入门笔记

课程地址 容器技术概述 docker能做什么&#xff1a;将应用程序代码和依赖打包为一个镜像&#xff0c;作为交付介质&#xff0c;在各种环境中部署 相比于虚拟机&#xff0c;docker 只虚拟出一个隔离的程序运行环境&#xff0c;其需要则资源大大减少 容器内的程序就好像直接运…

安装 docker 可视化工具 portainer

portainer 官方网站 https://www.portainer.io/ 一、portainer 介绍 Portainer是一款开源的容器管理平台&#xff0c;它提供了一个直观易用的Web界面&#xff0c;帮助用户管理Docker容器集群、镜像、卷等资源。Portainer 支持多种 Docker 环境&#xff0c;包括本地Docker、Sw…

EXTJS实现自定义表格

宽度自适应 width: 100%, 高度自适应 height: 100% 同时设置表格所处页面高度100% html,body,#griddemo{height: 100%;} 自定义显示的文本内容 Ext.onReady(function () {Ext.QuickTips.init()function sexText(val) {if (val 0) {return <span style"color:green…

20240229作业

1.编写链表&#xff0c;链表里面随便搞点数据&#xff0c;使用 fprintf 将链表中所有的数据&#xff0c;保存到文件中&#xff0c;使用 fscanf 读取文件中的数据&#xff0c;写入链表中 #include <stdio.h> #include <stdlib.h>// 定义链表节点结构体 struct List…

Linux系统安装使用nginx

1.编译安装Nginx服务 (1)关闭防火墙&#xff0c;将安装nginx所需要软件包传到/opt目录下 systemctl stop firewalld systemctl disable firewalld setenforce 0 将压缩包传入到/opt目录下 cd /opt wget http://nginx.org/download/nginx-1.18.0.tar.gz (2). 安装依赖…

小红书的几种赚钱方式解读

小红书的七种变现方式&#xff1a; 1.通过小红书蒲公英平台接广告&#xff0c;粉丝数量大于1000的用户可以开通。单条笔记的广告费用从几百元到几十万不等。 2.开设小红书专栏&#xff0c;粉丝数量大于1万的用户可以开通。 3.进行私域变现&#xff0c;将小红书的咨询引导到微信…

解决内嵌帆软报表出现重定向问题

最近收到反馈&#xff0c;某些程序的前端通过iframe标签内嵌finebi帆软报表时&#xff0c;出现一系列问题。 问题1: 如下图所示&#xff0c;单点登录(单点登录地址schema是https)后service地址的schema协议是http, 浏览器内核的安全策略不允许http访问https。 解决方案&#xf…

HTTP笔记(五)

个人学习笔记&#xff08;整理不易&#xff0c;有帮助点个赞&#xff09; 笔记目录&#xff1a;学习笔记目录_pytest和unittest、airtest_weixin_42717928的博客-CSDN博客 目录 一&#xff1a;HTTP报文首部 &#xff08;1&#xff09;HTTP请求报文 &#xff08;2&#xff09…

基于深度学习的水稻病害检测系统(含UI界面、yolov8、Python代码、数据集)

项目介绍 项目中所用到的算法模型和数据集等信息如下&#xff1a; 算法模型&#xff1a;     yolov8 yolov8主要包含以下几种创新&#xff1a;         1. 可以任意更换主干结构&#xff0c;支持几百种网络主干。 数据集&#xff1a;     网上下载的数据集&#x…