kz吧 关注:40,465贴子:1,920,549

【CSKZ】长跳理论极限距离计算(娱乐向分析内容)

只看楼主收藏回复

先带大家简单了解一下关于KZ物理引擎的基础知识(详见以下视频):
https://www.bilibili.com/video/BV18HCtYyEjd
V为原速度矢量;Accelspeed为A/D按键方向(Wishdir)上的速度矢量,其计算公式为Wishspeed*AA/FPS,在默认参数10AA+100FPS的情况下,Accelspeed[max]=250*10/100=25,它与Yaw轴的夹角恒等90度,所以我们可以通过左右移动鼠标(旋转Yaw)间接旋转Accelspeed矢量方向;θ为矢量V与矢量Accelspeed的夹角。
由平行四边形/三角形定则可得出:新(即下一帧)的速度矢量V[new]=sqrt(V^2+Accelspeed^2+2*V*Accelspeed*cosθ)。
将原速度矢量V与新速度矢量V[new]的夹角定义为j,那么由正弦定理可得出一个等式:即Accelspeed/sinj=V/sin(θ-j),经过三角恒等变换整理后j=arctan(Accelspeed*sinθ/(V+Accelspeed*cosθ))。
若要最大化速度增益,则要通过上文中提到的左右移动鼠标带动Yaw与Accelspeed旋转以控制V与Accelspeed的夹角θ保持最佳值:由KZ(CS1.6)物理引擎空中加速部分的源代码可推导出速度增益最大化时的最佳夹角θ[opt]=arccos((30-Accelspeed[max])/V)=arccos((30-25)/V)=arccos(5/V)。


IP属地:福建1楼2025-01-03 05:19回复
    接下来我们来计算一下跳跃距离(位移):首先我们沿X/Y轴将速度矢量V正交分解为V[x]与V[y]两个分量,V[x]=V*sinθ,V[y]=V*cosθ。分别求出X/Y方向上的位移,即速度在滞空时间(一次完整的LJ约为0.73s)上的积分,S[x]=∫[0.00s,0.73s]V[x]dt,S[y]=∫[0.00s,0.73s]V[y]dt。由于S[x]与S[y]为正交关系,我们可直接使用勾股定理得出跳跃距离S=sqrt(S[x]^2+S[y]^2)。


    IP属地:福建2楼2025-01-03 05:21
    收起回复
      2025-05-24 07:35:23
      广告
      设角θ的初始值为0度(即起跳瞬间速度矢量V与Y中轴线重合),θ[new]=θ+(-)j,视加速方向定加/减号。设定起跳速度为275.000,并代入最佳夹角θ[opt]使得速度增益最大化,观察下面的空中路径图:


      IP属地:福建3楼2025-01-03 05:21
      收起回复
        可以发现:当我们在进行低次数加速长跳时,过分追求高速度增益是一种不明智的选择,我们应当暂时把关注点转移到路径上。


        IP属地:福建4楼2025-01-03 05:22
        回复
          这里引入一个新的影响因子X,以便于在下文展开分析。此时的θ角应为arccos(5/V)*FactorX。当FactorX=1时,θ=最佳夹角θ[opt]。
          由上图可得出:FactorX=0.94919时,跳跃距离达到最高峰:
          在此次跳跃中,我们共获得了18.678的正速度增益,并得到了240.746的跳跃距离。
          其中,实际位移方向偏离了Y中轴线21.033°,偏离角度计算公式为arctan(S[x]/S[y])。为了校正偏移,完美起跳角度应为-21.033°。
          并且,速度矢量V向右旋转了37.1°。


          IP属地:福建5楼2025-01-03 05:23
          回复
            随着加速次数增多,最佳因子FactorX[opt]的值也在提升,并逐渐趋近于1。到目前为止,还勉强算是人类能触及到的领域。


            IP属地:福建6楼2025-01-03 05:25
            回复
              从3次加速开始就仅供娱乐了(脚本大神除外):
              FactorX[opt]的值越来越接近1了。
              同时,跳跃距离来到了恐怖的257.678!


              IP属地:福建7楼2025-01-03 05:26
              回复
                再来欣赏一下8次加速的图像(几十次加速的图像太夸张了就不放了):
                此时FactorX[opt]的值已经可以直接近似为1了。


                IP属地:福建8楼2025-01-03 05:27
                回复
                  2025-05-24 07:29:23
                  广告
                  理论上8次加速的极限跳跃距离高达274.806!


                  IP属地:福建9楼2025-01-03 05:28
                  回复
                    这里放个小彩蛋:
                    当FactorX=1.2时,空中路径图与斐波那契螺旋线非常相似。


                    IP属地:福建10楼2025-01-03 05:28
                    回复
                      大佬🐂🍺,学习了


                      IP属地:江苏来自iPhone客户端11楼2025-01-03 07:04
                      回复
                        这不发表论文?


                        IP属地:广东来自Android客户端12楼2025-01-03 09:22
                        回复
                          发个顶会吧求求了


                          IP属地:新疆来自iPhone客户端13楼2025-01-03 11:42
                          回复


                            IP属地:湖北来自Android客户端14楼2025-01-03 12:49
                            回复
                              2025-05-24 07:23:23
                              广告
                              诺贝尔kz奖


                              IP属地:河北来自Android客户端15楼2025-01-03 13:59
                              回复