斜二视图:斜视角视图(一)

如果你对平铺(tiled)图形还无所知那么在这儿它就放在个“坚果壳”(nutshell)里组象素通常是矩形形状构成个平铺图形块如同地板上块瓷砖当你把这些图形块放在时候他们就形成了个图案你还可以把砖块图案图形块堆放起来以构建更大平铺图案
所以说你不需要存储原始位图而是用个地图来存储图形块号码从而可以绘制出更大图片个典型绘图从屏幕左上角开始向右移动直至右边界然后再向下移动重新开始
下面看下斜视角视图型和矩形图形块区别它们是斜视角你绘制它们时候并非是x轴从左向右y轴从上向下现在x走向右下方而y则走向左下方而地图则依旧是从左向右为x轴从上向下为y轴
我们看下图:(x 和 y 为地图坐标)

直角视图: 斜视角视图:
- X - 0 0
0123456789 / 1 * 1 \\
0 ********** Y 2 * * 2 X
| 1 * ** * / 3 * * 3 \\
Y 2 * **** * 4 * * 4
| 3 * ** * 5 * * 5
4 * * * * 6
5 ********** * * * * 7
* * * * * 8
* * * * 9
* *
* *
* *
* *
* *
*

现在别忘了我们显示(视频屏幕)还是直角所以个典型场景如下所示:

------------------------
| \\ 草 / |
| \\ / |
| \\ / | (斜杠表示图形块角度)
| \\/ 水 |
| 沙 \\ |
| \\ |
------------------------

我们通过使用斜视角图形块来获取视图这些图形块有宽度、高度和深度既然观察视角依赖于图形块宽度和高度(这给了我们深度)我们需要用角度把他们绘制出来深度在绘制中没被包含在里面我们只要考虑宽度和高度就够了
个不错观察角度是2:1比例这意味着水平方向每画两个象素在垂直方向就有我们实际上使用是2.1:1我们图形块宽度为32所以我们很快就得到了我们高度是32/2.1=15.23所以我们最后图形块尺寸为32x15这是高度为1“基本”图形块大小记住我们图形块可以有区别高度所以个墙可以是32x90高度并不改变什么但宽度必须保持为32

让我们看下图形块形状(按象素):

1 1 1 1 1 1 1 1 1 1 2 2 2 2 2 2 2 2 2 2 3 3 3
1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2
----------------------------------------------------------------
1| O O O O
2| O O O O O O O O
3| O O O O O O O O O O O O
4| O O O O O O O O O O O O O O O O
5| O O O O O O O O O O O O O O O O O O O O
6| O O O O O O O O O O O O O O O O O O O O O O O O
7| O O O O O O O O O O O O O O O O O O O O O O O O O O O O
8| O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O
9| O O O O O O O O O O O O O O O O O O O O O O O O O O O O
10| O O O O O O O O O O O O O O O O O O O O O O O O
11| O O O O O O O O O O O O O O O O O O O O
12| O O O O O O O O O O O O O O O O
13| O O O O O O O O O O O O
14| O O O O O O O O
15| O O O O

(未完)
Tags:  sky第一视角 第一视角 moon第一视角 斜二视图

延伸阅读

最新评论

发表评论