找回密码
 点一下
查看: 872|回复: 4

对球体范围内的单位造成伤害,谁有更好的选取方法?

[复制链接]
发表于 2011-8-12 12:01:42 | 显示全部楼层 |阅读模式
个人方法如下:
1. 记录施法目标的坐标为(X,Y,Z)
2. 选取技能范围——也就是球体半径内的所有单位并判断条件
3. 条件是匹配单位在球体内,即判断该单位所在位置是否在相同水平高度的球体的水平截面的圆范围内
计算方法:
获取匹配单位的 Z“ 轴高度,然后得到 A=|Z-Z”|,由于知道球体半径R,于是可以求出在Z“高度时水平截面的半径r=sqrt(R^2 - A^2)
然后通过匹配单位与施法目标的X和Y轴的值计算出两个单位的水平间距,最后判断该间距是否<=r ……
QQ截图未命名.png


但是这样计算其实。。我觉得效率还是蛮低的……
不知谁有好一点的办法?


忘了。。还要判断单位甲的Z轴位置是否在球体外。。。这个用Z轴就行了吧……
发表于 2011-8-12 12:28:25 | 显示全部楼层
点(x0,y0,z0)到点(x1,y1,z1)的距离r
r^2=(x1-x0)^2+(y1-y0)^2+(z1-z0)^2
选取圆范围后直接继续计算3维距离的平方好了
回复

使用道具 举报

发表于 2011-8-12 12:31:05 | 显示全部楼层
距离s=sqrt((((匹配单位)的位置)到中心点的距离)^2 + (((匹配单位)的Z轴高度) - 中心点的Z轴高度)^2)
这样写直观多了……
回复

使用道具 举报

 楼主| 发表于 2011-8-12 12:39:55 | 显示全部楼层
LS两位的方法都一样呢…………

好吧。。。我发现圆技能做多后思维被平面禁锢了……
回复

使用道具 举报

发表于 2011-8-12 12:41:36 | 显示全部楼层
原来被猪头抢先了……
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 点一下

本版积分规则

Archiver|移动端|小黑屋|地精研究院

GMT+8, 2024-11-24 08:50 , Processed in 0.032827 second(s), 21 queries .

Powered by Discuz! X3.5

© 2001-2023 Discuz! Team.

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