FPS之游戏透视原理(一)

大家好我是BY:蛀虫,是个屌丝,单身狗一枚,今天我给大家带来的是FPS透视的原理,希望大家喜欢,如有错误之处还望大家指出,我们共同学习进步。

==============================================================================

FPS游戏透视分为两种

1.D3D(Direct3D) 内部注入

原理是通过HOOK注入的方式挂接到相应DirectX库中的绘图函数上,在绘图之前禁用Z轴缓冲,Z轴缓冲就是要告诉摄像机,如果人物在箱子或墙的后面,就不用显示这个人物模型,如果人物在这个箱子或墙的前面就强制渲染他,通常会挂接DrawlndexedPrimitive这个绘图函数来感知绘图操作,并通过SetRenderState(D3DRS_ZENABLE,FALSE)函数修改缓冲参数,实现透视效果。

优点:资源占有少,效果高

缺点:新手不太容易上手,需要很强的汇编能力,易检测

===================================================

2.方框透视 外部绘制

创建一个透明窗口,覆盖FPS游戏窗口,通过计算直接在透明窗口上绘制出一个2D方框。

优点:不容易检测,新手易上手,不需要很大的编程基础

缺点:没有内部绘制效率高

===================================================

FPS游戏窗口高度计算公式(适用于方框透视)

游戏窗口底部 到 显示屏顶部的距离 — 游戏窗口顶部 到 显示屏顶部的距离 = FPS游戏窗口高度

===================================================

在所有FPS游戏当中,坐标系统都采用的是笛卡尔坐标系。

你可能感兴趣的:(辅助,FPS,透视,游戏)