admin 发表于 2020-1-13 07:11:45

关于D2中等轴透视立体图形(Isometric Graphics)的简单介绍

原创作者:等风来
发布日期:2017-02-07

Isometric Graphics, 游戏绘图中的常用术语,D2就是一种等轴游戏(Isometric Game),实际上,Isometric Game 中的 isometric,指的正是机械制图中,以等轴测投影法绘制的三维物体平面图的一种测量方法,Isometric Game 都是(或基于)轴测图。轴测图就是用轴测投影的方法画出来的有立体感的图。轴测投影(axonometric projection)相对于正投影(orthographic projection)稍微复杂一点,即投影时,物体要围绕它在3D空间中的一个或多个坐标轴,相对于投影平面旋转一定的角度。所谓“轴测”,意思就是“沿着轴来测量”,凡是与坐标轴平行的线段,都可以沿轴向进行作图和测量。
如下图所示为一个典型的二维坐标例子,左边是2D游戏的画面效果,而右边则是3D游戏画面效果。


轴测投影可以分为以下三种基本的情况:
[] 等轴测投影(isometric projection)
[] 正二测投影(两等角投影,dimetirc projection)
[] 正三测投影(trimetric projection)
注:轴测投影下形成的物体影像,就好像从某个斜角观察物体一样,能让人在一个画面(投影平面)中看到物体的不止一个侧面。在轴测投影中,绘制出来的物体的轴或平面与投影平面并不是平行关系。简单说明一下我们需要了解的等轴测投影概念:即按照透视法缩短的三个坐标轴的缩放系数是相等的,而且任意两个坐标轴之间的角度都是120°。

Isometric Game,就是基于等轴测投影原理,把所有游戏界面元素沿坐标轴旋转一定角度制作并绘制到平面(屏幕)上,让玩家能够看到物体的多个侧面,从而产成3D效果的一种游戏。业内人士常常也把这种游戏称为“斜45度视角(或3/4视角)”、“2.5D”或“伪3D”游戏。游戏中的画面都是由众多“菱形”的等轴测视图构成的,也就是说游戏的地图是经由若干地图切片(tile)无缝地拼接而成的,只不过游戏画面的切片都被处理成了菱形,而不是正方形。但是Isometric Game 其实并不是真正的等轴测投影(isometric projection),而是正二测投影(dimetirc projection)。简单地说,如果是等轴测投影【三个轴两两之间的夹角都为120°】的话,那么就要按照30°角来绘制菱形,可这样会导致像素线条出现缺口,而绘制角度为26.5650°的直线恰好没有瑕疵,但此时三个轴之间的角度分别为:116.565°、116.565°、126.87°,这就是正二测投影(两等角投影)了,或许大家先入为主地认为正二测投影可以看成等轴投影的一个变体,或许是因为等轴测投影的应用最为广泛,所以游戏业内仍然将在2:1的菱形切片基础上构建的游戏称为 Isomentric Game。
如下图所示,左边为真正的等轴测投影旋转角度,而右边是游戏中的画面效果。


PS:35.264°=arctan(sin(45°))

【游戏地图和“码”的关系】

游戏中构成地图的最小菱形单元是Tile Unit(又名Sub Title),其对角线长度分别为水平32像素Pixels和竖直16像素Pixels,Yard和TU的换算关系为:1 Yard = 1.5 TU。


【视野距离和“码”的关系】

游戏的屏幕分辨率一般是640*480或者800*600,但是窗口下面的控制面板占用48像素Pixels,所以我们实际上的屏幕像素应该是640*432或者800*552,而通常我们用的都是800*600分辨率。


PS:最后补充一个3D效果的视野距离图片。

页: [1]
查看完整版本: 关于D2中等轴透视立体图形(Isometric Graphics)的简单介绍