unity摄像机跟随鼠标旋转
第一种
float vertical = Input.GetAxis("Mouse X")
float horizontal = Input.GetAxis("Mouse Y")
using System.Collections;
using System.Collections.Generic;
using UnityEngine;public class MoveForce : MonoBehaviour
{private Rigidbody m_Rigidbody;//变量定义:开辟空间private int force = 60;//赋值一个力private float m_MouseSensitive = 3.0f;//控制鼠标敏感程度// Start is called before the first frame updatevoid Start(){m_Rigidbody = GetComponent<Rigidbody>();//获得组件}// Update is called once per framevoid FixedUpdate()//0.02s执行一次,固定添加Fixed{// float vertical = Input.GetAxis("Vertical");//虚拟轴(-1.1)// float horizontal = Input.GetAxis("Horizontal");//水平轴float vertical = Input.GetAxis("Mouse X");//上下float horizontal = Input.GetAxis("Mouse Y");//左右// m_Rigidbody.AddForce(new Vector3(horizontal, 0, vertical) * force);transform.Rotate(vertical *m_MouseSensitive ,horizontal *m_MouseSensitive ,0);//x.y.z// var rotation = transform.rotation * Quaternion.AngleAxis(horizontal * m_MouseSensitive, Vector3.up)// * Quaternion.AngleAxis(vertical *m_MouseSensitive ,Vector3.left );//*乘积 Quaternion四元数旋转以乘积连接 t*p// transform.rotation = rotation;}
}
第二种
通过
计算坐标时只需要通过Quaternion.Euler
来取得旋转四元数,以玩家为原点衍生一条(0,0,-1)的向量并乘上四元数以旋转至Player
指向摄像机的方向,最后乘上Distance
,即可得到摄像机相对玩家的偏移。
var rotation = transform.rotation * Quaternion.AngleAxis(horizontal * m_MouseSensitive, Vector3.up)* Quaternion.AngleAxis(vertical * m_MouseSensitive, Vector3.left);//*乘积 Quaternion四元数旋转以乘积连接 t*ptransform.rotation = rotation;
最后只要将摄像机放置在那个位置,然后LookAt
旋转到z
轴正方向指向玩家就完事儿了。
unity摄像机跟随鼠标旋转相关推荐
- Unity——指针跟随鼠标旋转,GTA武器菜单选择等效果实现
GTA武器菜单选择 简单实现这种效果 Demo的效果 以下是主要代码 using System.Collections; using System.Collections.Generic; using ...
- unity 用四元素实现摄像机的跟随鼠标旋转,缩放
此文章中的摄像机是第三人称游戏摄像机,脚本挂载在游戏人物身上 用四元素实现的unity摄像机跟随鼠标旋转缩放,并且有障碍物遮挡的时候摄像机会自动往前移. float MouseZ = -(Input. ...
- 禁止摄像机跟随`Actor`旋转 Learn Unreal Engine (with C++)
禁止摄像机跟随Actor旋转 Learn Unreal Engine (with C++) SpaceshipBattle · fanxingin/UE4项目 - 码云 - 开源中国 (gitee.c ...
- 元素跟随鼠标旋转,未待完续。。。。
本节主要讲的是元素跟随鼠标旋转主要是用到了原生js更改css的transform属性,这个属性下有很多方法,下面就只讲关于本节内容的几种方法,其他的可以私下自己去看一看 translate(x,y) ...
- Unity摄像机对象锁定旋转运镜模拟
问题简述 在3D模式下如何模拟实现Unity摄像机对象锁定旋转运镜,可以分为两个部分,第一是实现对象锁定,第二是实现旋转运镜.对象锁定就是无论摄像机如何运动,始终保持对象位于摄像机成像区域的固定位置, ...
- unity摄像机环绕物体旋转
实现原理: 把摄像机作为一个空物体的子对象,空物体自旋,摄像机也会旋转,并且视角一直注释着物体 具体实现: 要环视的物体 新建一个空对象 在空对象下新建一个相机 旋转空对象即可
- unity鼠标控制镜头旋转_Unity Camera教程之 摄像机跟随鼠标移动而旋转
FollowMouseMove 脚本具体内容如下: using UnityEngine; public class FollowMouseMove : MonoBehaviour { public f ...
- Unity摄像机跟随转动分析
前言 最近在做一个赛车的项目,赛车操控和镜头控制都需要和策划配合实现.分析了几个插件的摄像机,留个记录,以后跑路了也能有点参考的东西. 自己的想法 具体思路: 镜头转动使用transform.Rota ...
- Unity UI跟随鼠标移动
挂在需要跟随鼠标的UI上(Image,Text等) using System.Collections; using System.Collections.Generic; using UnityEng ...
最新文章
- android wear无法启用,android-wear – 无法创建Android虚拟设备,“没有为此目标安装系统映像”...
- 深度学习输入模式与适当的网络架构之间的对应关系
- 最简单的彩灯管理系统
- Git复习(一)之简介、安装、集中式和分布式
- 家用计算机在拔下网线的情况下,为什么只有拔掉网线才可以关掉电脑
- Nginx -静态资源Web服务
- Linux 命令之 pwck -- 用来验证系统认证文件内容和格式的完整性
- Cortex-M3复位序列
- 2017.9.18 数颜色 思考记录
- fullcalendar 获得当前视图年月_?多视图立体视觉: CVPR 2019与AAAI 2020 上的ACMH、ACMM及ACMP算法介绍...
- 桃养人,杏害人,樱桃树下埋死人
- Kafka运维大全来了!优化、监控、故障处理……
- git之ssh与https地址之间的切换、设置免密码访问服务器、remote、set-url、config、global、credential、helper、store、cache、origin
- 【项目复习篇】EGO电商项目技术总结与学习笔记
- 量化交易简要入门(一)
- linux图片拼接,如何在Linux上使用Hugin Panorama Creator将照片拼接成全景照片
- [1101]flink常用参数说明
- 正态性检验ks和sw区别_t检验常见问题汇总解答,你想知道的都在这里
- c语言中出现nan错误,c语言中浮点运算的inf和nan错误
- 真香!用 4K 高清显示器写代码!(包邮送一台)
热门文章
- 互联网晚报 | 8月15日 星期日 | 第四范式申请港交所上市;招行私人银行客户突破11万户;特斯拉CEO马斯克去年总薪酬为零...
- [CTF]-反弹shell[2]
- 资源调度源码分析和任务调度源码分析
- 1.Hadoop简介——为什么要使用Hadoop?什么是Hadoop?Hadoop有什么作用?
- [体感游戏]关于体感游戏的一些思考(二) --- POV和基本场景
- Spring缺少aspectjweaver.jar异常
- Python Pyinstaller安装与使用
- C#实现批量高斯投影正算、反算
- 提高效率必备软件合集
- 聊聊jvm的内存结构, 以及各种结构的作用