美术使用这个工具做动画时,对一些物体旋转,结果想 y轴方向 从0 往-30° 旋转,结果编辑模式自动会变出来一个 330°的关键帧。。。。完全不是美术预期。

研究发现原来 Unity的根本机制, 编辑工具Vector3支持负数,但 赋值给 localEulerAngles,unity自动会换算到 0~360
没法处理这里。

只能在编辑器,判断是否要插关键帧的代码里做判断。

CinemaCurveControl.cs 里,checkToAddNewKeyframes 函数里 加了判断是修改localEulerAngles,则把负数的情况换算一下,如果一致则不要加关键帧了。 完美解决这个问题。

                else if (typeInfo == PropertyTypeInfo.Vector3){Vector3 vec3 = (Vector3)value;float curve1Value = data.Curve1.Evaluate(state.ScrubberPosition);float curve2Value = data.Curve2.Evaluate(state.ScrubberPosition);float curve3Value = data.Curve3.Evaluate(state.ScrubberPosition);//解决编辑转向时 角度不能为负的bugif ("localEulerAngles" == data.PropertyName){if (curve1Value < 0 && Mathf.Approximately(curve1Value % 360 + 360, vec3.x)){vec3.x = curve1Value;}if (curve2Value < 0 && Mathf.Approximately(curve2Value % 360 + 360, vec3.y)){vec3.y = curve2Value;}if (curve3Value < 0 && Mathf.Approximately(curve3Value % 360 + 360, vec3.z)){vec3.z = curve3Value;}}hasDifferenceBeenFound |= addKeyOnUserInteraction(vec3.x, curve1Value, data.Curve1, state.ScrubberPosition);hasDifferenceBeenFound |= addKeyOnUserInteraction(vec3.y, curve2Value, data.Curve2, state.ScrubberPosition);hasDifferenceBeenFound |= addKeyOnUserInteraction(vec3.z, curve3Value, data.Curve3, state.ScrubberPosition);}

[Unity]CutScene工具Cinema Suite Rotion 角度不能负数方向旋转的bug修正。相关推荐

  1. Unity 自制工具:Point。方便标记出生点或巡逻点等功能。

    Unity 自制工具:Point.方便标记出生点或巡逻点等功能. 之前的一篇点的封装:Unity 实现出生点(Spawn Points)的Scriptable封装 工具源码:Point For Uni ...

  2. 【Unity新闻】Unity新工具Metric Validation帮你自动化测试游戏平衡性

    洪流学堂,让你快人几步. 我们一起看看上周Unity有什么大事情发生吧! Unity性能优化团队最新进展 大约两年前,Unity组建了一支专门的优化团队,专注于将性能本身作为一项功能.团队的任务很简单 ...

  3. 【Unity Editor工具制作-文本转UTF-8编码、用WPS表格打开表格、用WPS表格打开】

    Unity Editor工具制作 文本转UTF-8编码 用NotePad打开 用WPS表格打开 文本转UTF-8编码 [MenuItem("Assets/文本转UTF-8编码")] ...

  4. Unity C#工具类 ArrayHelper

    Unity C#工具类 ArrayHelper 功能介绍 C#下传统的数组不支持Linq库,无法方便的进行查询,查找最值,批量获取等操作,利用泛型制作通用的ArrayHelper工具类,使得数组也像L ...

  5. 创作课程和SCORM的强大工具iSpring Suite详细介绍

    iSpring Learn是简化员工培训和发展的在线学习系统,具有员工入职.培训.评估等功能.iSpring Suite是一个新兴的创作工具包,也许您不太了解iSpring Suite,那您就可以看看 ...

  6. 怎样用Unity Terrain工具制作美观的场景(四)

    怎样用Unity Terrain工具制作美观的场景(四) 1.前言 这篇文章将是这个系列最后的一篇文章了,关于unity terrain工具更详细的内容,如果后面我再用到也会给大家出续集,话不多说直接 ...

  7. 怎样用Unity Terrain工具制作美观的场景(一)

    怎样用Unity Terrain工具制作美观的场景(一) 1.前言(针对Unity Terrain的介绍) 目前地形方面terrain已经成为了unity开发的主流地形,好处是,可以用笔刷直接控制颜色 ...

  8. 通过Web安全工具Burp suite找出网站中的XSS漏洞实战(二) 1

    一.背景 笔者6月份在慕课网录制视频教程XSS跨站漏洞 加强Web安全,里面需要讲到很多实战案例,在漏洞挖掘案例中分为了手工挖掘.工具挖掘.代码审计三部分内容,手工挖掘篇参考地址为快速找出网站中可能存 ...

  9. Unity 工具控件 之 Text 文本字间距调整(老版本的Unity编写工具控件/新版本Unity使用TMP)

    Unity 工具控件 之 Text 文本字间距调整(老版本的Unity编写工具控件/新版本Unity使用TMP) 目录 Unity 工具控件 之 Text 文本字间距调整(老版本的Unity编写工具控 ...

  10. 【Unity 实用工具篇】✨| Tutorial Master 2 游戏引导教程 快速上手

    前言 [Unity 实用工具篇]✨ | Tutorial Master 2 游戏引导教程 快速上手 一.Tutorial Master 2 介绍 1.1 基本概念 1.2 相关链接 1.3 效果展示 ...

最新文章

  1. oc开发之block详解
  2. Oracle bootstrap$ 详解
  3. pycharm快捷键不能用了
  4. hdu-1104-Remainder(BFS打印路径+数论)(%与mod的区别)
  5. 以Post方式发送数据采用WebClient
  6. JAVA类思维_面向对象思维 Java中的类和对象及其应用
  7. php递归无限极分类
  8. 模拟栈数据结构改进版(使用异常)
  9. 信息学奥赛一本通 1844:【06NOIP提高组】金明的预算方案 | 洛谷 P1064 [NOIP2006 提高组] 金明的预算方案
  10. ansible vim_Vim插件,使用Ansible自动化部署策略,Pelican入门,Linux,Joplin,Python以及更多新鲜读物
  11. PHP并发IO编程实践
  12. 嵌套组合图echarts
  13. 《深入浅出Python机器学习》读书笔记 第二章 基于Python语言的环境配置
  14. FileUpload1.PostedFile.FileName取不到完整路径
  15. 中控考勤机重置考勤机密码方法
  16. 【Python打卡2019】20190421之52周存钱挑战
  17. 车载测试常见关心问题解答
  18. 使用函数求最大公约数 pta_13个数学函数应用技巧解读,易学易懂,远离数学计算困扰...
  19. 大脑皮质网络中社区内和社区间同步与相关性的竞争|Competition between intra-community and inter-community synchronization...
  20. DBLINK使用的思考

热门文章

  1. 【Spring笔记09】Spring中事务传播机制(注解方式)
  2. 发现数字财富的秘密之三:60分钟搞清楚数字技术ABC|链塔智库
  3. kernal tch 下载 天正_kernal tch 下载 天正_打开cad图时提示TCH_KERNAL 缺乏解释器天正图形看不见, 请下载天正插件.........
  4. 1.7亿,国家重点研发计划“综合交通运输与智能交通”2019年项目申报开始
  5. 微服务 注册中心的作用_微服务-服务与注册中心
  6. 计算机中.dll文件检查,在电脑中查看并打开dll文件类型的具体方法
  7. php公众号开发文档,微信公众平台的开发者文档
  8. 量表与问卷的区别比较
  9. Originpro拟合Gompertz模型
  10. 怎么样利用“消息集中管控中心”批量管理手机信息