[ue5]建模场景学习笔记(5)——必修内容可交互的地形,交互沙(3)

1.需求分析:

我们现在已经能够让这片地形出现在任意地方,只要角色走在这片地形上,就能够产生痕迹,但这片区域总是需要人工指定,又无法把这片区域无限扩大(显存爆炸),因此尝试使角色无论走到哪里都能产生痕迹。

2.操作实现:

1.思路:让这片区域总是出现在角色脚下,并随着角色移动,这样角色无论走到哪里,都会产生痕迹,而超出这篇区域的痕迹又会自动消失。

2.首先先让区域始终出现在角色脚下:

将之前需要获取区域的部分整理为函数,并在每一帧初始时调用,同时将get actor location的值传入,这样区域就会在角色脚下生成。

3.现在只是在角色脚下生成了区域,但痕迹并不会随着角色的移动留下,因此,需要创建平移材质函数,使角色每一帧的痕迹向后移一帧,看起来就像是刚刚留下的痕迹:

4.经过测试仍然无法很好的实现效果,主要问题在于,随着角色移动,前面的地面会出现之前角色留下的痕迹,即没有消除,类似这样:

5.第一想法直接clear掉,但直接clear会把想要保留的痕迹一并去除,跑起来就没有痕迹!!所以不行,要做一个转载,先把痕迹保留在一个载体上,清楚原来痕迹,用sandsave表示,再把这个载体的痕迹保存回原来rt,这样之前的痕迹被清空了,只留下了保存在载体上的部分,正好符合我们想要的部分。

3注意事项:

一定注意在拷贝sand时,这里混合模式一定选择不透明!!!否则绘制不到画板上。

相关推荐
星火开发设计37 分钟前
C++ 预处理指令:#include、#define 与条件编译
java·开发语言·c++·学习·算法·知识
BugShare1 小时前
Obsidian 使用指南:从零开始搭建你的个人知识库
笔记·obsidian
BackCatK Chen1 小时前
第 1 篇:软件视角扫盲|TMC2240 软件核心特性 + 学习路径(附工具清单)
c语言·stm32·单片机·学习·电机驱动·保姆级教程·tmc2240
深蓝海拓1 小时前
PySide6从0开始学习的笔记(二十五) Qt窗口对象的生命周期和及时销毁
笔记·python·qt·学习·pyqt
理人综艺好会2 小时前
Web学习之用户认证
前端·学习
●VON2 小时前
React Native for OpenHarmony:项目目录结构与跨平台构建流程详解
javascript·学习·react native·react.js·架构·跨平台·von
跃渊Yuey2 小时前
【Linux】线程同步与互斥
linux·笔记
AI视觉网奇2 小时前
FBX AnimSequence] 动画长度13与导入帧率30 fps(子帧0.94)不兼容。动画必须与帧边界对齐。
笔记·学习·ue5
科技林总2 小时前
使用Miniconda安装Jupyter
笔记
woodykissme3 小时前
倒圆角问题解决思路分享
笔记·学习·工艺