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

news2024/11/26 16:25:57

技术难点:由于是第三人称射击游戏,角色和相机之间有夹角,所以枪口点和准星是有误差的,下面是和平精英手游截图,我用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.coloradmin.cn/o/765428.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

MyBatis 系列2 -- 增加、删除、修改操作

1. 前言 上一系列介绍了MyBatis的背景,以及为什么我们使用MyBatis进行操作数据库,还实现了使用MyBatis进行查询数据库的,接下来我们继续将使用MyBatis操作数据库的其他三种基本操作进行总结. 目录 1. 前言 2. 增加用户操作 3. 修改用户操作 4. 删除用户操作 5. 多表查询操…

unity背景缓动动效

这算是一个很常见的小功能,比如我们在玩横版游戏的时候,背景动画会以一定的频率运动,其实现方式也有很多种。 比如,使用UGUI的imageanimtion动画的方式,自己k桢实现。 还可以使用材质球本身的功能来实现,关…

datatables.editor 2.2 for PHP/JS/NodeJS Crack

使用数据表编辑器在几分钟内创建自定义、完全可编辑的表 编辑器添加了三种编辑模式,以适应任何类型的应用程序 新增功能 编辑 删除 搜索: 名字位置办公室开始日期工资名字位置办公室开始日期工资佐藤爱里会计东京2008-11-28$162,700安吉莉卡拉…

linux服务器中安装java JDK1.8版本

我们远程连接自己的linux服务器 然后 我们先执行 sudo yum update更新一下软件包 然后 有个需要选择的地方 按y 然后 我们可以直接用 yum 来安装Java 1.8版本 执行 sudo yum install java-1.8.0-openjdk然后 问你是否选择按 y即可 搞完之后 我们检查一下 输入 java -vers…

Elasticsearch:什么是矢量搜索以及它如何改进搜索结果

释放矢量搜索的力量:提高搜索结果效率 想象一下这样一个世界:搜索引擎不仅能理解你输入的单词,还能理解它们背后的上下文和含义。 这就是矢量搜索发挥作用的地方,它彻底改变了我们查找信息的方式并改善了用户的搜索体验。 在本文…

Erdas专题图制作

1.导入需要做图的数据 2.在新建一个地图view 3.绘制图框 出现以下对话框,在已打开的Viewer中图象上任意位置点一下 框选需要绘制的区域 框选完成后,回到窗口,再次确定输出地图所包含的实际区域,点击ok即可完成框选 得到如下图像框…

【Python】数据可视化利器PyCharts在测试工作中的应用

点击跳转原文:【Python】数据可视化利器PyCharts在测试工作中的应用 实际应用:常态化性能压测数据统计 import random from pyecharts.charts import Line, Bar, Grid, Pie, Page from pyecharts import options as opts # 查询过去 8 次数据 time_rang…

序列模型学习

1、序列模型的应用场景(RNN) (1)、在进行语音识别时,给定了一个输入音频片段 𝑥,并要求输出对应的文字记录 𝑦。这个 例子里输入和输出数据都是序列模型,因为 &#x1…

动态规划——买卖股票的最佳时机含手续费

题目链接 leetcode在线oj题——买卖股票的最佳时机含手续费 题目描述 给定一个整数数组 prices,其中 prices[i]表示第 i 天的股票价格 ;整数 fee 代表了交易股票的手续费用。 你可以无限次地完成交易,但是你每笔交易都需要付手续费。如果…

美的代工厂雪祺电气过会:拟募资6亿元,产能利用率下滑仍要扩产

撰稿|行星 来源|贝多财经 近日,深圳证券交易所主板披露的信息显示,合肥雪祺电气股份有限公司(以下简称“雪祺电气”)获得上市委会议通过。据贝多财经了解,雪祺电气的上市申请材料于2023年2月28日获得受理。 天眼查信…

Ceph 块存储系统 RBD 接口

-创建 Ceph 块存储系统 RBD 接口- 1、创建一个名为 rbd-demo 的专门用于 RBD 的存储池 ceph osd pool create rbd-demo 64 642、将存储池转换为 RBD 模式 ceph osd pool application enable rbd-demo rbd3、初始化存储池 rbd pool init -p rbd-demo # -p 等同于 --pool4、…

前端多行文本省略号

.title {height: 4rem;line-height: 2rem;// 多行文本省略号overflow: hidden;font-size: 1.4rem;display: -webkit-box;-webkit-box-orient: vertical;-webkit-line-clamp: 2;}

Rancher 系列文章-Rancher 升级

概述 之前在 天翼云上用 4 台机器安装了一个 1 master(及 etcd) 3 node 的 K3S 集群,并在其上使用 Helm 安装了 Rancher 2.6.3 版本。 前几天发现 Rancher 官方推荐的最新版为:v2.6.4 所以决定先后对 Rancher 和 K3S 集群进行升级。 根据…

迁移到强化学习的 6 个理由

胡巴雷拉 从 https://en.wikipedia.org/wiki/Reinforcement_learning 一、说明 强化学习(RL)是机器学习的一个领域,涉及智能体应该如何在环境中采取行动,以最大化累积奖励的概念。强化学习是三种基本的机器学习范式之一&#xff…

RHCSA/RHCE考试模拟环境搭建

RHCSA/RHCE考试模拟环境搭建 1. 使用VMware workstation部署2. 使用U盘通过物理服务器部署1. 使用VMware workstation部署 RHCSA环境内存至少16G,RHCE环境内存至少12G,处理器配置8核   网络适配器选择NAT方式   取消显示器的“加速3D图形”:   另外添加一块硬…

Time Series Classification

时间序列分类 我第一次遇到时间序列分类的概念时,我最初的想法是:我们如何对时间序列进行分类?时间序列分类的数据是什么样子的? 可以想象,时间序列分类数据不同于常规分类问题,因为属性具有有序的序列。…

【业务功能篇47】 idea自动生成代码插件EasyCode

业务越来越多需求的情况下,对应的表也是逐渐增多,许多的文件都是一些重复操作,比如表的实体类,mapper接口类,xml映射文件,业务层接口,接口实现类等。亟需一个自动化生成固定代码文件的工具&…

【24】SCI易中期刊推荐——计算机人工智能(中科院4区)

💖💖>>>加勒比海带,QQ2479200884<<<💖💖 🍀🍀>>>【YOLO魔法搭配&论文投稿咨询】<<<🍀🍀 ✨✨>>>学习交流 | 温澜潮生 | 合作共赢 | 共同进步<<<✨✨ 📚📚>>>人工智能 | 计算机视觉…

【Java从0到1学习】02 Java 开发环境配置

1. 安装 1、方式一&#xff1a;进入官网https://www.oracle.com/java/technologies/javase/javase-jdk8-downloads.html下载JDK 方式二&#xff1a;博主提供的百度网盘版本下载&#xff1a;https://pan.baidu.com/s/1liNHej2hGXJU_L8yQNRZmQ?pwd9w3f 2、下载后双击即可安装…

4、VScode、WAMP、Xdebug调试

1、查看Xdebug的版本 Xdebug是随WAMP一起安装的&#xff0c;版本号可以通过PHP扩展菜单下查看&#xff0c;为3.1.6 2、配置系统环境变量 将PHP的安装目录&#xff0c;添加到系统的环境变量中&#xff0c;配置完成后&#xff0c;通过命令行 输入命令 PHP -V&#xff0c;查看是…