第一期——末地传送门方块的渲染的样子


【资料图】

大家好呀!我是秋晔!各位在闲暇时,是否陶醉于末地传送门所显示的星空呢?我想是的。然而,如果细心的话,可以发现:虽然星空的运动有点乱,但有规律。那么,这星空是怎么渲染的呢?    这里用版本。打开jar,可找到相关纹理end_,放大纹理,可发现——纹理内竟然只有黑白!而游戏中,星空上是有其他颜色的!这是怎么回事!?    我们不妨做一个艺术家,改掉纹理,将该纹理涂满白色,不改变原有的像素大小。然后,将这256*256像素大小的纯白纹理替换jar中的end_。进入游戏,星空变成蓝色了呢。!为什么白色变成了蓝色了呢?为什么呢?这是notch的秘密!!    我们不妨用一个正方形边框替换纹理,粗为28像素。进入游戏,惊喜来临——末地传送门方块上有好多个纹理,下面还有网格,是由一个个小纹理拼接而成的。如果耐心看,便可以发现这好多个纹理也是和那网格一样。这好多个纹理也许是透明的,使得它们相互重叠。如果玩家水平移动,便可以发现它们是立体的!?所在空间是深的!它们就像生活中的三维立体变幻卡!如果耐心看,便可以发现它们的颜色有亮有暗,有蓝有紫有绿,并且网格的下面有杂点,不是纯黑!这是怎么回事?    哼哼!背景放一边,一会再看你。开动脑筋,用一张背景为透明、有白色的P字母的图像替换end_。进入游戏,又是一片新景象!(展示景象)    可以发现,渲染将纹理淡化并改变其原色,(可能用的是glBlendFunc的自己的颜色减去自己颜色的alpha值)好神奇!并且末地传送门方块的渲染有底,但这也只是猜测……    我们又不妨给这末地传送门内的事物进行命名呢。我先来!底部,背景,层。    首先说底部。底部在背景之上,位于第二位。底部就是小P们所处的平面,该平面上有无数个小纹理拼接在一起。可以发现,小P们与方块不平行。摁F3,用tp指令,通过不断实践和分析数据,我又发现——底部不会移动,走向为160,即北偏西20(看F3界面的facing)。    底部上的纹理们,像放在地上的方块一样,近大远小。若玩家的相机在竖直方向上向上移动,那么底部会“放大”,使得它看起来没大变化,若向下则“缩小”;但是,向上飞时,底部确切看起来变小了。若玩家相机在水平方向上移动,那么底部不变大小,玩家与底部相对运动,底部不动。    接着说层。层在底部之上,位于第一位。层内有很多个平面,相互平行,都在一个空间内(我也只好这么说)。一把氢气一把火,我找到了7层,我猜通过分析代码可以很好确定到底有几层。    层内的纹理们也很奇怪。接下来这段的内容,是我的猜测呢。应该是由于立体渲染,所以上面纹理大,下面小。应该是由于渲染,所以从上往下纹理由半透明到更半透明(都知道半透明颜色可以叠加吧),且纹理中的白色可被改变为蓝色、青色、紫色、冬青绿……每个平面上的一张纹理很大,但不能与底部的一张纹理相比较,应与1m³的石头比较大小——由于纹理中1像素正常对应游戏中1像素,所以最顶层的一张纹理在游戏中的大小相当于16*16方块大小。    层内的纹理们都会运动。不同平面的纹理的速度相差不大(可能是相同的),运动都有固定的方向,即使玩家摁ESC,也不会停下。对于最顶层的平面内的纹理,它非常的正,不歪门邪道,朝向是整南,运动方向是正南。对于其他平面,从上往下,似乎是——一个平面中的纹理们按固定方向运动,朝向也是这个方向,而这个平面的下一个平面,在这个平面的基础上,将纹理的固定方向旋转一个角度,使不同平面的纹理们运动方向不同,同理。总之,层内的纹理们都会移动,至于平面数是否是无限个,以及相邻的两个平面间距为多少,我不知道,看代码试试呢?    然后说背景。哼哼,依然需要开动脑筋!想一想,末地传送门方块是用来传送到末地的,所以呢,应该将末地天空显示到末地传送门方块上。我们不妨将末地天空纹理透明。在jar中可以找到end_,该纹理的颜色主要是紫色,然而刚才并没有看到有大片紫色,这是怎么回事?哼,赶紧把末地天空刷透明!进入游戏,可以发现——层变得更加透明,底部也更难看到,这表明我们的猜测是对的。我们又不妨用P字母替换末地天空的纹理?不错,末地传送门方块的秘密正在被我们挖掘!    背景,在底部之下,位于第三层,是一个平面。它用的渲染方式和底部差不多。背景上用的是末地天空纹理,纹理朝向为正北,并且变暗了,也许没有像底部和层所有的染色行为。玩家向上飞时,背景几乎看起来没变化,且一个纹理还能比底部的一个纹理都大。这是notch的阴谋!    最后说说纹理中的颜色与渲染的关系。以下为我的理解。对于透明部分,渲染不搭理,即显示透明。对于不透明部分、半透明部分,渲染会将它们淡化并染色(淡化很强)。对于淡化,可能与改色是同一个原理,例如,将末地天空纹理刷透明,在游戏中可看到半透明的层,显现璀璨星空;如果末地传送门纹理被刷成纯黑,那么它会被渲染为透明。另外,由于颜色叠加,所以会出现一些现象呢,比如较透明的白色纹理在游戏中显示的和纯白色纹理在游戏中显示的一样……    呼呣呼呣,notch大大的创作力很强呢,也巧妙运用纹理,让末地传送门方块的秘密穿上星空,等待大家的到来,等待大家欣赏星空……    关于末地传送门方块的渲染的第一期视频就到这里结束了呢,辛苦大家了!!!最后,橙贰送上几句话:“亲身去实践最棒了!并且,要是有人做了相关视频,秋晔会激动很久!”    

关键词:

上一篇:双萃的正确使用方法 娇韵诗双萃精华使用步骤
下一篇:最后一页
热门推荐