找回密码
 点一下
查看: 861|回复: 6

如何计算指定点的镜头高度?

[复制链接]
发表于 2012-11-6 14:32:54 | 显示全部楼层 |阅读模式
本帖最后由 chyj4747 于 2012-11-21 04:20 编辑

测试镜头高度.w3x (11.32 KB, 下载次数: 74)
魔兽镜头移动到高地时会上升
上升的高度不等于镜头目标高度和镜头源高度,貌似是通过采样计算的

这个上升的值貌似只能通过“当前镜头目标Z轴高度”来直接获得
但这是一个本地函数,且只能获得“当前镜头位置”的Z轴,不能获得“指定点的镜头高度 ”

问:如何计算指定点的镜头高度?
把镜头移过去再“获得当前镜头位置”的方法就算了...
有没有计算高度的公式之类的呢...
发表于 2012-11-6 19:35:06 | 显示全部楼层
直白地说,这样的解不存在。因为这个命题原本就是伪命题。给出指定点,是不可能获得一个对应的“镜头高度”的

镜头目标高度并不单纯由目标点地形高度决定,它还受到目标地点周围点高度的影响,甚至是镜头本身视域(FOV)和攻角(AoA)等因素的影响。也就是说,就算在观察同一个点,视域大的镜头和视域小的镜头的镜头高度也完全不同。观察角度不同的镜头高度也不一样。


也就是,根本不存在固定解,除非你把镜头自身的参数也加算进去。但是这样远远不如直接把镜头移动过去再获取当前镜头高度的法子来的便利(虽然这是个很土的法子,但别的法子更加土)。

点评

我知道不是单纯由目标点地形高度决定,所以才想要这个采样的算法嘛~~ 也就是通过目标点位置和镜头参数一起计算出镜头在这个点的镜头高度的算法 而且,把镜头移动过去再捕获镜头高度的方法会不会引起不同步呢?  详情 回复 发表于 2012-11-6 19:59
回复

使用道具 举报

 楼主| 发表于 2012-11-6 19:59:20 | 显示全部楼层
本帖最后由 绯弹亚丝娜 于 2012-11-6 20:43 编辑
麦德三世 发表于 2012-11-6 19:35
直白地说,这样的解不存在。因为这个命题原本就是伪命题。给出指定点,是不可能获得一个对应的“镜头高度” ...

我知道不是单纯由目标点地形高度决定,所以才想要这个采样的算法嘛~~
也就是通过目标点位置和镜头参数一起计算出镜头在这个点的镜头高度的算法

而且,把镜头移动过去再捕获镜头高度的方法会不会引起不同步呢?

不是说“点的Z轴坐标”是一个本地数据吗...
如果各玩家的显示设置不一样,就有可能在显示特效的时候返回一个不同的值吧
回复

使用道具 举报

 楼主| 发表于 2012-11-6 20:25:16 | 显示全部楼层
还有更关键的问题...移动镜头有一定的延迟,需要等待一下,不能马上移动回去...
回复

使用道具 举报

发表于 2012-11-7 00:12:11 | 显示全部楼层
镜头高度确实不同步,也有延迟。但是你原本想要获得的数值不也是不同步的么?(这也是另一个“无解”的原因,因为甚至在不同电脑上镜头高度都可能不一样)


写出通用公式的可能性并不为零。但是不具备实际操作性。单就是“获得镜头视域内最高点和最低点”这两个必要条件要实现就很麻烦,对于粒度的选择就很麻烦。何况“最高点”和“最低点”还是相对于AoA的,何况镜头视域并不是单纯的矩形而是梯形,在特定的镜头参数下甚至是凹多边形。这样的运算量是不可接受的。

最实际的法子是最简单的法子。直接按照实际地图的情况来定,记录下整个地图不同特殊区域下特定镜头的高度和地形高度之间比值的经验系数。然后在游戏时调用,也就是查表法。比任何公式或者把镜头移动过去的法子靠谱得多。


比如通常情况下,地形高度A和镜头高度B之间关系的经验系数为X也即是B=AX+n。然后在一些地形特别高的区域里,系数为Y。即是B=AY+n。在两者之间的过渡区域则可以适当拟合一下什么的。

点评

那换一种思路吧...有什么方法可以让镜头移动时不改变高度呢?  详情 回复 发表于 2012-11-7 10:27
回复

使用道具 举报

 楼主| 发表于 2012-11-7 10:27:41 | 显示全部楼层
麦德三世 发表于 2012-11-7 00:12
镜头高度确实不同步,也有延迟。但是你原本想要获得的数值不也是不同步的么?(这也是另一个“无解”的原因 ...

那换一种思路吧...有什么方法可以让镜头移动时不改变高度呢?
回复

使用道具 举报

发表于 2012-11-9 01:44:56 | 显示全部楼层
这个容易得多。你直接循环判断当前镜头目标高度,和预期高度不符就按照经验系数抬高和降低镜头

并循环地用不断用2分法来增加系数,直到实际值和预期值的差在许可范围内就好了
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-5-11 01:01 , Processed in 0.650758 second(s), 27 queries .

Powered by Discuz! X3.5

© 2001-2023 Discuz! Team.

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