斜视角图形引擎:它适合你吗?



作者:Geoff Howland prefix = o />

出处:http://www.lupinegames.com/articles/isoeng4u.htm

译者:张戴维

译者Blog:http://www.5DBlog.com/user1/Davidz

说到斜视角图形引擎可追溯到早期图形化电脑游戏Fairlight上帝也疯狂(Populous)及较近期暗黑破坏神(Diablo)等游戏使它闻名它仅通过对位图绘制便展现出个 3维场景本文中我将谈谈何谓斜视角图形引擎、如何使用它、以及我们为什么需要它

斜视角含义是什么?

所谓斜视角种透视法它能使3轴上3条等长线段在视觉上显得相等简单来说就是如果你有31英尺棍子根朝上放朝向远离你根指向你右侧那么从你视角上看它们是等长这种透视法被称为1:1透视2D格式中它长和宽是相等下图是这种透视法效果简图:



在电脑中斜视角应用和其定义有所区别尽管其含义基本相同但是大多数游戏并不使用1:1比例进行透视很多游戏使用2.1:1透视比例这样可使玩家感觉他在俯视整个场景这比用来解释斜视角1:1透视效果通常要更好

什么是斜视角图素系统?

通常当款游戏使用了类似斜视角透视法时人们会认为那是款斜视角游戏绘制斜视角式2D图素有很多种思路方法种思路方法是绘制个矩形图素但是图素中图像是用斜视角思路方法绘制第 2种思路方法是绘制菱形图素然后将它们平滑连接起来参见下面图例:

上图中我们可以看到几个连接在菱形图素我将它们涂上色差很大颜色以便使你从俯视角度看它们是方形

这就是你使用斜视角图素系统所产生效果

使用斜视角图素系统有什么好处?



对于开发者来说使用斜视角图素系统理由是游戏中需要绘制大量墙壁这种引擎可以很轻易绘制出墙壁菱形图素使得墙壁边缘可以很轻易连接在在互联网上有很多解释斜视角图素系统教程你可以通过搜索关键词“isometric tile game programming”很轻易找到它们

prefix = v />\" src=\"file0649.files/image003.g\">



在上图中我添加了个从透视角度看起来像墙壁 4边形你还可以很简单、轻易添加天花板、悬垂物甚至任何属于墙壁物件这就是为什么开发人员更倾向于用这种思路方法开发角色扮演类游戏(RPG)它们场景中通常有许多墙壁比如说地牢

斜视角图素系统还允许你轻松处理墙壁和角色重叠问题你只需将墙壁绘制在角色的上角色便显得距离很远虽然你仍需要对角色进行处理但是比对所有角色以及墙壁都进行处理要简单在使用墙壁情况下斜视角图素系统会节省你时间



我不需要斜视角图素系统理由是什么?



不使用斜视角图素系统也是最重要原因是处理图素的间场景衔接问题很困难处理矩形图形时美工只需简单检查边界看其是否衔接很好如果要使用斜视角图素系统不但要处理相邻图素的间对应边而且还要进行像素拼接同时他还要将画画成菱形以使其看起来像似经过旋转方形处理上述这些工作曾是极困难常使美工变得非常困难

如果你只想绘制方形=GramE>物组成地板那么你不需要考虑这些若尝试如草地等更接近自然场景则是费力费时

斜视角图形引擎通常比砖块式图形引擎更难编程你需要进行些运算来判断图素绘制位置以及光标所在图素位置这可能会有些难度且需花费你1周左右时间来完成所以如果从斜视角引擎中获益不是很大那么只是在浪费时间

我该怎样做?

这取决于你想做游戏类型如果你游戏中有很多墙壁那么斜视角图形引擎是个很好选择它可以简化墙壁绘制使游戏自然地看起来像是3D游戏

如果你游戏中用不着很多墙壁只是制作现实中场景那么就没必要使用斜视角图形引擎否则只会使图像变得更糟还要克服更多困难你只需要简单将图片用斜视角透视法思路方法绘制出来即可

在你开始制作游戏前进行引擎选择是很重要我曾经花费3时间为我游戏Force Recon制作个斜视角图形引擎但我最终发现那只会使工作变得更困难使图像变得更难看





Tags: 

延伸阅读

最新评论

发表评论