【Unity3D】程序纹理简单应用

这篇具有很好参考价值的文章主要介绍了【Unity3D】程序纹理简单应用。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

1 几何纹理应用

        本文所有案例的完整资源详见→Unity3D程序纹理简单应用。

1.1 边框

        1)边框子图

        Border.shadersubgraph

【Unity3D】程序纹理简单应用,Unity3D,# Shader Graph,程序纹理,Procedural,风车,潮水,细胞

        说明:Any 节点用于判断输入向量中是否存在一个分量非零,Branch 节点根据输入的真假走不同的分支,详见→Shader Graph节点。

        2)圆环

        Ring.shadergraph

【Unity3D】程序纹理简单应用,Unity3D,# Shader Graph,程序纹理,Procedural,风车,潮水,细胞

        说明:Border 节点是 1)节中创建的子图,用于计算边框的颜色和透明度,Ellipse 节点用于生成椭圆纹理,详见→Shader Graph节点 。

        将材质绑定到 Quad 对象上,效果如下。

【Unity3D】程序纹理简单应用,Unity3D,# Shader Graph,程序纹理,Procedural,风车,潮水,细胞

        3)六边形边框

        Hexagon.shadergraph

【Unity3D】程序纹理简单应用,Unity3D,# Shader Graph,程序纹理,Procedural,风车,潮水,细胞

        说明:Border 节点是 1)节中创建的子图,用于计算边框的颜色和透明度,Rotate 节点用于对 uv 坐标进行旋转变换,Polygon 节点用于生成多边形纹理,Rounded Polygon 节点用于生成圆角多边形纹理,详见→Shader Graph节点。

        将材质绑定到 Quad 对象上,效果如下。

【Unity3D】程序纹理简单应用,Unity3D,# Shader Graph,程序纹理,Procedural,风车,潮水,细胞

1.2 点阵

        1)点阵子图

        Lattice.shadersubgraph

【Unity3D】程序纹理简单应用,Unity3D,# Shader Graph,程序纹理,Procedural,风车,潮水,细胞

        说明:Reciprocal 节点取倒数,Modulo 节点用于取余运算,详见→Shader Graph节点。

        2)点阵

        Lattice.shadergraph

【Unity3D】程序纹理简单应用,Unity3D,# Shader Graph,程序纹理,Procedural,风车,潮水,细胞

        说明:Lattice 节点是 1)节中创建的子图,用于计算点阵的 uv 坐标,Ellipse 节点用于生成椭圆纹理,Any 节点用于判断输入向量中是否存在一个分量非零,Branch 节点根据输入的真假走不同的分支,详见→Shader Graph节点 。

        将材质绑定到 Quad 对象上,效果如下。

【Unity3D】程序纹理简单应用,Unity3D,# Shader Graph,程序纹理,Procedural,风车,潮水,细胞

1.3 平移

        1)平移子图

        Move.shadersubgraph

【Unity3D】程序纹理简单应用,Unity3D,# Shader Graph,程序纹理,Procedural,风车,潮水,细胞

        说明:Remap 节点用于将一个区间线性映射到另一个区间,Combine 节点用于将多个通道的输入合并为一个向量,Tiling And Offset 节点用于对 uv 坐标进行平移和缩放变换,详见→Shader Graph节点。

         2)平移

        Move.shadergraph

【Unity3D】程序纹理简单应用,Unity3D,# Shader Graph,程序纹理,Procedural,风车,潮水,细胞

        说明:Move 节点是 1)节中创建的子图,用于计算平移后的 uv 坐标,Ellipse 节点用于生成椭圆纹理,详见→Shader Graph节点。

        将材质绑定到 Quad 对象上,效果如下。

【Unity3D】程序纹理简单应用,Unity3D,# Shader Graph,程序纹理,Procedural,风车,潮水,细胞

1.4 旋转

        1)旋转子图

        MyRotate.shadersubgraph

【Unity3D】程序纹理简单应用,Unity3D,# Shader Graph,程序纹理,Procedural,风车,潮水,细胞

        说明:Rotate 节点用于对 uv 坐标进行旋转变换,Combine 节点用于将多个通道的输入合并为一个向量,Tiling And Offset 节点用于对 uv 坐标进行平移和缩放变换,详见→Shader Graph节点。

        2)旋转

        MyRotate.shadergraph

【Unity3D】程序纹理简单应用,Unity3D,# Shader Graph,程序纹理,Procedural,风车,潮水,细胞

        说明:MyRotate 节点是 1)节中创建的子图,用于计算旋转后的 uv 坐标,Polygon 节点用于生成多边形纹理,详见→Shader Graph节点。

        将材质绑定到 Quad 对象上,效果如下。

【Unity3D】程序纹理简单应用,Unity3D,# Shader Graph,程序纹理,Procedural,风车,潮水,细胞

1.5 风车 

        1)风车强度子图

        Windmill.shadersubgraph

【Unity3D】程序纹理简单应用,Unity3D,# Shader Graph,程序纹理,Procedural,风车,潮水,细胞

        说明:Negate 节点用于取相反数,Combine 节点用于将多个通道的输入合并为一个向量,Remap 节点用于将一个区间线性映射到另一个区间,详见→Shader Graph节点。

        2)风车

        Windmill.shadergraph

【Unity3D】程序纹理简单应用,Unity3D,# Shader Graph,程序纹理,Procedural,风车,潮水,细胞

        说明:Windmill 节点是 1)节中创建的子图,用于计算风车强度,Twirl 节点用于对 uv 坐标进行螺旋线变换,Rectangle 节点用于生成矩形纹理 ,详见→Shader Graph节点。

        将材质绑定到 Quad 对象上,效果如下。

【Unity3D】程序纹理简单应用,Unity3D,# Shader Graph,程序纹理,Procedural,风车,潮水,细胞

1.6 关窗

        ShutWindow.shadergraph

【Unity3D】程序纹理简单应用,Unity3D,# Shader Graph,程序纹理,Procedural,风车,潮水,细胞

        说明:Remap 节点用于将一个区间线性映射到另一个区间;Step 节点用于边界判断,即:In >= Edge 时,返回 1,否则返回 0;Lerp 节点用于线性插值,即:Out = (1 - T) * A + T * B。节点释义详见→Shader Graph节点。

        将材质绑定到 Quad 对象上,效果如下。

【Unity3D】程序纹理简单应用,Unity3D,# Shader Graph,程序纹理,Procedural,风车,潮水,细胞

2 球面应用

2.1 球面化

        Sphere.shadergraph

【Unity3D】程序纹理简单应用,Unity3D,# Shader Graph,程序纹理,Procedural,风车,潮水,细胞

        说明:Combine 节点用于将多个通道的输入合并为一个向量,Spherize 节点用于模拟鱼眼镜头的球形变形效果,Checkerboard 节点用于生成棋盘网格,详见→Shader Graph节点。 

        将材质绑定到 Quad 对象上,效果如下。

【Unity3D】程序纹理简单应用,Unity3D,# Shader Graph,程序纹理,Procedural,风车,潮水,细胞

2.2 摆动

        1)摆动子图

        Swing.shadersubgraph

【Unity3D】程序纹理简单应用,Unity3D,# Shader Graph,程序纹理,Procedural,风车,潮水,细胞

        说明:Combine 节点用于将多个通道的输入合并为一个向量,详见→Shader Graph节点。

        2)摆动

        Swing.shadergraph

【Unity3D】程序纹理简单应用,Unity3D,# Shader Graph,程序纹理,Procedural,风车,潮水,细胞

        说明:Swing 节点是 1)节中创建的子图,用于计算摆动偏移,Spherize 节点用于将 uv 坐标球面化,Ellipse 节点用于生成椭圆纹理,详见→Shader Graph节点。

        将材质绑定到 Quad 对象上,效果如下。

【Unity3D】程序纹理简单应用,Unity3D,# Shader Graph,程序纹理,Procedural,风车,潮水,细胞

3 极坐标应用

3.1 轮盘转

        Wheel.shadergraph

【Unity3D】程序纹理简单应用,Unity3D,# Shader Graph,程序纹理,Procedural,风车,潮水,细胞

        说明:Rotate 节点用于对 uv 坐标进行旋转变换,Polar Coordinates 节点用于将直角坐标系下的 uv 坐标转换为极坐标系下的坐标,Checkerboard 节点用于生成棋盘网格,详见→Shader Graph节点。

        将材质绑定到 Quad 对象上,效果如下。

【Unity3D】程序纹理简单应用,Unity3D,# Shader Graph,程序纹理,Procedural,风车,潮水,细胞

3.2 圈圈

        Circle.shadergraph

【Unity3D】程序纹理简单应用,Unity3D,# Shader Graph,程序纹理,Procedural,风车,潮水,细胞

        说明:Rotate 节点用于对 uv 坐标进行旋转变换,Polar Coordinates 节点用于将直角坐标系下的 uv 坐标转换为极坐标系下的坐标,Checkerboard 节点用于生成棋盘网格,Combine 节点用于将多个通道的输入合并为一个向量,详见→Shader Graph节点。 

        将材质绑定到 Quad 对象上,效果如下。

【Unity3D】程序纹理简单应用,Unity3D,# Shader Graph,程序纹理,Procedural,风车,潮水,细胞

3.3 涡轮

        Turbine.shadergraph

【Unity3D】程序纹理简单应用,Unity3D,# Shader Graph,程序纹理,Procedural,风车,潮水,细胞

        说明:Rotate 节点用于对 uv 坐标进行旋转变换,Twirl 节点用于对 uv 坐标进行螺旋线变换,Polar Coordinates 节点用于将直角坐标系下的 uv 坐标转换为极坐标系下的坐标,Checkerboard 节点用于生成棋盘网格,详见→Shader Graph节点。 

        将材质绑定到 Quad 对象上,效果如下。

【Unity3D】程序纹理简单应用,Unity3D,# Shader Graph,程序纹理,Procedural,风车,潮水,细胞

        当 Checkerboard 的 Frequency 参数为 (8, 8) 时,效果如下。

【Unity3D】程序纹理简单应用,Unity3D,# Shader Graph,程序纹理,Procedural,风车,潮水,细胞

4 噪声纹理应用

4.1 溶解

        Dissolve.shadergraph

【Unity3D】程序纹理简单应用,Unity3D,# Shader Graph,程序纹理,Procedural,风车,潮水,细胞

        说明:Modulo 节点用于取余运算;Simple Noise 节点用于生成噪声纹理;Step 节点用于边界判断,即:In >= Edge 时,返回 1,否则返回 0。节点释义详见→Shader Graph节点,效果更好的溶解效果详见→消融特效、选中物体消融特效。

        将材质绑定到 Quad 对象上,效果如下。

【Unity3D】程序纹理简单应用,Unity3D,# Shader Graph,程序纹理,Procedural,风车,潮水,细胞

4.2 潮水

        1)潮水深度子图

        Water.shadersubgraph

【Unity3D】程序纹理简单应用,Unity3D,# Shader Graph,程序纹理,Procedural,风车,潮水,细胞

        说明:Tiling And Offset 节点用于对 uv 坐标进行平移和缩放变换;Simple Noise 节点用于生成噪声纹理;Step 节点用于边界判断,即:In >= Edge 时,返回 1,否则返回 0。节点释义详见→Shader Graph节点。

        Water.shadergraph

【Unity3D】程序纹理简单应用,Unity3D,# Shader Graph,程序纹理,Procedural,风车,潮水,细胞

        说明:Water 节点是 1)中定义的子图,用于计算潮水深度;Lerp 节点用于线性插值,即:Out = (1 - T) * A + T * B。节点释义详见→Shader Graph节点。

        将材质绑定到 Quad 对象上,效果如下。

【Unity3D】程序纹理简单应用,Unity3D,# Shader Graph,程序纹理,Procedural,风车,潮水,细胞

4.3 细胞运动

        Cell.shadergraph

【Unity3D】程序纹理简单应用,Unity3D,# Shader Graph,程序纹理,Procedural,风车,潮水,细胞

        说明:Voronoi 节点用于生成晶胞;Lerp 节点用于线性插值,即:Out = (1 - T) * A + T * B。节点释义详见→Shader Graph节点。

        将材质绑定到 Quad 对象上,效果如下。

【Unity3D】程序纹理简单应用,Unity3D,# Shader Graph,程序纹理,Procedural,风车,潮水,细胞文章来源地址https://www.toymoban.com/news/detail-663977.html

到了这里,关于【Unity3D】程序纹理简单应用的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Unity打包错误:无法成功进行Unity3D应用程序打包

    在Unity开发过程中,有时候会遇到各种各样的错误。其中一个常见的问题是无法成功进行Unity3D应用程序的打包。本文将探讨可能导致此错误的几种常见情况,并提供相应的解决方案。 资源文件丢失或路径错误: 打包应用程序时,确保所有所需的资源文件都存在,并且路径设

    2024年01月16日
    浏览(34)
  • Unity3D Shader 引导遮罩,支持圆形、矩形、圆角矩形框

    unity3D新手引导遮罩,支持圆形,矩形框,圆角矩形框。图形位置和大小可以根据控件的位置和大小调节,通用所有分辨率设备。黄色区域遮挡,只有白色区域可以点穿。 原文链接:https://www.kadastudio.cn/archives/89 ​ 将MyGuideMask挂载到脚本上,然后通过GuideMask创建材质并赋值,根据

    2024年02月11日
    浏览(40)
  • 让AI臣服,而不是被它替代!让ChatGPT为我们编写Unity3d Shaderlab的着色器(shader)

    ChatGPT的火热大家应该都有目共睹,文案工作者、翻译工作者和画师等各种行业都在被嘲即将失业。不光是这些岗位的员工,作为资深社畜程序猿也能感受到会受到冲击。网上很多人都在发ChatGPT写的代码,并开始大肆宣扬AI要取代程序员了,今天测一测使用ChatGPT来生成一些代码,

    2023年04月23日
    浏览(32)
  • Unity3d 制作一个简单的NPC对话系统

    ​ 最近在自己写一个比较小的项目,虽然自己是一个策划,但是程序方面我觉得也是很有必要学一学的。 ​ 经过了接近一年的学习,也终于是可以独自写一些小的系统了。 ​ 这次自己写了一个比较简单的NPC对话系统,供大家参考。 进入对话区域 开始对话 Inspector面板可调

    2023年04月08日
    浏览(34)
  • 【Unity3D】Release of invalid GC handle.当Unity试图访问已经被卸载的应用程序域中的对象

    Unity报错 Release of invalid GC handle. The handle is from previous domain. The release operation is skipped. 解答 这个错误通常发生在尝试访问或操作已经被卸载的应用程序域(Application Domain)中的对象时。在.NET中,应用程序域是一个隔离边界,它允许多个应用程序在同一个进程中运行,而不会相

    2024年02月03日
    浏览(33)
  • 【unity3D】unity记忆翻牌小游戏教程(简单详细)

    游戏开发的 学习记录 ⑨ (最近在做得游戏里想加一个类似于记忆翻牌小游戏得部分,然后在网上收集了资料学习了一下,学会后写下这份制作记录,希望可以帮到你~) 📜一位大佬的博客,写的很详细:【Unity3D游戏教程】记忆翻牌游戏 (大家可以先看大佬这篇,我写这篇

    2024年02月07日
    浏览(201)
  • unity3d在汽车邻域应用浅谈

    Unity3D是一款实时3D内容创作软件,它在汽车应用创新方面发挥了重要作用。以下是Unity3D在汽车应用创新方面的几个关键领域: 智能座舱:Unity3D为汽车智能座舱提供了解决方案,通过重新定义座舱设计,将车舱打造成全新的“第三空间”。这种解决方案不仅提供了炫目的视效

    2024年01月24日
    浏览(35)
  • Unity3D教程:触发器实现简单的场景跳转

    首先,需确保有一个想要跳转的目标场景。在本案例中,目标场景是ending。 第一步:创建一个碰撞体,放置在需要的触发场景跳转的位置。 第二步:删除多余的脚本,并且新建自己的脚本: 第三

    2024年02月12日
    浏览(40)
  • Unity3D与iOS的交互 简单版开箱即用

    本文适合的情况如下: Unity客户端人员 与 IOS端研发人员合作的情况 目录 From U3D to iOS 实现原理 1.unity工程目录创建2个文件 NativeCallProxy.m、NativeCallProxy.h 并且放到Unity工程目录Plugins/iOS/unity_ios_plus目录下 2.创建C#调用脚本 定义对应.mm脚本的 调用接口,调用也如下 实现原理 由

    2024年02月06日
    浏览(33)
  • Unity3D小程序部署与开发

    Unity3D目前已经支持微信小程序开发,目前正处于公测阶段,可以参考文档。这样我们只需要在unity本地开发完,一键导出微信小程序工程发布即可。 小程序开发工具: wechat_devtools_1.05.2204264_x64.exe UnityPlugin小程序插件: minigame.202302151921.unitypackage 在开发之前,我们需要到微信公众

    2024年02月09日
    浏览(32)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包