Unity中Shader URP 简介

文章目录

  • 前言
  • 一、URP(Universal Render Pipeline)
    • 由名字可知,这是一个 通用的 渲染管线
    • 1、Universal(通用性)
    • 2、URP的由来
  • 二、Build-in Render Pipeline(内置渲染管线)
    • 1、LWRP(Light Weight Render Pipeline)
    • 2、HDRP(High Definition Render Pipeline)
    • 3、URP(Universal Render Pipeline)
    • 4、Scriptable Render Pipline(可编程渲染管线)


前言

在这篇文章中,我们主要介绍一下Unity中的URP(通用渲染管线)是什么


一、URP(Universal Render Pipeline)

由名字可知,这是一个 通用的 渲染管线

在这里插入图片描述

  • Unity帮助文档

1、Universal(通用性)

  • Windows and UWP
  • Mac and IOS
  • Android
  • Xbox One
  • PlayStation4
  • Nintendo Switch
  • WebGL
  • All current VR platforms

2、URP的由来

  • 在Unity2018以前,Unity使用的一直都是Build-in Render Pipeline(内置渲染管线)

在早期使用内置渲染管线时,Unity为了适配更多的游戏平台。所以,在使用某一功能时,如果我们只是在单一平台开发,我们会用到很多适配其他平台的复杂功能。


二、Build-in Render Pipeline(内置渲染管线)

  • 内置渲染管线包含两个部分 LWRP 和 HDRP,未来主流是 URP 和 HDRP

在这里插入图片描述

1、LWRP(Light Weight Render Pipeline)

轻量级的渲染管线主要是针对多平台高低配置适配的,即这是实现内置渲染管线部分的主要部分。但是,早期因为名字太low的原因,导致很多人错误的选择了 HDRP 来开发

2、HDRP(High Definition Render Pipeline)

高清晰度的渲染管线 主要是针对高端主机平台适配的

3、URP(Universal Render Pipeline)

因为 LWRP 太 low 导致很多人错误使用,Unity在后期升级中,把 LWRP 更改为了 URP 来实现通用的渲染管线。语法 和 算法 与 原本的改变并不大。

4、Scriptable Render Pipline(可编程渲染管线)

这一般由 图形程序 使用 C# 对其进行调试维护,详细定制这个渲染管线的渲染方式。

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

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

相关文章

【JavaEE】多线程案例 - 定时器

作者主页:paper jie_博客 本文作者:大家好,我是paper jie,感谢你阅读本文,欢迎一建三连哦。 本文于《JavaEE》专栏,本专栏是针对于大学生,编程小白精心打造的。笔者用重金(时间和精力)打造&…

TS Option类型与Promise

用专门的数据类型描述异常,能便于串联可能出错的操作。Option类型就是这张容器,在没有值时也能串联操作。 js中常用Promise来处理异步调用,本文将手动实现Promise的部分功能,来探索这个类型的处理逻辑。 1 处理错误 TS表示和处…

linux下解决 git clone每次都要输入用户名密码问题(推荐)

一条命令解决问题: git config --global credential.helper store使用此命令后还会需要输入一次用户名和密码,但是下一次就不需要了 1.在~/目录下多出两个文件.gitconfig 和.git-credentials ,用来记录你的密码和帐号 git config --global…

C语言:求和1+1/2-1/3+1/4-1/5+……-1/99+1/100

#include<stdio.h> int main() {int i 0;double sum 0.0;int flag 1;for (i 1;i < 100;i){sum 1.0 / i * flag;flag -flag;}printf("sum%lf\n", sum);return 0; }

设计模式——策略模式

引言 策略模式是一种行为设计模式&#xff0c; 它能让你定义一系列算法&#xff0c; 并将每种算法分别放入独立的类中&#xff0c; 以使算法的对象能够相互替换。 问题 一天&#xff0c; 你打算为游客们创建一款导游程序。 该程序的核心功能是提供美观的地图&#xff0c; 以…

10Maxwell 增量表首日全量同步

通常情况下&#xff0c;增量表需要在首日进行一次全量同步&#xff0c;后续每日再进行增量同步&#xff0c;首日全量同步可以使用Maxwell的bootstrap功能&#xff0c;方便起见&#xff0c;下面编写一个增量表首日全量同步脚本。 在~/bin目录创vim mysql_to_kafka_inc_init.sh …

【每日一题】使用最小花费爬楼梯

文章目录 Tag题目来源解题思路方法一&#xff1a;动态规划空间优化 写在最后 Tag 【动态规划空间优化】【数组】【2023-12-17】 题目来源 746. 使用最小花费爬楼梯 解题思路 方法一&#xff1a;动态规划 思路 假设数组 cost 的长度为 n&#xff0c;则 n 阶楼梯分别对应下标…

【数据库设计和SQL基础语法】--查询数据--分组查询

一、分组查询概述 1.1 什么是分组查询 分组查询是一种 SQL 查询技术&#xff0c;通过使用 GROUP BY 子句&#xff0c;将具有相同值的数据行分组在一起&#xff0c;然后对每个组应用聚合函数&#xff08;如 COUNT、SUM、AVG等&#xff09;。这允许在数据集中执行汇总和统计操作…

Python往事:ElementTree的单引号之谜

最近在针对某款设备的界面xml进行更新过程中&#xff0c;被告知回稿的字串放在了一个excel文件中&#xff0c;而我要上传到服务器的界面用语是用xml文件封装的。再经过详细求证了翻译组提供excel文件的原因后&#xff0c;我决定用python来完成界面用语xml的更新&#xff0c;但是…

OOD 异常GPT:使用大型视觉语言模型检测工业异常

paper link https://arxiv.org/abs/2308.15366video demo https://youtu.be/lcxBfy0YnNAgithub https://github.com/CASIA-IVA-Lab/AnomalyGPT在线使用 https://huggingface.co/spaces/FantasticGNU/AnomalyGPT 摘要 大型视觉语言模型&#xff08;LVLM&#xff09;如MiniGPT-4…

大数据CloudSim应用实践

CloudSimExampleA.java 1准备 1.1操作系统 本实验在Windows 7 或Windows 10系统运行均可。 1.2软件 cloudsim-3.0.3.zip&#xff1b; commons-math3-3.2-bin.zip&#xff1b; jdk-8u152-windows-x64.exe&#xff1b; eclipse-jee-neon-3-win32-x86_64 所需资料链接&#xff1…

W25Q64(模拟SPI)读写数据的简单应用

文章目录 一、W25Q64是什么&#xff1f;二、使用步骤1.硬件1.引脚说明2.硬件连接3.设备ID4.内部框架5.指令集指令集1指令集2 2.软件1.W25Q64引脚定义代码如下&#xff08;示例&#xff09;&#xff1a;2.W25Q64初始化代码如下&#xff08;示例&#xff09;&#xff1a;3.W25Q64…

【IC前端虚拟项目】MVU模块方案与背景熟悉

【IC前端虚拟项目】数据搬运指令处理模块前端实现虚拟项目说明-CSDN博客 mvu这个模块是干嘛用的呢&#xff1f;从这个名字就可以看出来move_unit&#xff0c;应该是做数据搬运的。很多指令级中都会有数据搬运的指令&#xff0c;这类指令的作用一般是在片内片外缓存以及通用专用…

Skywalking告警规则示例

skywalking告警规则文件配置示例【包含自定义规则】: # Licensed to the Apache Software Foundation (ASF) under one # or more contributor license agreements. See the NOTICE file # distributed with this work for additional information # regarding copyright ow…

【C++多线程编程】(二)之详解锁(lock)和解锁(unlock)

在C多线程编程中&#xff0c;锁&#xff08;lock&#xff09;和解锁&#xff08;unlock&#xff09;通常用于管理共享资源的访问&#xff0c;以防止多个线程同时对资源进行修改&#xff0c;从而避免竞态条件&#xff08;Race Condition&#xff09;和数据不一致性问题。C标准库…

Java基础语法之抽象类和接口

抽象类 什么是抽象类 并不是所有的类都是用来描述对象的&#xff0c;这样的类就是抽象类 例如&#xff0c;矩形&#xff0c;三角形都是图形&#xff0c;但图形类无法去描述具体图形&#xff0c;所以它的draw方法无法具体实现&#xff0c;这个方法就可以没设计成抽象方法&…

常用模块之(time/datetime)

【 一 】时间模块&#xff08;time/datetime&#xff09; 【 二 】 表示时间的三种方式 *时间戳&#xff08;Timestamp&#xff09;是指1970年1月1日00:00:00开始计算的偏移量。可以使用time模块中的time()函数获取当前时间的时间戳&#xff0c;也可以使用datetime模块中的tim…

大创项目推荐 深度学习 python opencv 实现人脸年龄性别识别

文章目录 0 前言1 项目课题介绍2 关键技术2.1 卷积神经网络2.2 卷积层2.3 池化层2.4 激活函数&#xff1a;2.5 全连接层 3 使用tensorflow中keras模块实现卷积神经网络4 Keras介绍4.1 Keras深度学习模型4.2 Keras中重要的预定义对象4.3 Keras的网络层构造 5 数据集处理训练5.1 …

ElasticSearch学习篇8_Lucene之数据存储(Stored Field、DocValue、BKD Tree)

前言 Lucene全文检索主要分为索引、搜索两个过程&#xff0c;对于索引过程就是将文档磁盘存储然后按照指定格式构建索引文件&#xff0c;其中涉及数据存储一些压缩、数据结构设计还是很巧妙的&#xff0c;下面主要记录学习过程中的StoredField、DocValue以及磁盘BKD Tree的一些…

PyQt6 QScrollBar滚动条控件

锋哥原创的PyQt6视频教程&#xff1a; 2024版 PyQt6 Python桌面开发 视频教程(无废话版) 玩命更新中~_哔哩哔哩_bilibili2024版 PyQt6 Python桌面开发 视频教程(无废话版) 玩命更新中~共计48条视频&#xff0c;包括&#xff1a;2024版 PyQt6 Python桌面开发 视频教程(无废话版…