摄像机旋转约束问题及解决
去年2月份写过一个旋转约束的解决方法,不过是硬算的,今天无意中在论坛发现了一个解决方法
if (euler.x > 180) euler.x -= 360; if (euler.x < -180) euler.x += 360;
这样就可以保证旋转区间可比较
具体代码如下:
using System.Collections; using System.Collections.Generic; using UnityEngine;public class TestCamera : MonoBehaviour {public Transform target;public Vector2 xLimit;public Vector2 yLimit;public Vector2 zLimit;void LateUpdate(){transform.LookAt(target);var euler = FixEuler(transform.eulerAngles);euler.x = Mathf.Clamp(euler.x, xLimit.x, xLimit.y);euler.y = Mathf.Clamp(euler.y, yLimit.x, yLimit.y);euler.z = Mathf.Clamp(euler.z, zLimit.x, zLimit.y);transform.eulerAngles = euler;}Vector3 FixEuler(Vector3 euler){if (euler.x > 180) euler.x -= 360;if (euler.x < -180) euler.x += 360;if (euler.y > 180) euler.y -= 360;if (euler.y < -180) euler.y += 360;if (euler.z > 180) euler.z -= 360;if (euler.z < -180) euler.z += 360;return euler;} }
View Code
摄像机旋转约束问题及解决相关推荐
- unity3D 摄像机旋转、平移、缩放
Unity3D 摄像机旋转.平移.缩放 效果如图: 设置: 代码如下:(相机漫游时使用了DOTween插件) using UnityEngine; using System.Collections; ...
- iOS开发屏幕旋转锁定横竖屏解决方法
iOS开发屏幕旋转锁定横竖屏解决方法 使用场景: 公司最近产品,有两个界面是横屏的,其他的界面是竖屏的.针对这个需求,也调试了一段时间.在网上也查找了不少资料. 解决的方案也是有的,但是都是需要在导航 ...
- Unity简单第一人称移动和摄像机旋转
美女镇文 图片没找到,请重新加载 两个对象,一个当前需要移动的物体,一个摄像机物体,摄像机物体放到移动物体子物体下,然后两个脚本分别挂在到对应物体上,组件对象见图: 之后在玩家身上挂载刚体(rigid ...
- PDF旋转:一分钟解决PDF页面倒置的问题
在生活中,我们都不喜欢不按规则出牌的人.在工作中也一样,我们也不喜欢不正常的文档,比如倒着的PDF文件,不仅非常影响阅读体验以及阅读效率,而且会让人心情烦躁,工作效率大大降低. 那有没有一个简单快捷的 ...
- 摄像机旋转,视距调节,第一/第三人称控制器可切换
摄像机位置自己看着摆放 Camera 跟随player MainCameraModeilocationRecord 是空物体放在MaiCamera 同一位置 head 是头部放在你认为的第一人称视角的 ...
- Qt irrlicht(鬼火)3D引擎 摄像机旋转问题
点击打开链接Irrlicht中的摄像有一个函数 setUpVector() if (m_device != 0 ){core::vector3df rotation(y,x,0.f);m_camera ...
- MySQL关于check约束无效的解决办法
首先看下面这段MySQL的操作,新建一个含有a和b的表,其中a用check约束必须大于0,然而插入了一条(-2,1,1)的数据,其中a=-2,也是成功插入的. 所以MySQL只是check,但是不强制 ...
- createbitmap 旋转90度_解决某些机型调用系统相机照片旋转的问题
如题,相信很多开发者在调用系统照相机接收拍好的照片时,发现照片被无故旋转了90度.这一问题反映在大部分的三星手机上,当然其他的机器还没试完全,总之是有问题. 于是乎想到如下的解决办法: 识别机型,获取 ...
- android 部分手机Camera 拍照 图片被旋转90度的解决方法
部分手机拍照完后 图片旋转角度90度,目前解决方法普遍都是通过图片路径,获取图片信息判断角度,然后转换角度.如下: /*** 读取图片属性:旋转的角度* @param path 图片绝对路径* @re ...
最新文章
- android路由器 设备数,手机查看wifi连接人数_手机查看wifi连接设备数量-192路由网...
- jmeter4.0 执行jmeter_server.bat报错
- Markdown 语法简介
- 使用linux内核编译独立系统,编译linux内核以及depmod的使用
- LeetCode 469. 凸多边形(向量叉积)
- resnet结构_经典卷积网络(二)-ResNet
- python以20字符宽居中输出,Python 字符串内置方法(一)
- 复合消隐信号的作用_南大《AFM》:可拉缩、粘合、导电的双信号柔性彩色薄膜...
- Ruby中的Profiling工具
- 端到端加密优缺点_基于Filecoin的去中心化文件保存和加密分享平台
- bash:express:command not found
- 计算机流体力学:CFD
- Python 处理 PDF 的神器 -- PyMuPDF(下)
- 【英语四六级-必背单词】高中英语单词 (D)-MP3试听与下载
- 人脸识别概述及基于多显卡服务器实现百万底库人脸比对的简单实现方案
- 一个高性能服务器需要关注的地方
- 线段等分/定长的实现
- “杜拉拉思维模式”之五:面试礼仪速成
- 微软PPM 软件 android,微软Surface Duo带来改进后的手写笔支持 Android系统也可顺滑无迟滞...
- ubuntu开机进入initramfs的解决办法
热门文章
- 《剑指offer》--- 数组中只出现一次的数字
- Linux修改root用户登录密码
- final、finally和finalize;throw和throws;collection和collections;==和equals;Statement和PrepareStatement...
- 《UNIX网络编程卷1》第一例及问题
- 大熊君大话NodeJS之------Net模块
- Keil uVision4 for ARM 下增加支持C51,C5x
- Linux上安装wkhtmltopdf,以及调试所遇到的问题
- Class绑定、Class对象绑定、v-if(条件渲染)、v-show(元素显示)、v-for(列表渲染)
- Spring和Mybatis整合
- 【转载】正则表达式30分钟入门教程