【Unity渲染】渲染管线原理

整理自B站UPKerry佬的视频【【教程】技术美术入门:渲染管线概述】 https://www.bilibili.com/video/BV1Q54y1G7v3/?share_source=copy_web&vd_source=7e6249c05fba6efe32e8867373f75917

应用阶段 、几何阶段顶点处理、光栅化、片元处理、输出合并

应用阶段是CUP通过视椎体剔除,渲染排序,将模型的顶点贴图等数据通过setpasscall(使用shader和渲染模式)和drawcall(模型数据)传递给GPU。
顶点处理将模型空间顶点转化为屏幕空间(模型空间-世界空间-裁剪空间-屏幕空间。)
光栅化阶段 三角形裁剪,背面剔除,图元装配,光栅化。
片元处理,光照着色纹理着色。
输出合并,Alpha测试、模板测试、深度测试,颜色混合,输出到帧缓冲区。
在这里插入图片描述

在这里插入图片描述

CPU 应用程序阶段,剔除,排序,提交模型数据,绘制调用,向GPT提交SetPass Call(使用shader和混合模式等渲染方式) 和DrawCall(使用哪些模型数据进行渲染)
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
顶点数据在GPU中进行转换(顶点shader),由模型空间定点,先转换到裁剪空间,再转换到屏幕空间坐标,然后进行图元装配和光栅化,片元着色器(片元shader)进行着色,然后合并输出到屏幕
在这里插入图片描述
在这里插入图片描述

模型空间->世界空间->相机空间->裁剪空间
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

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

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

相关文章

独家原创 | SCI 1区 高创新轴承故障诊断模型!

往期精彩内容: Python-凯斯西储大学(CWRU)轴承数据解读与分类处理 Python轴承故障诊断 (一)短时傅里叶变换STFT Python轴承故障诊断 (二)连续小波变换CWT_pyts 小波变换 故障-CSDN博客 Python轴承故障诊断 (三)经验模态分解EMD_轴承诊断 …

机器学习知识点

1鸢尾花分类 鸢尾花分类问题是一个经典的机器学习问题,旨在根据鸢尾花的花萼长度、花萼宽度、花瓣长度和花瓣宽度等特征,将鸢尾花分成三个品种:山鸢尾(setosa)、变色鸢尾(versicolor)和维吉尼亚…

【C++】——list的介绍及使用 模拟实现

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 目录 文章目录 前言 一、list的介绍及使用 1.1 list的介绍 1.2 list的使用 1.2.1 list的构造 1.2.2 list iterator的使用 1.2.3 list capacity 1.2.4 list element access 1.…

展厅施工需考虑的重要因素

1、明确目标和主题 展厅的设计应该以公司历史为线索,通过展品、图片、文字等方法向观众传达公司的发展历程和价值观。在设计过程中,需要根据公司的特点和需求来确定展览的主题,并且合理规划展厅空间,使其呈现出连贯性和逻辑性。 2…

Android 系统锁屏息屏休眠时Handler CountDownTimer计时器停止运行问题解决

1.前言 在进行app开发的过程中,在进行某些倒计时的功能项目开发中,会遇到在锁屏息屏休眠一段时间的情况下, 在唤醒屏幕的情况下发现倒计时已经停止了,这是因为在系统处于休眠的状态下cpu也停止了工作,所以 handler和countdowntimer倒计时也停止了工作,接下来就来看怎么样…

7 单链表的创建,遍历与销毁

从键盘输入任意多个正整数,输入以-1结束。逆序输出这些整数(不包括-1)。 提示: 1、逆序创建单链表。结点数据域是整型数。每输入一个整数,向链表中插入一个结点。当输入-1时结束链表的创建。 2、遍历链表,输出结点数据域的值。 3、…

[vue] v-viewer 点击失效

首先全局引入 import Viewer from v-viewer import viewerjs/dist/viewer.css Vue.use(Viewer) Viewer.setDefaults({Options: {inline: true,button: true,navbar: false,title: false,toolbar: false,tooltip: true,movable: true,zoomable: true,rotatable: true,scalable:…

【Git】tag 标签用法

文章目录 基本用法 基本用法 Git 可以对某一时间点上的版本打上标签。比如在发布某个软件版本的时候( v1.0 等等) 查看tag列表 ➜ git tag v0.1 v1.3搜索tag列表 ➜ git tag -l v1.4.2.* v1.4.2.1 v1.4.2.2 v1.4.2.3 v1.4.2.4显示标签版本信息 ➜ git…

选择IP代理时需要避开哪些误区?

选择IP代理时,许多用户可能会因为对代理服务的不了解而陷入一些误区。这些误区不仅可能影响代理服务的效果,还可能带来安全风险。以下是一些在选择IP代理时需要避开的误区: 第一点是一个常见的误区是过于追求低价:市场上有很多代…

OpenEuler简介与安装

OpenEuler简介与安装 OpenEuler是华为推动的一个免费开源的Linux发行平台。这篇文章简单介绍一下OpenEuler的基本信息,并以当前最新的20.09版本为例,并进行一下x86架构下虚拟机下的安装体验。 基本信息 OpenEuler的基本信息如下所示: 项目…

生成性AI

在当前技术领域,无疑最受关注的进展之一是**生成性AI**,尤其是**生成性对抗网络(GANs)** 和 **变换器模型** 如GPT(Generative Pre-trained Transformer)系列。它们在图像生成、文本处理、音频合成等多个方…

深度学习的数学基础--Homework2

学习资料:https://www.bilibili.com/video/BV1mg4y187qv/?spm_id_from333.788.recommend_more_video.1&vd_sourced6b1de7f052664abab680fc242ef9bc1 神经网络的特点:它不是一个解析模型,它的储存在一堆参数里面(确定一个超平…

Python 基于 OpenCV 视觉图像处理实战 之 OpenCV 简单视频处理实战案例 之七 简单指定视频某片段快放效果

Python 基于 OpenCV 视觉图像处理实战 之 OpenCV 简单视频处理实战案例 之七 简单指定视频某片段快放效果 目录 Python 基于 OpenCV 视觉图像处理实战 之 OpenCV 简单视频处理实战案例 之七 简单指定视频某片段快放效果 一、简单介绍 二、简单指定视频某片段快放效果实现原理…

处理SAP CK11N 报错:成本构成结构 Z1 没有被激活

用户发布成本是报错如下: 成本构成结构 Z1 没有被激活 这是对应的成本结构没有打上激活的勾导致的。 配置路径如下: 把勾打上就不会出错了。

P8685 [蓝桥杯 2019 省 A] 外卖店优先级

题目描述 “饱了么”外卖系统中维护着 N 家外卖店,编号 1 ∼ N。每家外卖店都有一个优先级,初始时 (0 时刻)优先级都为 0。 每经过 1 个时间单位,如果外卖店没有订单,则优先级会减少 1,最低减到 0&#x…

视频号小店如何找达人,对接达人教程分享,你还在等什么?

大家好,我是电商花花。 视频号现在的流量非常大,尤其是达人的流量,自从视频号引入大量的博主和达人之后,达人带货的流量更是突飞猛进。 如果你想要在视频号小店出单,爆单,那必须要找达人带货,…

一文读懂:到底什么是重删和压缩?

在数字化时代,数据已经成为企业和个人生活中不可或缺的一部分。然而,数据的快速增长也带来了存储空间的需求压力。为了更有效地利用存储空间,重删和压缩这两种技术应运而生,它们被广泛应用在主存、闪存、备份软件和数据传输软件中…

经典面试题数组常用方法都有哪些

1.数组常用方法之 push()(改变原数组,产生新数组) push 是用来在数组的末尾追加一个元素,返回添加以后的长度 var arr [1, 2, 3] ​ // 使用 push 方法追加一个元素在末尾 arr.push(4) ​ console.log(arr) // [1, 2,…

实现 jwt 鉴权- SpringBoot + 微服务

目录 项目结构 主要步骤 auth-service里: 1. 配置 pom.xml 依赖 2. 实现HandlerInterceptor 接口的 preHandle 函数 3. 实现 WebMvcConfigurer 的 addInterceptors 接口 4. 生成 token 和验证 token 5. 登录接口示例 user-service 里: 6. 实现拦…

Python-VBA函数之旅-ascii函数

ascii函数在Python中主要用于将对象(特别是字符和字符串)转换为它们的ASCII表示形式。这种转换在处理文本数据、调试代码以及确保文本以 ASCII 格式存储或传输时非常有用。常见应用场景有: 1、调试和文本处理:当处理包含非ASCII字符(如Unicode字符)的文…