【unity游戏制作-mango的冒险】-4.场景二的镜头和法球特效跟随

👨💻个人主页:@元宇宙-秩沅
hallo 欢迎 点赞👍 收藏⭐ 留言📝 加关注✅!
本文由 秩沅 原创
收录于专栏:unity游戏制作
⭐mango的冒险场景二——镜头和法球特效跟随⭐
文章目录
- ⭐mango的冒险场景二——镜头和法球特效跟随⭐
- 🎶版本前言
- 👨💻相机的差值跟随
- 👺步骤和效果图
- 👺代码
- 👺可能出现的BUG
- 👨💻法球攻击系统的实现
- 👺法球的生成和跟随
- 👺代码
- ⭐相关文章⭐
🎶版本前言
🎶版本: 为 Ltp 2021年版本的unity
🎶类型: 简单2D类冒险游戏
🎶目的: 熟悉掌握基本unityAPI
🎶视频教程:【2023小白狂飙unity2D冒险类游戏制作【mango的冒险】】
👨💻相机的差值跟随
重点: 做辅助点 和 用lerp()方法
👺步骤和效果图
实现一般相机跟随的简单方法
①手动挂载
②代码实现
- 1.🧠通过API获取主对象mango,然后将相机用API附成mango的子对象即可实现跟随第一步
- 2.🧠若当时任务转向的方法采用的是方法二旋转的话那么画面辉变成如下效果,画面也跟着转了

- 3.🧠若当时任务转向的方法采用的是方法三Scale的话那么画面会变成如下效果,那么这个才是我们想要的效果

- 4.🧠用差值移动让相机平滑的跟随,先给mango添加子物体辅助点,该点的位置与相机初始值的位置一致
- 5.🧠让相机跟着该辅助点进行lerp差值移动,故此就不需要上面让相机变成子物体这一步,原因如下
左右移动切换十分不流畅

- 6.🧠相机跟着该辅助点进行lerp差值移动的效果如下
🎶这是最终我们想要的效果

👺代码
using System.Collections;
using System.Collections.Generic;
using Unity.VisualScripting;
using UnityEngine;
//-----------------------
//--作用:相机的移动
//-----------------------
public class CameraMove : MonoBehaviour
{private Transform Mango;void Start(){Mango = GameObject.Find("Mango").transform;}void LateUpdate(){transform .position = Vector3.Lerp(transform.position, GameObject.Find("Mango").transform.GetChild(1).position, 0.1f);}
👺可能出现的BUG
【unity细节】基于unity子对象(如相机)为什么无法进行z轴的拖拽移动和z轴自动归位的问题
👨💻法球攻击系统的实现
👺法球的生成和跟随
重点: 做辅助点 和 用lerp()方法,倒计时方法
-
1.将母体变成预制体,以便捷之后的操作
-
2.添加四个点前两个作为高层级法球的定点,后两个作为低层级的定点

-
3.法球分成高层级预制体和低层级预制体,添加自定义的粒子特效
+
-
4.实例化四个法球,让四个法球跟着四个定点进行lerp差值跟随移动,给母体添加脚本
(方式为:通过代码添加)

- 5.给法球添加抖动效果
(要实现每个法球都上下晃动的话需要随机数,只需要改变其Y轴的位置即可,那么要取其晃动的范围,法球最好跟着辅助点进行Lerp差值跟随)

额 搞错了再来🤣

最终效果如上🧠🧠🧠🧠🧠🧠
👺代码
using System.Collections;
using System.Collections.Generic;
using Unity.VisualScripting;
using UnityEngine;
using UnityEngine.PlayerLoop;
using UnityEngine.Rendering;
//-----------------------
//--作用:法球的跟随移动
//-----------------------public class BallMove : MonoBehaviour
{// Start is called before the first frame updateprivate GameObject fab1,fab2;private Transform [] emptyP = new Transform[5];private GameObject [] Fball = new GameObject[5];void Start(){fab1 = Resources.Load<GameObject>(@"prefab1/iea1");fab2 = Resources.Load<GameObject>(@"prefab1/iea2");for (int i = 1; i < emptyP.Length; i++){emptyP[i] = transform.GetChild(i);}creatMove();}private void creatMove(){for (int i = 1; i < emptyP.Length; i++){if (i < 3){Fball[i] = Instantiate<GameObject>(fab1, emptyP[i].position, Quaternion.identity);}else{Fball[i] = Instantiate<GameObject>(fab2, emptyP[i].position, Quaternion.identity);}IeaMove PoM = Fball[i].AddComponent<IeaMove>();PoM.Pball = emptyP[i];}}
}
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
//----------------------
//--作用:法球的上下效果晃动
//----------------------
public class BallShape : MonoBehaviour
{private float UpDown;private float YPell;private float endTime = 2;private Vector2 Ball;void Start(){YPell = transform.position.y;}void FixedUpdate(){endTime = Mathf.MoveTowards(endTime, 0, 0.1f);if (endTime == 0){Debug.Log("正在进行");BallJump();endTime = 2;}}private void BallJump(){UpDown = Random.Range(-1, 1f) * 5;Ball = new Vector2(transform.position.x, YPell +UpDown );transform.position = Vector2.Lerp(transform.position, Ball, 0.1f);}
}
🎶🎶我们继续后面的制作。
⭐相关文章⭐
⭐【2023unity游戏制作-mango的冒险】-开始画面API制作
⭐【unity游戏制作-mango的冒险】-场景搭建
⭐“狂飙”游戏制作—游戏分类图鉴(网易游学)
⭐本站最全-unity常用API大全(万字详解),不信你不收藏
你们的点赞👍 收藏⭐ 留言📝 关注✅是我持续创作,输出优质内容的最大动力!
相关文章:
【unity游戏制作-mango的冒险】-4.场景二的镜头和法球特效跟随
👨💻个人主页:元宇宙-秩沅 hallo 欢迎 点赞👍 收藏⭐ 留言📝 加关注✅! 本文由 秩沅 原创 收录于专栏:unity游戏制作 ⭐mango的冒险场景二——镜头和法球特效跟随⭐ 文章目录⭐mango的冒险场景二——镜…...
handwrite-1
-------------------- 实现防抖函数(debounce) 防抖函数原理:把触发非常频繁的事件合并成一次去执行 在指定时间内只执行一次回调函数,如果在指定的时间内又触发了该事件,则回调函数的执行时间会基于此刻重新开始计算…...
【一天一门编程语言】Pascal 语言程序设计极简教程
Pascal 语言程序设计极简教程 用 markdown 格式输出答案。 不少于3000字。细分到2级目录。 文章目录 Pascal 语言程序设计极简教程一、Pascal简介1.1 Pascal历史1.2 Pascal的特点1.3 Pascal的应用二、Pascal语言程序设计2.1 Pascal编程环境2.2 Pascal的基本语法2.3 Pascal程序…...
【基础篇0】Linux下ANACONDA与TF-LITE环境配置
0 写在前面:一些摸索与总结 对于Linux系统,我发现不管是电脑x86的Ubuntu还是树莓派arm的raspberry系统,在系统安装完毕后,总是自带一个特定版本的python. 例如我的ubuntu22.04自带的python版本是3.10,而高版本的py…...
TCP协议原理二
文章目录四、滑动窗口二、流量窗口三、拥塞控制四、滑动窗口 前面我们学习了 确认应答,超时重传,连接管理,这些机制都为我们TCP的可靠性提供了保证,当然在保证TCP的可靠性的同时,传输效率也受到了一定的影响ÿ…...
电子科技大学网络协议(TCP/IP作业答案)--网工(五次作业汇总)
目录 作业1:OSI/RM、TCP/IP编址和底层网络技术 作业2:IP地址规划与路由选择 作业3:ARP、IP、ICMP 作业4:UDP、Routing Protocol 作业五 作业1:OSI/RM、TCP/IP编址和底层网络技术 物理地址属于OSI/RM的哪一层&…...
Kubernetes集群声明式文件YAML
一、YAML介绍 YAML 的意思是:仍是一种标记语言,但为了强调这种语言以数据做为中心,而不是以标记语言为重点。是一个可读性高,用来表达数据序列的格式。 二、基本语法 1.低版本缩进时不允许使用Tab键,只允许使用空格…...
为赋能,创共赢~ 〖TFS_CLUB社区〗-〖星荐官计划〗来袭~ 期待各位小伙伴的加入~
文章目录❤️🔥 TFS社区介绍❤️🔥 星荐官计划在直播结束之后,有几位小伙伴跟我说,想法是好的,但是会很难搞。试想一下如果真的是很容易做的事情,那岂不是人人都可以做?正因为难做ÿ…...
【华为OD机试模拟题】用 C++ 实现 - 水仙花数(2023.Q1)
最近更新的博客 【华为OD机试模拟题】用 C++ 实现 - 获得完美走位(2023.Q1) 文章目录 最近更新的博客使用说明水仙花数题目输入输出描述示例一输入输出说明示例二输入输出Code使用说明 参加华为od机试,一定要注意不要完全背诵代码,需要理解之后模仿写出,通过率才会高。…...
Windows作为操作系统的典型特征和主要功能
我是荔园微风,作为一名在IT界整整25年的老兵,今天我们来重新审视一下Windows这个我们熟悉的不能再熟悉的系统。我们每天都在用Windows操作系统,但是其实我们每天直接在打交道的并不是Windows操作系统的内核,而是Windows操作系统的…...
【Linux】-- 多线程安全
目录 进程互斥 计算 -> 时序问题 加锁保护 pthread_mutex_lock pthread_mutex_unlock 使用init与destory pthread_mutex_init phtread_mutex_destory 锁的实现原理 图 可重入VS线程安全 死锁 Linux线程同步 条件变量 系统调用 进程互斥 进程线程间的互斥相关…...
Unity Avatar Camera Controller 第一、第三人称相机控制
文章目录简介Variables实现Target PositionTarget RotationOthers简介 本文介绍如何实现用于Avatar角色的相机控制脚本,支持第一人称、第三人称以及两种模式之间的切换,工具已上传至SKFramework框架的Package Manager中: Variables Avatar&…...
SRE中 的SLO,SLI等知识 归纳
SLA Service Level Agreement 服务质量/水平协议SLO Service Level Objective 服务质量/水平目标SLI Services Level Indicator 服务质量/水平指标下面用人、事、物的逻辑进行阐释。人和事用从上到下,从左到右的顺序。客户 - 每 1 个客户在使用产品服务时&…...
MS9123是一款单芯片USB投屏器,内部集成了USB2 0控制器和数据收发模块、视频DAC和音视频处理模块,MS9123可以通过USB接口显示或者扩展PC、
MS9123是一款单芯片USB投屏器,内部集成了USB2.0控制器和数据收发模块、视频DAC和音视频处理模块,MS9123可以通过USB接口显示或者扩展PC、智能手机、平板电脑的显示信息到更大尺寸的显示设备上,支持CVBS、S-Video视频接口。 主要功能特征 C…...
针孔成像模型零基础入门(三)
2020年爆火的Nerf(神经辐射场)横空出世,据说只要用手机拍照,然后喂给模型,就可以生成3D模型了,我试过了,确有此事! 那我们有想过,为什么可以从二维的图片里面获取物体三…...
你真的了解环形队列吗?(学习数据结构必须掌握的模型)
目录 0.前言 1. 什么是环形队列 2. 如何使用数组结构 / 链表结构 对环形队列封装 3. 代码手撕环形队列各个接口 3.1 代表封装一个环形队列 3.2 环形队列的初始化 3.3 环形队列的插入 3.4环形队列的删除 3.5环形队列的判空 3.6环形队列的判满 3.7环形队列的队头 3.8环…...
《痞子衡嵌入式半月刊》 第 72 期
痞子衡嵌入式半月刊: 第 72 期 这里分享嵌入式领域有用有趣的项目/工具以及一些热点新闻,农历年分二十四节气,希望在每个交节之日准时发布一期。 本期刊是开源项目(GitHub: JayHeng/pzh-mcu-bi-weekly),欢迎提交 issue,…...
对redis之键值型数据库的理解
键值数据库,首先就要考虑里面可以存什么样的数据,对数据可以做什么样的操作,也就是数据模型和操作接口。它们看似简单,实际上却是我们理解 Redis 经常被用于缓存、秒杀、分布式锁等场景的重要基础。理解了数据模型,你就…...
Linux内核中的软中断、tasklet和工作队列
软中断、tasklet和工作队列并不是Linux内核中一直存在的机制,而是由更早版本的内核中的“下半部”(bottom half)演变而来。下半部的机制实际上包括五种,但2.6版本的内核中,下半部和任务队列的函数都消失了,…...
【Java】Spring Boot 2 集成 nacos
官方文档:https://nacos.io/zh-cn/docs/quick-start-spring-boot.html pom 本次Springboot版本 2.2.6.RELEASE,nacos-config 版本 0.2.7,nacos-discovery版本 0.2.7 parent <parent><groupId>org.springframework.boot</gr…...
如何用智能工具提升暗黑破坏神3战斗效率:D3KeyHelper全功能指南
如何用智能工具提升暗黑破坏神3战斗效率:D3KeyHelper全功能指南 【免费下载链接】D3keyHelper D3KeyHelper是一个有图形界面,可自定义配置的暗黑3鼠标宏工具。 项目地址: https://gitcode.com/gh_mirrors/d3/D3keyHelper 暗黑破坏神3的战斗节奏快…...
基于springboot的论坛网站设计与实现.7z(源码+论文+开题报告)
[点击下载链接》》》] 随着信息技术在管理上越来越深入而广泛的应用,管理信息系统的实施在技术上已逐步成熟。本文介绍了论坛网站的开发全过程。通过分析论坛网站管理的不足,创建了一个计算机管理论坛网站的方案。文章介绍了论坛网站的系统分析部分&…...
能源企业必看:人力资源系统选用友、北森,还是红海云?
能源企业的人力资源系统选型,往往不是比功能多不多,而是看能否扛住集团级组织复杂度、倒班工时与薪酬联动、强合规审计,以及对私有化与信创的要求。用友、北森、红海云是常被放在同一张桌面上对比的选择,但适配路径并不相同。下面…...
告别手动配置:用STM32CubeMX和Arduino库玩转ADS1115与STM32 ADC
告别手动配置:用STM32CubeMX和Arduino库玩转ADS1115与STM32 ADC 在嵌入式开发的世界里,ADC(模数转换器)就像一位不知疲倦的翻译官,将模拟世界的连续信号转换为数字世界能理解的离散数值。然而,传统的寄存器…...
BGP路由优化实战:加速收敛,提升网络稳定性
BGP路由优化实战:加速收敛,提升网络稳定性在复杂的网络环境中,尤其是在大规模数据中心或跨区域互联的网络中,BGP(Border Gateway Protocol)路由协议的性能直接影响着网络的可用性和用户体验。BGP 作为互联网…...
影刀RPA与Python变量管理:全局与局部变量的实战应用
1. 全局变量与局部变量的核心区别 在影刀RPA中编写Python脚本时,变量管理是影响代码质量的关键因素。全局变量就像办公室的公告板,所有部门(函数)都能看到并修改;而局部变量则是员工个人笔记本上的临时记录,…...
C# .NET 周刊|2026年3月1期
国内文章.NET 11 预览版1:CoreCLR 在 WebAssembly 上的全面集成与性能突破https://www.cnblogs.com/shanyou/p/19629649.NET 11 Preview 1 正式发布,标志着 CoreCLR 运行时能原生支持 WebAssembly。这是微软在跨平台战略上的重大进展。CoreCLR 提供更优性…...
RuoYi-Cloud微服务架构下PostgreSQL数据库迁移实战指南
1. 迁移前的准备工作 在开始将RuoYi-Cloud从MySQL迁移到PostgreSQL之前,我们需要做好充分的准备工作。这就像搬家前要打包物品一样,准备工作做得好,后续的迁移过程就会顺利很多。 首先,我们需要了解PostgreSQL和MySQL之间的主要差…...
DeepWiki-Open技术解析:构建完全离线的AI文档生成创新方案
DeepWiki-Open技术解析:构建完全离线的AI文档生成创新方案 【免费下载链接】deepwiki-open Open Source DeepWiki: AI-Powered Wiki Generator for GitHub Repositories 项目地址: https://gitcode.com/gh_mirrors/de/deepwiki-open 在企业级软件开发中&…...
基于hadoop+spark+hive 机器学习物流管理系统 货运路线规划系统 智慧交通 计算机毕业设计 Echarts可视化
1、项目介绍 技术栈: Python语言、Django框架、Echarts可视化、MySQL数据库、HTML、报表、物流信息、多角色登录、物流管理该系统采用python和django两种常见的框架,通过MVT来实现对数据集 成和分析,从而更好地满足各种需求。此外,…...
