游戏开发论坛

 找回密码
 立即注册
搜索
查看: 1175|回复: 1

[求助]关于近似两点距离的问题!

[复制链接]

50

主题

200

帖子

200

积分

中级会员

Rank: 3Rank: 3

积分
200
发表于 2007-5-21 15:31:00 | 显示全部楼层 |阅读模式
在游戏编程大师上面说道了近似的两点距离公式.

s32 fast_distance_2d( s32 x, s32 y )
{
        s32 min = x<y ? x:y;
        return x + y - (min>>1) - (min>>2) + (min>>4);
}

里面说是根据麦克老林级数得到的.

麦克劳林级数我还是记得的. 但是两点距离公式是

z = sqrt(x*x + y*y);

是二元函数吧, 是如何根据麦克老林级数推倒成

        return x + y - (min>>1) - (min>>2) + (min>>4);

还有, 中文版书上的麦克劳林级数好像也写错了, 每一项少了x的k次方.

这个近似方法主要是为了消除sqrt方程的调用. 你们谁有更好的方法啊?



50

主题

200

帖子

200

积分

中级会员

Rank: 3Rank: 3

积分
200
 楼主| 发表于 2007-5-21 20:02:00 | 显示全部楼层

Re:[求助]关于近似两点距离的问题!

用二元泰勒公式进行展开。
我自己回答。TNND。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

作品发布|文章投稿|广告合作|关于本站|游戏开发论坛 ( 闽ICP备17032699号-3 )

GMT+8, 2026-1-26 09:21

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表