游戏开发论坛

 找回密码
 立即注册
搜索
楼主: CNCSNAKE1

[讨论] 各位高人多多帮助!明确3d场景的高度问题

[复制链接]

80

主题

752

帖子

823

积分

高级会员

Rank: 4

积分
823
发表于 2006-5-18 17:02:00 | 显示全部楼层

Re: Re:各位高人多多帮助!明确3d场景的高度问题

madmonkey: Re:各位高人多多帮助!明确3d场景的高度问题

WOW有没有Z我不敢确信,但在地表的处理上肯定有猫腻

就我亲身的体验经历,会出现"跌落世界"的情...


这个可能是因为wow既有高度又有层的概念导致的,WOW中有很多地表层,每个地表层都可以有精灵运动,这些地表层都会记录在高度图中的数据可能是xyz1,xyz2这样表示的。这样玩家坐标在xyz1之上时,假使落地,会落在xyz1上,玩家坐标在xyz2之上,xyz1之下时,假使落地,则会落在xyz2上,以此后推。

在所有层中有两个层是不可逾越的,一个是最高高度如z坐标的最大值,一个是最低高度如z坐标的最小值,海平面为0,这样,当玩家因为某原因掉落到某一平面以下,而该平面以下实际上应该没有的时候,逻辑上会去寻找该平面一下的平面坐标,则会找到最低高度的平面,玩家将会一直落到最低平面上,然后因为高度落差太大而死。

以上说法是可以解释这个现象的,在WOW测试时,外挂就可以这么做,高度没调对会落到下一层中,有时候会落到无尽的虚空中好久才死。

我目前做的游戏,只有Y坐标,没有层的概念,所以,怪物不会分两层分布。但好处是遇到一些地形空洞的时候,可以无视并且在上面走,因为我们没有上面的那种机制。

32

主题

788

帖子

837

积分

高级会员

Rank: 4

积分
837
 楼主| 发表于 2006-5-19 10:09:00 | 显示全部楼层

Re:各位高人多多帮助!明确3d场景的高度问题

恩,不平凡让我更了解了2D游戏的场景
多谢了!

0

主题

172

帖子

176

积分

注册会员

Rank: 2

积分
176
发表于 2006-5-19 14:02:00 | 显示全部楼层

Re:各位高人多多帮助!明确3d场景的高度问题

插句嘴哈,只要用三角面片结构,其计算大多是在某个面片之上的(也就是基本原子操作还是在平面上),要想完全使用Z,只能以点为单位。

做个简单计算好了,1024 * 1024 * 1024的空间里(这已经很小了吧),共有1G个点。
以点为处理单位,真不知道什么CPU可以跑……

41

主题

2104

帖子

2109

积分

金牌会员

Rank: 6Rank: 6

积分
2109
发表于 2006-5-19 14:27:00 | 显示全部楼层

Re:各位高人多多帮助!明确3d场景的高度问题

服务器可以跑,但效果你也看到了,很卡……

实际上它不是直接1024*1024*1024这么算的
或许是64*64*64计算大块,16*16*16再将每大块分成小块

26

主题

1137

帖子

1164

积分

金牌会员

Rank: 6Rank: 6

积分
1164
发表于 2006-5-19 14:28:00 | 显示全部楼层

Re: Re:各位高人多多帮助!明确3d场景的高度问题

6spring: Re:各位高人多多帮助!明确3d场景的高度问题

插句嘴哈,只要用三角面片结构,其计算大多是在某个面片之上的(也就是基本原子操作还是在平面上),要想完...


不会每个点都做记录吧...插值就行了...只要不要偏差的那么多.

不是平凡人的2D场景知识赞...学到了...继续观望高人言论.

7

主题

55

帖子

55

积分

注册会员

Rank: 2

积分
55
发表于 2006-5-19 17:44:00 | 显示全部楼层

Re:各位高人多多帮助!明确3d场景的高度问题

这两天正在写3D引擎的论文,至少目前的开源引擎没有所谓的无Z轴运算,也没有单个把Z轴拿出来讨论,基本的顶点信息总是以矩阵坐标的形式进行变换的,搂主说的有点2.5D的味道,但具体也没有深究过,所以我觉得都是yy.

0

主题

172

帖子

176

积分

注册会员

Rank: 2

积分
176
发表于 2006-5-19 20:57:00 | 显示全部楼层

Re: Re:各位高人多多帮助!明确3d场景的高度问题

GeeGee: Re:各位高人多多帮助!明确3d场景的高度问题

服务器可以跑,但效果你也看到了,很卡……

实际上它不是直接1024*1024*1024这么算的
或许是64*64*64计算大块,16*16*16再将每大块分成小块



嗯,我的意思就是现在都是是以面片为单位计算的,在某个区域范围内还是2维操作。

我理解的YII所说意思是,不使用每个点Z坐标,只是使用所在面片的Z,而面片内操作,可以不额外计算Z,也就是“逻辑层的位移中就没有必要进行真正的空间运算而只用进行平面运算”。

0

主题

172

帖子

176

积分

注册会员

Rank: 2

积分
176
发表于 2006-5-19 21:03:00 | 显示全部楼层

Re: Re: Re:各位高人多多帮助!明确3d场景的高度问题

madmonkey: Re: Re:各位高人多多帮助!明确3d场景的高度问题



不会每个点都做记录吧...插值就行了...只要不要偏差的那么多.

不是平凡人的2D场景知识赞...学到了...继续观望高人言论.



呵呵,只是说个例子,不是指存储那么多信息。
信息数量巨大,带来的直接后果是计算量的加大。

所以我说是面片级操作,是在一定范围内使用某Z,不是一定所有点都使用其真实坐标Z

打个简单比方,圆可以用N边形来近似,但他永远不是数学上严格定义的圆。

154

主题

4567

帖子

4579

积分

论坛元老

Rank: 8Rank: 8

积分
4579
QQ
发表于 2006-5-20 12:21:00 | 显示全部楼层

Re:各位高人多多帮助!明确3d场景的高度问题

WOW部分计算都是客户端直接算的,只有暴雪敢这么做,国内有几家敢这么做,肯定外挂成群。

135

主题

3447

帖子

3800

积分

论坛元老

总版主

Rank: 8Rank: 8

积分
3800
QQ
发表于 2006-5-20 12:38:00 | 显示全部楼层

Re:各位高人多多帮助!明确3d场景的高度问题

其实都是Server与Client计算
不过Server的计算较为简单,Client才会计算所有细节。然后效验两者结果,如果有不同的地方以Server为准。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

GMT+8, 2025-7-6 19:37

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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