试一试用playmaker实现button交互切换物体的效果
参考教程:角色选择 - Unity Playmaker教学_哔哩哔哩_bilibili
(这个up主真的好可爱哦 说话真的很像小九)
准备工作:找了三辆车,都先放到一个空对象里,都放进场景的同一个位置
首先给车的父物体添加FSM,添加一个叫“Get next child”的动作,并创建child和loop事件
再给状态2添加一个array add动作,应该是用于把刚才get到的child放进去。
加一个array类型的变量叫child array,type是GameObject,用于储存拿出来的child。
再给状态1一个activate game object,设成未激活,意思是存进去的child就都不显示了
给activate car状态添加一个playfrebs get int。这是一个存档方式,
“PlayerPrefs是Unity3d提供了一个用于数据本地持久化保存与读取的类。工作原理十分简单,就是以key-value的形式将数据保存在本地,然后在代码中可以写入、读取、更新数据。”
又添加了两种动作
:array get和activate game object。
迄今为止我的思路是:开始后(瞬间)进行初始化,将这个car名下的所有cars从头循环依次挨个存到array里面,直接也就标好了0123的顺序。标一个回去取下一个,取完了再标上。然后收集完毕后把所有的都先隐藏,不启用。
重新创建了起始状态,叫set up,加了一个状态,用于初始化value(这个是set,结尾是get)
然后我们对UI界面进行编辑,主要是加了左边一个button,右边一个button和一个确定按钮。创建一个空对象作为manager,对manager添加FSM。
对这个状态添加三个Button click的触发动作,顺便添加三个event。
(这里和之前做摄像机那次在button的inspector面板里找On Click()在send event到FSM里应该是等效的,这个更方便一点。)
在next状态下添加send event,即点击了next按钮,就会跳转到send event的FSM中。
其中,需要创建一个变量“car list”,用来存储Car List(车车们的父集)的FSM。
选择send event时,创建一个全局事件“Next Car”,在last状态下同理。
再把这两个全局变量加到Car List的FSM里
把存档功能改了,旨在初始的状态添加一个get
然后在Last Car和Next Car里添加int add,用于实现“通过点击按钮,触发这两个事件,从而让存档value的值变换”。 然后拖到Acitivate car上
为了解决:选下一个的时候上一个不消失的问题:
添加一个状态reset一下
为了解决:点击次数过多导致切换失灵的问题
给“reset一下”状态添加一个“int clamp”动作,用处是把“car_int”这个变量限定在一个范围之内
为了解决:开启游戏后默认的摄像机视角的logo而不是car,要改虚拟摄像机的优先级(吗)
1.不能改优先级,改了优先级以后切换摄像机都不好用了
2.尝试在controller的初始化上加一个调用事件的action
失败了,也不好用。
3.解决了,通过挂载了一个脚本
using UnityEngine;
namespace Cinemachine.Examples
{
[AddComponentMenu("")] // Don't display in add component menu
public class ActivateCamOnPlay : MonoBehaviour
{
public CinemachineVirtualCameraBase vcam;
// Use this for initialization
void Start ()
{
if (vcam)
{
vcam.MoveToTopOfPrioritySubqueue();
}
}
}
}
(参考:Cinemachine相机间的切换_miaobeihai的博客-CSDN博客)
对按钮的控制进行了优化(居然自己整出来了 zcnb)
试一试用playmaker实现button交互切换物体的效果相关推荐
- JS实现点击button按钮切换图片
JS实现点击button按钮切换图片 放暑假在家打算学习html/css/js制作网页,只有html/css的一些基础.实现效果如图: 这个网页很简单,是用Dreamweaver写的,但是是通过自己做 ...
- 58商铺全新UI试客试用平台网站源码
58商铺全新UI试客试用平台网站源码 带红包 带分销 宝塔上备份,完完整整.看起来功能还是很全的,PHP开发的 内容转载自网站: 阁楼网源 -最干净的资源网站
- VRTK功能教学(二):Unity3DVRTK手柄瞬移和UI交互射线切换功能丨3D模型射线交互切换丨直线和曲线的切换
VRTK功能教学(二):Unity3DVRTK手柄瞬移和UI交互射线切换功能丨3D模型射线交互切换丨直线和曲线的切换 ` 文章目录 VRTK功能教学(二):Unity3DVRTK手柄瞬移和UI交互射线 ...
- android切换页面上滑动动画,Android ViewPager多页面滑动切换以及动画效果
评论 #28楼[楼主] 2012-06-01 14:27D.Winter @孤寒江雪 我猜 要么在头尾各再加入一个页卡 在页卡切换监听中判断,如果选中了头尾的页卡,就返回到相邻的那个页卡.头尾页卡的界 ...
- 安卓开发 底部导航图标切换时动画效果_体验安卓 10:好用百倍都不止!
十万人测评俱乐部 Q群:737976088 资源置换合作请加VX:15216685489 谷歌正式发布了 Android 10,这是安卓的第十个大版本更新. 雷科技(微信:leitech)在第一时间将 ...
- android仿网易云音乐引导页、仿书旗小说Flutter版、ViewPager切换、风扇叶片效果等源码...
2019独角兽企业重金招聘Python工程师标准>>> Android精选源码 复现网易云音乐引导页效果 高仿书旗小说 Flutter版,支持iOS.Android Android ...
- jQuery前端开发学习指南(18)——利用jQuery实现元素的隐藏、显示和切换及其动画效果
版权声明 本文原创作者:谷哥的小弟 作者博客地址:http://blog.csdn.net/lfdfhl 概述 在jQuery框架中可便捷地以动画形式隐藏和显示以及切换元素,常用方式有如下三种:默认方 ...
- ios开发学习-手势交互(Gesture)效果源码分享
qianqianlianmeng ios开发学习-手势交互(Gesture)效果源码分享 All Around Pull View 介绍:实现视图四个方向(上下左右)都能够拖动更新(pull to r ...
- Tab页面手势滑动切换以及动画效果
. 3张页卡之间的切换.带动画效果. 工程结构. 主要应用到android-support-v4.jar这个jar包. 布局文件. 1.main.xml中的代码 [html] <?xml ver ...
最新文章
- Python 标准库之 Queue
- vim中如何按一个键就保存文件
- 傻瓜式图文教你在linux下搭建VNC服务器
- 【Python】Pandas在数据库中执行SQL语句并加载结果
- C#设计模式之18-备忘录模式
- MATLAB_平面几何_判断两平面矩形是否干涉
- HTML vs XHTML vs DHTML
- python查询千万级数据库_在一个千万级的数据库查寻中,如何提高查询效率?
- flask如何查询mysql_如何从Flask应用中的MySQL查询返回数据?
- 在ros中打开下载的功能包头文件具体信息_机器人操作系统ROS-Roboware Studio教程(ROS melodic)...
- python实现滚动截屏功能
- woocommerce 新增一个订单状态
- java ajax传参问题
- error和exception区别,throw和throws
- Oracle的 wm_concat 的排序问题,Oracle的 listagg 函数[转]
- unity 导出 ios 项目运行在模拟器
- 计算机的硬件系统和软件系统的关系
- 关于SQL的一点学习
- CTU Open Contest 2017 Pond Cascade
- 无能狂怒之@RequestParam、@PathParam、@PathVariable三者有什么区别我都不知道!
热门文章
- 【Proxy】PAC模式和全局代理模式的区别
- 安全管理员必须知道的——2018年五大类安全设备市场规模排名
- Nirvana Chain 「为应用而生」Lily技术分享--节点机制 |棘轮效应上涨的经济模型
- input标签中的 type 属性:number
- 利用ansys计算机械结构最小安全系数教程,ANSYS Mechanical高级结构力学分析_结构仿真_工业仿真_产品体系_安世亚太...
- Gradle build.gradle 文件
- 汽车企业能源管理工具_汽车生产能源管理系统_综合能源管控系统
- 视频播放器实现技术(一)
- NAT和代理服务器的原理及代表产品
- java个人小管家代码,基于jsp的个人生活小管家系统-JavaEE实现个人生活小管家系统 - java项目源码...