IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 游戏开发 -> UE4材质08_顶点偏移动画 -> 正文阅读

[游戏开发]UE4材质08_顶点偏移动画

8.01_顶点着色器

顶点着色器它本质上,也就是一段Shader语言,它可以接受输入,然后输出它的运算结果,那么它主要负责接下来的一些事儿,首先它会把本地坐标中的顶点位置转换为世界坐标位置
只需考虑这个顶点它在世界上的位置,我们就不需要考虑这个物体它在哪儿,我们只需计算这个顶点的世界位置就可以了,简化一些运算的过程
我们需要使用这个顶点偏移来制作各种各样的动态效果,好在接下来它可以处理软硬边的平滑,软边的话,软边它的 会产生一个平滑的效果,应边,它的发现就会产生一个应变的效果。
这个顶点色,它也是使用顶点着色器来计算的。
WPO:如果你是在材质系统看到这三个字母,那么它一般指的就是这个World Position Offset,也就是世界位置偏移。那么这个世界位置偏移也是材质里面的一个输入,它是由顶点着色器来实现的,并且不需要 CPU来参与。
XYZ在这里使用的是RGB来代表的,也就是说我们比如说调BA,可以看到它就像上产生的一个偏移效果,注意它不是真实的移动,它只是一个向上的偏移。
它这个过程它无需CPU参与,它不是真实的移动模型。这个怎么说?在 GPU 绘制模型之前,首先是由C PU 来计算这个模型它的真实位置,假设这一个 CPU ,它告诉 GPU ,这个模型它在000这个位置,但是, CPU 可以通过一个顶点着色器,让它产生一个世界位置的偏移,比如说我让它向上偏移100, 其实它的位置还是在原地,只是相当于把它画偏了,给 它画 到上面去了,其实 它 还是在原地, CPU不知道它 移动的,因为是由CPU先计算它的位置,然后再由显卡来计算,也就是说显卡就算给它画到上面的CPU也不知道,而且就算。GPU绘制完以后,你反馈给 CPU ,比如说我给它画到上面的,那也没有用了,因为这一帧它已经绘制完了,是CPU先运算再交给 GPU 来画的,所以说C PU 他根本就不知道它移动的,就算它知道了也没有用。跟CPU相关的一些东西会依然的认为这个模型它在原地,就比如说碰撞体检测,碰撞体检测它是由 CPU 来计算的, 这个模型向上偏移了很多,但是对于我们的碰撞体来说,它还是在原地;切换到 玩家碰撞, 现在我们继续向上偏移,可以看到它的碰撞体位置是不会产生变化的,现在,我们给他继续往上偏移,然后,我们点击播放,这边可以看到这个模型它比较高,但是,我们还是没有办法穿过去,可以看到这个地方我是穿不过去的,而且我们可以从上面穿过去,也就是说他对于 CPU 来说,他还是在原地.
也就是说一个顶点着色器,它的位移只能用于视觉效, 但是它的消耗是比较低的,首先它不需要 CPU 来计算,它是一个纯GPU的运算,而且它不需要骨骼,不需要给它绑定动画。我们在游戏里面看到的绝大多数的草地,绝大多数的内一个树叶的风吹效果,它都是使用这个世界位置偏移,让它的顶点产生偏移效果。

8.02_物体位移_缩放动画

这个物体它其实会在这个地方出现,但是可以看到它消失了,就是因为我们之前说 ,这个物体它的位置是在这个地方,那么在0801里面我们讲到了这个顶点位移cpu是不知道的,也就是说假设, 我们的屏幕是非这个位置,也就是说我们它超出我们的屏幕外的,cpu就会认为这个物体它不用被绘制,它就会告诉我们的显卡,它从屏幕上消失了,那么就不要绘制它,但是我们使用顶点位移给它放大,让他变成了这么大,那么它就出现在我们的屏幕里面了。但是这个时候cpu还是认为它在屏幕的外面,那么我们使用顶点位移的缩放,一旦我们超出了这个物体它原本大小的这个区域,那么它就会被这一个cpu剔除, 那么cpu剔除以后,显卡就不会绘制它了。
那么如何解决它?在引擎里面它有专门的一个选项,可以扩大它的这个渲染边界,找到渲染Rendering选项,在细节面板里面找到渲染,选择这个物体,然后,我们在Bounds Scales可以调整它的一个边界
比如说给它放大十倍,原本的这个边界, 就是这个物体这么大,一旦我们视野看不到这个边界,那么就不会绘制它,那么放大十倍,它可能就是这样的边界,也就是说我们的屏幕只要出现在这个边界里面,这个物体就会被渲染,我们现在,就可以把这一个放大给他勾上了

8.03_物体旋转_跳跃动画

引擎自带旋转节点 RotateAboutAxis
NormalizedRotattionAxis?旋转轴
RotateAngle?旋转角度(0代表0度,1代表360度)
PivotPoint?枢轴点的偏移?也是旋转中心的偏移
Position?旋转位置

8.05_综合案例_炫光球

Unlit 无光模式
1-X反向不能放在Saturate钳制的前面使用,效果是错误的
物理模拟
  游戏开发 最新文章
6、英飞凌-AURIX-TC3XX: PWM实验之使用 GT
泛型自动装箱
CubeMax添加Rtthread操作系统 组件STM32F10
python多线程编程:如何优雅地关闭线程
数据类型隐式转换导致的阻塞
WebAPi实现多文件上传,并附带参数
from origin ‘null‘ has been blocked by
UE4 蓝图调用C++函数(附带项目工程)
Unity学习笔记(一)结构体的简单理解与应用
【Memory As a Programming Concept in C a
上一篇文章      下一篇文章      查看所有文章
加:2022-04-06 16:21:40  更:2022-04-06 16:22:24 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2025年1日历 -2025/1/16 20:04:21-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码