Unity地面交互效果——5、角色足迹的制作

news2024/11/24 7:28:14

  大家好,我是阿赵。
  之前几篇文章,已经介绍了地面交互的轨迹做法。包括了法线、曲面细分还有顶点偏移。Shader方面的内容已经说完了,不过之前都是用一个球来模拟轨迹,这次来介绍一下,怎样和角色动作结合,做出足迹(FootPrint)的效果。
在这里插入图片描述

一、足迹贴图的准备

  之前用球做效果的时候,是用RGB作为法线,然后A通道作为高度图的,所以这里准备一张脚印的贴图,也是同样的道理:

在这里插入图片描述
在这里插入图片描述

  由于我这张法线贴图是直接在Photoshop里面用灰度图转的,所以不是特别的准确。

二、和角色动作结合

  在角色的脚部骨骼上,建2个面片,然后把刚才的脚印贴图赋上去
在这里插入图片描述

  这个时候,脚印就会跟随这角色的脚步动作而已动。给这个脚印设置一个专门的Layer,这个Layer在主摄像机是看不到的,只有顶部拍摄的摄像机看得到。
  做完这一步之后,我们要修改角色的动画,因为脚印不可能一直看得到,只有角色踩在地上的时候,才会看到。
在这里插入图片描述

  可以看到,只有踩下去的2-3帧,才会看到脚印,抬起来的脚,要把脚印隐藏掉。
  由于我这张法线图比较浅,所以有点难看得清,我用红框框起来。
在这里插入图片描述
在这里插入图片描述

  在角色动起来的时候,顶部摄像机就会拍摄到连续的法线和高度图,形成了脚印。

Unity引擎制作沙地实时凹陷网格的脚印效果

三、在雪地里面的特殊处理

  刚才的做法,是在平地或者沙地这张不会凹陷很深的地方,所以只需要一个脚印范围就行了,不过如果是凹陷比较深的雪地,只有2个脚掌来渲染脚印是不够的,会出现这样的情况:
在这里插入图片描述

  这是因为,不止是脚底会碰到雪地,大腿腰部臀部其实也会对雪地造成影响。
  这时候需要做一下处理,把角色脚底的脚印放大一些,这样在雪地里面踩出来的脚印范围,大概和大腿的范围差不多,然后再在腰部加一圈,作为补充。
在这里插入图片描述
在这里插入图片描述

Unity引擎制作雪地效果

  这样做完之后,就可以做出比刚才合理的效果了。如果角色细节还是不够,可以继续调整脚部和腰部的图,或者两者的深度图做成不一样,比如腰部的alpha浅一点,脚底的alpha深一点。这样也可以做出脚底的脚印踩得明显一点,腰部挤开的深度会没那么深的效果。
在这里插入图片描述

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

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

相关文章

基于ssm的大学生社团管理系统

基于ssm的大学生社团管理系统 摘要 基于SSM的大学生社团管理系统是一个全面、高效的社团管理平台,旨在帮助大学生和社团管理员更方便、更快捷地进行社团活动的组织和管理。该系统基于Spring、SpringMVC和MyBatis(简称SSM)开发,这三…

IS-LM模型:从失衡到均衡的模拟

IS-LM模型:从失衡到均衡的模拟 文章目录 IS-LM模型:从失衡到均衡的模拟[toc] 1 I S − L M 1 IS-LM 1IS−LM模型2 数值模拟2.1 长期均衡解2.2 政府部门引入2.3 价格水平影响2.4 随机扰动因素 1 I S − L M 1 IS-LM 1IS−LM模型 I S − L M IS-LM IS−LM是…

JVM GC 垃圾收集器

文章目录 System.gc()内存溢出(OOM)OOM 的原因 内存泄漏垃圾回收的并行与并发安全点与安全区域 Java 中的引用分类强引用(Strong Reference)软引用(Soft Reference)弱引用(Weak Reference&#…

设计模式是测试模式咩?

设计模式和测试模式概述 软件的生命周期为什么要进行测试(测试的目的)?软件的设计模式1. **瀑布模型**3. 增量和迭代模型4. 敏捷模型5. 喷泉模型 测试模型V模型W模型 一个应用程序从出生到“死亡”会经过非常漫长的流程…… 软件的生命周期 …

你觉得哪个软件写verilog体验最好?

最近在媒体上看到一个热点问题,浏览量高达680,003。“你觉得哪个软件写verilog体验最好?”这个问题可以说是IC设计师们最想知道的问题,也是大家工作交流中比较常见的。今天移知教育小编就来为大家分享一下,我对于这个问题的解答。…

第4版信息系统模考真题

请点击↑关注、收藏,本博客免费为你获取精彩知识分享!有惊喜哟!! 1.下列关于信息的说法,错误的是( )。 A信息是物质、能量及其属性的标示的集合是确定性的增加 B信息是以物质介质为载体,传递和反映世界…

浙大计算机学院2024届推免直博生名单

名单: 分析: 浙大计算机学院共录取推免直博生158人,其中计算机科学与技术专业73人,人工智能专业7人,软件工程专业21人,网络空间安全专业19人,电子信息专业31人,设计专业7人 欢迎关…

nginx如何编译安装和应用

nginx是什么 Nginx,简称为"engine x",是一个高性能的HTTP和反向代理web服务器,同时也Nginx,简称为"engine x",是一个高性能的HTTP和反向代理web服务器,同时也提供了IMAP/POP3/SMTP服务…

Flink SQL -- 概述

1、Flink SQL中的动态表和连续查询 1、动态表: 因为Flink是可以做实时的,数据是在不断的变化的,所以动态表指的是Flink中一张实时变换的表,表中会不断的有新的数据。但是这张表并不是真正的物理表。 2、连续查询: 连续…

视频编软件会声会影2024中文版功能介绍

会声会影2024中文版是一款加拿大公司Corel发布的视频编软件。会声会影2024官方版支持视频合并、剪辑、屏幕录制、光盘制作、添加特效、字幕和配音等功能,用户可以快速上手。会声会影2024软件还包含了视频教学以及模板素材,让用户剪辑视频更加的轻松。 会…

虚拟机复制后,无法ping通问题解决

虚拟机复制后,无法ping通问题解决 可能出现的现象 ssh工具连接不上虚拟机;虚拟机ping不通外网或者ping不通内网其它虚拟机; 原因 原虚拟机和新复制出来的虚拟机的ip地址重复;原虚拟机和新复制出来的虚拟机的MAC地址重复&#…

官方Redis视图化工具Redisinsight

一、下载最新版本的 docker pull redislabs/redisinsight mkdir /data/redisinsight docker run -d -u root -p 8001:8001 -v /etc/localtime:/etc/localtime -v /data/redisinsight:/db --restartunless-stopped redislabs/redisinsight:latest 二、浏览器打开 http://192…

轻量封装WebGPU渲染系统示例<22>- 渲染到纹理(RTT)(源码)

当前示例源码github地址: https://github.com/vilyLei/voxwebgpu/blob/feature/rendering/src/voxgpu/sample/RTTTest.ts 当前示例运行效果: 此示例基于此渲染系统实现,当前示例TypeScript源码如下: export class RTTTest {private mRscene new RendererScene()…

前端AJAX入门到实战,学习前端框架前必会的(ajax+node.js+webpack+git)(三)

知者乐水,仁者乐山。 XMLHttpRequest AJAX原理 - XMLHttpRequest 前面与服务器交互使用的不是axios吗? ajax并不等于axios 我们使用的axios的内部,实际上对XHR对象/原理 的封装 为什么还要学习ajax? ①在一些静态网站项目中…

Microsoft Dynamics 365 CE 扩展定制 - 9. Dynamics 365扩展

在本章中,我们将介绍以下内容: Dynamics 365应用程序Dynamics 365通用数据服务构建Dynamics 365 PowerApp使用Flow在CDS和Dynamics 365之间移动数据从AppSource安装解决方案使用数据导出服务解决方案进行数据复制从CRM数据构建Power BI仪表板简介 多年来,Dynamics CRM已从一…

跨时钟域(Clock Domain Crossing,CDC)

本文参考:http://t.csdnimg.cn/VHga2 【数字IC基础】跨时钟域(CDC,Clock Domain Crossing)_ReRrain的博客-CSDN博客 同步设计:所有设计使用同一时钟源,频率相位可预知。 异步设计:设计中有两…

MATLAB|风玫瑰图

目录 扫一扫关注公众号 效果图 粉丝给的图: 复刻的图: 其他样式效果: 数据 绘图教程 绘制左边Y轴 绘制主、次网格和主、次刻度的极坐标区域。 添加刮风数据,添加数据和颜色、图列大小映射关系。 颜色条绘制​​​​​​…

在mac上使用jmap -heap命令报错:Attaching to process ID 96530, please wait...

在mac上执行命令jmap -heap 96530 报错: Attaching to process ID 96530, please wait... ERROR: attach: task_for_pid(96530) failed: (os/kern) failure (5) Error attaching to process: sun.jvm.hotspot.debugger.DebuggerException: Cant attach to the proc…

数据结构(超详细讲解!!)第二十二节 广义表

1.定义 广义表,顾名思义,也是线性表的一种推广。广义表被广泛地应用于人工智能等领域的表处理语言LISP语言中。在LISP语言中,广义表是一种最基本的数据结构,就连LISP 语言的程序也表示为一系列的广义表。 广义表又称列表&#x…