[游戏开发][Unity] TPS射击游戏相机实现

技术难点:由于是第三人称射击游戏,角色和相机之间有夹角,所以枪口点和准星是有误差的,下面是和平精英手游截图,我用AK射击zhuzi

 

using System.Collections;
using System.Collections.Generic;
using UnityEngine;public class CameraFollow : MonoBehaviour
{public Transform ShootPoint;//射击距离(米)public float AimDistance = 100;public float CamToAimDis = 103;private Vector3 AimPoint;//横向观察夹角public float HorizonAngle = 0.5f;public float VerticalAngle;//旋转轴向public Vector3 axis = new Vector3(0, 1, 0);void Update(){//射击方向的平面方向Vector3 dir = ShootPoint.forward;//计算射击目标点AimPoint = ShootPoint.position + ShootPoint.forward * AimDistance;Vector3 camDir = Quaternion.AngleAxis(HorizonAngle, axis) * dir;Vector3 CamPos =  AimPoint - Quaternion.AngleAxis(HorizonAngle, axis) * dir * CamToAimDis;transform.position = CamPos;transform.forward = camDir;}}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/28774.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

需求条目化与自动估算强强联合 助力软件估算自动化

痛点: 需求是产品的源头,是项目规模估算的基石。而传统的软件规模估算是由项目成员手工进行,对人员能力、经验、方法都有一定的要求,但是效果不好而且耗时费力,不能保持规模估算的一致性。 而导致这些问题的原因&#…

IDDR和ODDR

IDDR D:输入双倍速率数据(IOB输入,且数据在时钟的上升沿和下降沿都会发生切换,即一个时钟周期发送2bit数据) CE:时钟使能信号(高有效) C:时钟信号 S,R&#x…

微服务sleuth+zipkin---链路追踪+nacos配置中心

目录 1.分布式链路追踪 1.1.链路追踪Sleuth介绍 1.2.如何完成sleuth 1.3.zipkin服务器 2.配置中心 2.1.常见配置中心组件 2.2.微服务集群共享一个配置文件 2.2.1实时刷新--配置中心数据 2.2.2.手动写一个实时刷新的配置类 ----刷新配置文件 2.3.多个微服务公用一个配…

Nginx学习之一撸到底

一、Nginx环境搭建 ❶首先创建Nginx的目录并进入: [rootlocalhost]# mkdir /soft && mkdir /soft/nginx/ [rootlocalhost]# cd /soft/nginx/ ❷下载Nginx的安装包,可以通过FTP工具上传离线环境包,也可通过wget命令在线获取安装包…

有序链表转换二叉搜索树

给定一个单链表的头节点 head ,其中的元素 按升序排序 ,将其转换为高度平衡的二叉搜索树。 本题中,一个高度平衡二叉树是指一个二叉树每个节点 的左右两个子树的高度差不超过 1。 示例 1: 输入: head [-10,-3,0,5,9] 输出: [0,-3,9,-10,nul…

自定义view(一)----自定义TextView

自定义view也算是Android的一大难点,里面涉及到很多值得学习的地方,我会在接下来写一系列文章去介绍它,本篇文章以自定义一个TextView为例。 View的构造方法 自定义view之前我们先了解view的四个构造方法,自定义view无非就是新建一…

如何通过边缘智能网关实现暴雨灾害监测预警

随着台风季来临,暴雨灾害也进入到频发阶段,给村镇和城市居民都造成诸多人身和财产损失。针对南方台风季的水灾防治,物联网技术派上大用场,本篇就基于边缘智能网关的数采方案,简单介绍对暴雨导致的洪涝、内涝的监测和预…

解放研究者:GPT自动化科研

GPT Researcher 是一个自主代理程序,旨在进行多种任务的全面在线研究。 该代理能够生成详细、事实性和公正的研究报告,并提供个性化选项,以便关注相关资源、大纲和教训。受到AutoGPT和最近的Plan-and-Solve论文的启发,GPT Researc…

Revit防护栏怎么做?用栏杆族实现

​  做一些公路类似的项目,要做一些防护栏,我们该怎么做? 今天分享一下,如何造型及方便的去放置。我们都知道栏杆族的特性是可以沿线放置,那么好办。在了解了一些族特性后,我们就可以根据这些特性来做些文章。 第一…

FiddlerScript修改指定参数的返回值

FiddlerScript修改指定参数的返回值 使用场景: api/Live/GetLiveList接口: (1)Type为1,接口返回直播列表 (2)Type为2,接口返回回放列表 现在想修改直播列表的返回值 思路&#…

使用NRF52840 USB Dongle进行Wireshark蓝牙抓包

一、搭建软硬件环境 1.1、准备NRF52840 USB Dongle一个: 1.2、下载Wireshark软件 https://2.na.dl.wireshark.org/win64/Wireshark-win64-4.0.7.exe 1.3、下载Nodic官方解析工具包 nRF Sniffer for Bluetooth LE - Downloads - nordicsemi.com 1.4、下载Python P…

如何实现CAN-SOME/IP通信路由测试

区别于基于UDP的车内通信路由,基于SOME/IP协议的路由增加了服务发现(Service Discovery)和服务发布(Service Publish),那对于测试工程师来说,怎么实现CAN-SOME/IP路由的测试呢? 01 …