虚拟现实游戏开发教程 402 Magica Voxel的进阶
在上一节中,我们简单地熟悉了一下Magica Voxel这款软件的一些操作,但是我们怎样在Magica Voxel中做出更好看的模型?怎样将模型导入Unity3D等软件中应用呢?
对于像素模型的设计
好的程序员在写程序之前总会对程序进行大体的设计,好的美工在制作模型之前总会画出设计的线稿。同样,我们进行像素建模的时候也要进行一些设计。
由于Magica Voxel这款软件和像素3D建模的一些特殊性,在设计的时候使用格子本或者点阵本进行设计往往是最好的选择。我在学校的商店里面买到了一个点阵的本子,如果买不到的话可以尝试网购。
上面那张图是我对我的寝室的一个简单的设计,由此,今天我们就是要做一个寝室的模型咯。
使用点阵本子设计的时候,可以很明显地对长宽比进行设计,因此在像素建模的时候可以依据占据的点阵格子确定模型的所占的像素点。
依照设计图画出房间的布局
首先打开MagicaVoxel软件
看见右上方的45 45 45了没有?这三个数字代表着可以绘制的最大范围,由于45太小,所以我们需要依据所建模型进行更改。在设计图中,长和宽分别是23和13,这里分别乘3,因此设计长70宽40高25。更改完之后,点击Tool->Zero清空建模区域。
我们选择Brush->Attach,对房间的轮廓进行建模。
首先画上地板
然后根据设计图划分区域
在做墙的时候,我们先用Brush的Attach模式,一个个点成如下图所示
在B模式的Brush ,选中最上面的一个像素点,拖动即可做出一面墙。
对于窗户或者门的预留空间,我们需要用Brush->Erase去去掉墙中间的空间,同理,选择Erase模式,选中一个像素点,拖动。
进行一些操作之后,大体格局如下
下面就是开始上色,根据你要建的房间和自己的艺术细胞的直觉,使用Paint上色。
同样是Brush选择Paint 然后再左侧的调色窗口选中你心仪的颜色,尽情的上色吧。
在Paint的时候,可以选择Brush的F模式,这样上色就可以对一个面进行上色了,及其方便。其他的模式,依需求自主选择。
简单地Paint完了之后,效果如下
这时,我们需要对现在的模型进行保存。
点击Save按钮
新建一个叫做Model的文件夹,将文件命名为Layout点击保存。
这时,再点击Export按钮
导出到Obj格式
保存到新的文件夹叫objModels里面。
制作桌子
由于步骤都差不多,所以直接放出最终的模型结果。
上色过后
于是,保存,输出OBJ,一鼓作气再做一个板凳,一个房门。
导入到Unity3D中!
首先打开Unity3D,新建一个项目。名叫,PixelLife(我起的名字,你们随便啦)。建项目的时候可以先导入Character包,以便测试用。
打开Unity之后,新建Mesh,Texture,Material三个文件夹。我们再找到刚才导出的OBJ文件。
所有的OBJ文件都躺在那里。
这时,我们只需拖动所有的OBJ到Mesh文件夹,Png到Texture文件夹即可。
将文件OBJ拖进去的时候会自动建立一个Material文件夹,我们将Material文件夹下的东西拖到我们的文件夹里面即可。这时一个对项目管理的好习惯,希望大家会养成。
将Layout拖动到场景的阶层面板中。
这时发现没有贴图和模型过大?等等!会解决的,一个个来。
首先点击在阶层中点击Layout物体。
点击起码的三角形,找到default并点击。
看到Inspector窗口中,他的材质是空的。这时我们找到Albedo,点击前面的圈圈中间有一个点的那个(Unity的官方培训教程里面说这个是恩恩什么,我觉得很形象,就是有点污)。
筛选Layout.png然后选中双击。这时,场景中的物体是不是有颜色了呢?
搭建我们的场景
这时,给地板新建一个Collider,注意,在Layout中尽量不要使用MeshCollider而是在Layout物体中新建一个子物体叫Colliders,对墙壁和地板新建Cube来进行碰撞遮挡。
新建一个Collider的空物体,再在其下新建各个Cube。调整Cube的大小,调整完之后关闭Cube的Mesh Renderer组件。
搭建好所有的碰撞体之后,场景如下
这时,找到FPSController组件,并拖动到场景中,顺带删掉场景中的MainCamera。点击Play按钮,然后你会发现。人好小啊。
这时调整场景到合适。(调整Scale的时候记得XYZ轴的缩放要相等)。经过我的测试之后发现0.25的缩放最为合适。
这时将Table和chair拖进场景自行调整吧!
调整完场景,进行最后的光照烘焙处理。
烘焙完成的场景。
当然,还可以加入ImageEffects进行优化场景。
怎么样~通过这款软件,是不是发现了无限的可能呢。如果再做一些道具的话,这个寝室就栩栩如生了呢。
由于我也是刚用这个软件不久,所以希望和大家能交流一些技巧。遇到大触请千万要教教我!万分感谢。