[游戏解析] 十分钟告诉你fps方框透视原理,画图详解,以csgo单机版为例。
作者:CC下载站 日期:2021-12-10 09:07:16 浏览:1333 分类:玩游戏
FPS 类游戏方框透视的原理,就是根据敌人在游戏世界中的位置,算出其在屏幕上对应的位置,绘制的方式就不谈了,可以用 D3D HOOK,也可以 gdi 绘制。
接下来,我讲一讲计算的原理,只要你上过初中学过数学,就一定能看的懂。
我们需要的数据有以下几个
1. 自己的 x,y,z 坐标
2. 敌人的 x,y,z 坐标
3. 自己的鼠标角度
这些数据都可以用 ce 搜索到,不会的可以去看看 ce 的教程
我们先不算 z 轴 找 x,y 平面的对应关系,如图所示,这是一个上帝视角的图,也就是从天空中向下看,假设原点为我们自己,我们与敌人有一条连线,我们鼠标的方向有一条射线。
这些都是在游戏中可以找出的数据,这其中有一个很关键的角 α,需要我们求出来。因为我们只要知道了 α 角,就可以通过鼠标与 x 轴的角度 -α 角求出 β 角。为什么要求 β 呢?
我们画两条辅助线
试想一下怎么才能找到敌人位置与屏幕的对应关系 ,没错,就是 a 边,
比如我们游戏的分辨率是 1366*768,那横着的以我们准星为分界的一般就是 683
比如我们屏幕就是一个分界线,屏幕是离我们最近的一个面,这个面上的长度是 683,那 a 的长度对应到屏幕上是多少 ,肯定是和 b 的长度成反比的,
b 的长度越长,这个距离肯定也就越短,所以我们得到 屏幕上对应的敌人位置应该是 683+a/b*683(敌人在我们鼠标射线的右边),反之就是减去,y 轴也是同理的。
现在可能我不说很多人也会了, 我们的 x 坐标减去敌人的 x 坐标得到 x 边,我们的 y 坐标减去敌人的 y 坐标得到 y 边,利用勾股定理,求得 c 边。
可知 a=sinβ*c b=cosβ*c,如果敌人在我们的左边也是同理,只不过 β 会变成负的,这样导致 sinβ 变成了负数,但是 cosβ 还是正的 ,也就是说 a/b 变成了负数,那岂不是正好,加了负数就等于减去了它,敌人在我们屏幕上对应的位置也就到了左边。
当然事情还没这么简单,这只是其中两种情况,
如果是这样呢,α 角 - 鼠标角度已经大于 180° 了 ,这时候 我们用 360-α+ 鼠标与 x 轴角度就可以了。
反之同理 如果鼠标与 x 轴角度 -α 角大于 180°,那就用 360 - 鼠标与 x 轴角度 +α 就可以了。
忘记说了求 α 的角度问题,这个根据 x,与 y 来判断,我相信你们也都会求,我将我的源码放在下面 ,只解释一部分,其他的都是同理
还是以原点为例,当我们的 x - 敌人的 x 小于 0,y 相等的时候, 就是这种情况 ,这个时候我们与敌人的连线与 x 轴的夹角(α)是为 0 的,其他三种同理,不理解的可以自己画图看一下
if (x < 0 && y == 0)
{
xAngle = 0;
}
else if (x == 0 && y < 0)
{
xAngle = 90;
}
else if (x > 0 && y == 0)
{
xAngle = 180;
}
else if (x == 0 && y > 0)
{
xAngle = 270;
}
这种情况,我们的 x,y 都小于敌人,我们用反正切直接算出角度(不懂反正切的可以去百度),我简单的说一下 ,就是知道两条直角边用来求角的,这里得出的是弧度制,转为角度制,所以 /pi*180(/pi 表示占了 pi 的几分之几,再成 180 转为对应的角度)。
else if (x < 0 && y < 0)
{
xAngle = atan2(abs(y), abs(x)) * 180 / M_PI;
}
else if (x > 0 && y < 0)
{
xAngle = 90 + atan2(abs(x), abs(y)) * 180 / M_PI;
}
else if (x > 0 && y > 0)
{
xAngle = 180 + atan2(abs(y), abs(x)) * 180 / M_PI;
}
else if (x < 0 && y > 0)
{
xAngle = 270 + atan2(abs(x), abs(y)) * 180 / M_PI;
}
以上的步骤再平面我们的方框就能对应上敌人了 但是游戏是三维世界 ,还需要 z 轴也对应上,毕竟游戏地图会使我们和敌人有高度差。
如图所示,还是以原点为例,但是现在我们相当于站在侧面看了,而不是在天空看,所以此时 x 轴就是我们刚才求的 c 边了,这需要一点空间想象能力 ,我画图能力有限,画不出立体的图片。
这时候 我们用我们鼠标的 y 角度,也就相当于对于整个屏幕的角度 (这个角度就是你鼠标在游戏中上下就会变的角度,在我测试的 csgo 中,上是负数,下是整数,上为 0-(-90),下为 0-90)
来求 h 边,在用 h 边减去 x 就得到了敌人离我们鼠标准星的距离,还是老规矩,转到屏幕上,
举一反三一下 ,应该就是 384-(h-z)/c*384。 h=tan(θ)*c,当然这要分敌人在我们上面和下面两种情况讨论, 我就不细讲了,只要你符号搞对了都没问题,方法有很多种。
虽然还有些不准确但是可以设置一些比例进行微调,如果要继续优化,还需要找出是队友还是敌人的标记,还有是否死亡的标记,我这里只讲关键原理 ,就不谈了。
利用 ce 找到的一些数据,也可以用敌人血量判断是否死亡。
相信看完我说的这些,原理你们应该都明白了,赶紧动自己手写一个吧!
猜你还喜欢
- 03-22 [系统教程]玩游戏fps低怎么办
- 04-06 [游戏]GTA5 豪华版 全DLC 整合 大量MOD插件 终极画质
- 04-06 [游戏][射击] 《幽灵行动:荒野(Ghost Recon Wildlands)》CPYXiu-Zheng镜像版+单独未加密补丁[CN/TW/EN]
- 04-06 [硬盘版游戏] 远征猎人(Quest Hunter)》0.9.12s 3DM免安装未加密版
- 04-06 [游戏] 武装突袭3:顶尖版 简体中文免安装版
- 04-06 [游戏] MUGEN精英格斗整合【3.95GB】
- 04-06 [游戏合集] 好多游戏,大部分都有修改器,大家赶紧下
- 04-06 [游戏] 史上牛逼的FPS系列 个人觉得值得一战 有图有真相 一键安装板 [278G] [非凡科技游戏封装小组]
- 04-06 [游戏] 永恒之柱 集成目前最新升级挡 一键安装板 [16G] [非凡科技游戏封装小组]
- 04-06 [游戏]失落的星球1+2+3 键安装板 [7.8G+11.6G+15.2G] [非凡科技游戏封装小组]
- 04-06 [游戏]火影忍者 究极风暴系列1+2+3+4 一键安装板 [6.5G+6.6G+15.1G+36G] [非凡科技游戏封装小组]
- 04-06 [游戏]马里奥赛车8 白金珍藏版 一键安装板 [4.6G] [非凡科技游戏封装小组]
取消回复欢迎 你 发表评论:
- 精品推荐!
-
- 最新文章
- 热门文章
- 热评文章
[动画] 迪士尼系列动画139部 国英双语音轨 【蓝光珍藏版440GB】
[电影] 莫妮卡贝鲁奇为艺术献身电影大合集 1080P超清 双语字幕
[电影] DC电影宇宙系列合集18部 4K 高码率 内嵌中英字幕 273G
[音乐] 【坤曲/4坤时】鸡你太美全网最全,385首小黑子战歌,黄昏见证虔诚的信徒,巅峰诞生虚伪的拥护!
[音乐] 用餐背景音乐大合集 [MP3/flac]
[书籍] 彭子益医书合集 [PDF/DOC]
[电影] 《环太平洋两部合集》 4K REMUX原盘 [杜比视界] 国英双语音轨 [内封特效字幕] [133.8G]
[电影] 异人之下 The Traveller 2024✨【影版】【4K正式版/HQ超高码/DDP5.1】✚【1080高码】无水印/无压缩
[动漫] 头文字D 动漫 (1998) S01-S06季 1080P 国粤日音轨 续作 剧场版 电影
[小说] 知轩藏书全站7667册txt小说合集精心校对版
[书籍] 彭子益医书合集 [PDF/DOC]
[游戏] 《黑神话悟空》免安装学习版【全dlc整合完整版】+Steam游戏解锁+游戏修改工具!
[动画] 《名侦探柯南》名侦探柯南百万美元的五菱星 [TC] [MP4]
[电视剧集] [BT下载][黑暗城市- 清扫魔 Dark City: The Cleaner 第一季][全06集][英语无字][MKV][720P/1080P][WEB-RAW]
[涨点姿势] 男性性技宝典:14招实战驭女术——爱抚、按摩、催情、姿势、高潮全攻略
[动画] 2002《火影忍者》720集全【4K典藏版】+11部剧场版+OVA+漫画 内嵌简日字幕
[剧集] 《斯巴达克斯》1-4季合集 无删减版 1080P 内嵌简英特效字幕
[CG剧情] 《黑神话:悟空》158分钟CG完整剧情合集 4K120帧最高画质
[短剧] 被下架·禁播的羞羞短剧·午夜短剧合集
[游戏] 黑神话悟空离线完整版+修改器
[影视] 美国内战 4K蓝光原盘下载+高清MKV版/内战/帝国浩劫:美国内战(台)/美帝崩裂(港) 2024 Civil War 63.86G
[影视] 一命 3D 蓝光高清MKV版/切腹 / 切腹:武士之死 / Hara-Kiri: Death of a Samurai / Ichimei 2011 一命 13.6G
[影视] 爱情我你他 蓝光原盘下载+高清MKV版/你、我、他她他 2005 Me and You and Everyone We Know 23.2G
[影视] 穿越美国 蓝光原盘下载+高清MKV版/窈窕老爸 / 寻找他妈…的故事 2005 Transamerica 20.8G
[电影] 《黄飞鸿》全系列合集
[Android] 开罗游戏 ▎像素风格的模拟经营的游戏厂商安卓游戏大合集
[游戏合集] 要战便战 v0.9.107 免安装绿色中文版
[书籍] 彭子益医书合集 [PDF/DOC]
[资源] 精整2023年知识星球付费文合集136篇【PDF格式】
[系统]【黑果小兵】macOS Big Sur 11.0.1 20B50 正式版 with Clover 5126 黑苹果系统镜像下载
- 最新评论
-
有靳东!嘻嘻奥古斯都.凯撒 评论于:10-28 流星花园是F4处女作也是4人集体搭配的唯一一部!奥古斯都.凯撒 评论于:10-28 找了好久的资源,终于在这里找到了。感谢本站的资源和分享。谢谢AAAAA 评论于:10-26 找了好久的资源,终于在这里找到了。感谢本站的资源和分享。谢谢password63 评论于:10-26 找了好久的资源,终于在这里找齐了!!!!blog001 评论于:10-21 找了好久的资源,终于在这里找齐了!!!!blog001 评论于:10-21 找了好久的资源,终于在这里找到了。感谢本站的资源和分享。谢谢WillKwok 评论于:10-09 感谢分享1234123 评论于:10-07 太好了终于找到了谢谢Tom 评论于:10-07 谢谢分享loonghd 评论于:09-30
- 热门tag