第一种

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摄像机跟随鼠标旋转相关推荐

  1. Unity——指针跟随鼠标旋转,GTA武器菜单选择等效果实现

    GTA武器菜单选择 简单实现这种效果 Demo的效果 以下是主要代码 using System.Collections; using System.Collections.Generic; using ...

  2. unity 用四元素实现摄像机的跟随鼠标旋转,缩放

    此文章中的摄像机是第三人称游戏摄像机,脚本挂载在游戏人物身上 用四元素实现的unity摄像机跟随鼠标旋转缩放,并且有障碍物遮挡的时候摄像机会自动往前移. float MouseZ = -(Input. ...

  3. 禁止摄像机跟随`Actor`旋转 Learn Unreal Engine (with C++)

    禁止摄像机跟随Actor旋转 Learn Unreal Engine (with C++) SpaceshipBattle · fanxingin/UE4项目 - 码云 - 开源中国 (gitee.c ...

  4. 元素跟随鼠标旋转,未待完续。。。。

    本节主要讲的是元素跟随鼠标旋转主要是用到了原生js更改css的transform属性,这个属性下有很多方法,下面就只讲关于本节内容的几种方法,其他的可以私下自己去看一看 translate(x,y) ...

  5. Unity摄像机对象锁定旋转运镜模拟

    问题简述 在3D模式下如何模拟实现Unity摄像机对象锁定旋转运镜,可以分为两个部分,第一是实现对象锁定,第二是实现旋转运镜.对象锁定就是无论摄像机如何运动,始终保持对象位于摄像机成像区域的固定位置, ...

  6. unity摄像机环绕物体旋转

    实现原理: 把摄像机作为一个空物体的子对象,空物体自旋,摄像机也会旋转,并且视角一直注释着物体 具体实现: 要环视的物体 新建一个空对象 在空对象下新建一个相机 旋转空对象即可

  7. unity鼠标控制镜头旋转_Unity Camera教程之 摄像机跟随鼠标移动而旋转

    FollowMouseMove 脚本具体内容如下: using UnityEngine; public class FollowMouseMove : MonoBehaviour { public f ...

  8. Unity摄像机跟随转动分析

    前言 最近在做一个赛车的项目,赛车操控和镜头控制都需要和策划配合实现.分析了几个插件的摄像机,留个记录,以后跑路了也能有点参考的东西. 自己的想法 具体思路: 镜头转动使用transform.Rota ...

  9. Unity UI跟随鼠标移动

    挂在需要跟随鼠标的UI上(Image,Text等) using System.Collections; using System.Collections.Generic; using UnityEng ...

最新文章

  1. android wear无法启用,android-wear – 无法创建Android虚拟设备,“没有为此目标安装系统映像”...
  2. 深度学习输入模式与适当的网络架构之间的对应关系
  3. 最简单的彩灯管理系统
  4. Git复习(一)之简介、安装、集中式和分布式
  5. 家用计算机在拔下网线的情况下,为什么只有拔掉网线才可以关掉电脑
  6. Nginx -静态资源Web服务
  7. Linux 命令之 pwck -- 用来验证系统认证文件内容和格式的完整性
  8. Cortex-M3复位序列
  9. 2017.9.18 数颜色 思考记录
  10. fullcalendar 获得当前视图年月_?多视图立体视觉: CVPR 2019与AAAI 2020 上的ACMH、ACMM及ACMP算法介绍...
  11. 桃养人,杏害人,樱桃树下埋死人
  12. Kafka运维大全来了!优化、监控、故障处理……
  13. git之ssh与https地址之间的切换、设置免密码访问服务器、remote、set-url、config、global、credential、helper、store、cache、origin
  14. 【项目复习篇】EGO电商项目技术总结与学习笔记
  15. 量化交易简要入门(一)
  16. linux图片拼接,如何在Linux上使用Hugin Panorama Creator将照片拼接成全景照片
  17. [1101]flink常用参数说明
  18. 正态性检验ks和sw区别_t检验常见问题汇总解答,你想知道的都在这里
  19. c语言中出现nan错误,c语言中浮点运算的inf和nan错误
  20. 真香!用 4K 高清显示器写代码!(包邮送一台)

热门文章

  1. 互联网晚报 | 8月15日 星期日 | 第四范式申请港交所上市;招行私人银行客户突破11万户;特斯拉CEO马斯克去年总薪酬为零...
  2. [CTF]-反弹shell[2]
  3. 资源调度源码分析和任务调度源码分析
  4. 1.Hadoop简介——为什么要使用Hadoop?什么是Hadoop?Hadoop有什么作用?
  5. [体感游戏]关于体感游戏的一些思考(二) --- POV和基本场景
  6. Spring缺少aspectjweaver.jar异常
  7. Python Pyinstaller安装与使用
  8. C#实现批量高斯投影正算、反算
  9. 提高效率必备软件合集
  10. 聊聊jvm的内存结构, 以及各种结构的作用