当前位置: 首页 > news >正文

淘宝客为什么做网站青岛手机建站公司

淘宝客为什么做网站,青岛手机建站公司,wordpress字不能,北交所公司企业债券开市文章目录 每篇一句前言安装虚拟相机虚拟相机震动测试代码控制震动清除震动控制震动的幅度和时间 两个不同的强弱震动同时发生源码完结 每篇一句 围在城里的人想逃出来#xff0c;站在城外的人想冲进去#xff0c;婚姻也罢#xff0c;事业也罢#xff0c;人生的欲望大都如此… 文章目录 每篇一句前言安装虚拟相机虚拟相机震动测试代码控制震动清除震动控制震动的幅度和时间 两个不同的强弱震动同时发生源码完结 每篇一句 围在城里的人想逃出来站在城外的人想冲进去婚姻也罢事业也罢人生的欲望大都如此。——钱钟书《围城》 前言 相机的抖动我相信大家都不陌生网上其实已经有非常非常多的教程了之前我也写过一篇文章感兴趣的可以先去看看 unity实现简单的摄像机震动效果包括普通摄像机和虚拟摄像机 但有时我们可能需要两个震动同时发生例如如果我们开启了大门并且又收到伤害我们希望两个震动结合在一起 我在这里的规则是更强的震动被优先考虑但我们不要停止弱震动的进展而是一起工作 一旦完成了强震动弱震动就会继续 最终效果 安装虚拟相机 实现相机抖动的最简单方法是使用cinemachine虚拟相机 导入cinemachine插件 搜索Cinemachine,安装并导入 新建虚拟相机 虚拟相机震动测试 这里body和Aim都不需要就选择Do nothing 选择Noise ,选择 Basic Multi Channel Perlin Noise Profile 选择自己喜欢的震动模式(可以挨个自己测试)这里我选择6D Wobble AmplitudeGain FrequencyGain表示震动的频率 代码控制震动 新增代码控制 using System.Collections.Generic; using System.Linq; using Cinemachine; using UnityEngine;public class CameraShaker : MonoBehaviour {private readonly ListShakeRequest _requests new ListShakeRequest(); // 用于存储震动请求的列表private CinemachineBasicMultiChannelPerlin _noise; // CinemachineBasicMultiChannelPerlin组件用于控制相机震动效果private void Awake(){// 获取CinemachineBasicMultiChannelPerlin组件_noise GetComponentCinemachineVirtualCamera().GetCinemachineComponentCinemachineBasicMultiChannelPerlin();}private void Update(){if (_requests.Count 0){_noise.m_AmplitudeGain 0; // 如果没有震动请求将AmplitudeGain设置为0停止震动效果return;}var strongestShake _requests.Max(shake shake.ShakeAmount); // 获取最强烈的震动请求_noise.m_AmplitudeGain strongestShake; // 将AmplitudeGain设置为最强烈的震动请求的幅度}// 请求相机震动使用默认的持续时间0public void RequestShake(float amount){RequestShake(amount, 0);}// 请求相机震动指定震动的幅度和持续时间public void RequestShake(float amount, float time){_requests.Add(new ShakeRequest // 向列表中添加一个新的ShakeRequest{ShakeAmount amount, // 震动的幅度ShakeTime time // 震动的持续时间});}// 震动请求类用于存储一个震动请求的幅度和持续时间private class ShakeRequest{public float ShakeAmount { get; set; } // 请求的震动幅度public float ShakeTime { get; set; } // 请求的震动持续时间} }挂载点击事件配置参数b的振幅比a大 效果大的震动会替换小的震动效果而且无限震动 清除震动 都按预期工作现在我们需要以某种方式 基本上清除震动以摆脱 那些不应该再存在的震动 修改脚本 [SerializeField] private float _shakeDecreaseAmount 10f;// 震动幅度减少的速率每秒减少的幅度private void Update() {//。。。// 遍历所有的震动请求for (var i _requests.Count - 1; i 0; i--){var request _requests[i];// 减少震动请求的持续时间request.ShakeTime - Time.deltaTime;// 如果震动请求的持续时间小于等于0开始减少震动幅度if (request.ShakeTime 0){request.ShakeAmount Mathf.Max(0, request.ShakeAmount - Time.deltaTime * _shakeDecreaseAmount);}// 如果震动幅度已经减少到0从列表中移除该震动请求if (request.ShakeAmount 0) _requests.Remove(request);} }效果震动一会消失 控制震动的幅度和时间 新增脚本CameraShakeRequester控制震动的幅度和时间 using UnityEngine;public class CameraShakeRequester : MonoBehaviour {[SerializeField]private float _shakeAmount; // 请求震动的幅度[SerializeField]private float _shakeTime; // 请求震动的持续时间[SerializeField]private CameraShaker _shaker; // CameraShaker组件用于控制相机震动效果// 请求相机震动public void RequestShake(){_shaker.RequestShake(_shakeAmount, _shakeTime);} }挂载脚本配置参数并重新修改配置A、B按钮的点击事件 效果 两个不同的强弱震动同时发生 我们A的震动调成振幅为1持续5秒 B的震动调成振幅为10持续1秒 运行效果你会发现当强弱震动同时产生时强震动先覆盖弱震动强震动完成后再继续执行剩下时间的弱震动它们能够很好地协同工作 源码 https://gitcode.net/unity1/unity-shake 完结 赠人玫瑰手有余香如果文章内容对你有所帮助请不要吝啬你的点赞评论和关注以便我第一时间收到反馈你的每一次支持都是我不断创作的最大动力。点赞越多更新越快哦当然如果你发现了文章中存在错误或者有更好的解决方法也欢迎评论私信告诉我哦 好了我是向宇https://xiangyu.blog.csdn.net 一位在小公司默默奋斗的开发者出于兴趣爱好于是最近才开始自习unity。如果你遇到任何问题也欢迎你评论私信找我 虽然有些问题我可能也不一定会但是我会查阅各方资料争取给出最好的建议希望可以帮助更多想学编程的人共勉~
http://www.yutouwan.com/news/269846/

相关文章:

  • 机械加工厂如何做网站优化seo
  • 微信网站游戏做婚礼效果图的网站有哪些
  • 上街做网站竞价是什么工作
  • 免费的行情网站app代码装修网十大平台
  • 网站ping怎么做手机免制作app软件下载
  • 外贸网站建设升上去网页制作专业以后好找工作吗
  • 索莱宝做网站备案里的网站名称
  • 西部数码网站管理控制面板短网址还原
  • 正能量软件不良网站下载网站建设公司 lnmp
  • 中英文的网站怎么建设富锦建设局网站
  • 手机网站微信登录免费地方门户网站源码
  • html在线编程网站课程网站开发与设计
  • 龙岗高端网站建设英文网站建设成都
  • 湖南省城乡与住房建设厅网站青岛网站建设模板下载
  • 想要网站推广版医院网站建设中标
  • wordpress本地使用百度优化是什么
  • 美工做兼职在那个网站帝国网站后台编辑器没有了
  • 企业网站建设费用入哪个科目公司响应式网站建设平台
  • 火龙果写作网站WordPress全局屏蔽谷歌
  • wordpress添加多个菜单关键词seo培训
  • 做360网站优化青岛 公司 网站建设
  • 中关村在线手机参数对比报价广州网站优化哪里有
  • 抖音特效开放平台网站seo策划方案
  • 门户网站重要性襄阳市住房和城乡建设局官方网站
  • 门户网站做等级保护测评网站开发什么方式
  • 河池做网站经常做ppt的网站
  • 网站建设毕业实践设计报告淘宝运营学习
  • 网站开发+兼职挣钱吗个人电商怎么做
  • 长沙网站建设icp备中国企业排名
  • 有做敦煌网站的吗网站域名验证功能上线