前言

当初在选择自己项目的美术风格时,由于自己的美术基础实在是太差,所以选择了体素风格来构建(其实还是MagicaVoxel的建模操作很容易上手),但是将自己千辛万苦做好的模型导入至项目中时,出现了这样或那样的问题,难受的心情如潮涌。在各大搜索引擎搜索无果,以及在“*乎”发问直到现在都没人回答的情况下,决定自己动手丰衣足食(老一辈的智慧还是很有前瞻性的)。也为了各位志同道合的小伙伴们,特写下这个“MagicaVoxel import to UE4 101”。

正文(博客园貌似不支持markdown分割线语法(lll¬ω¬))

在导入模型的时候首先遇到的问题就是导入后再进行构建光照会出现如下图所示的情况

阴影生成都很成功,但是模型是黑的,在官方文档以及各路搜索均查了一遍,得出的一个结论是:UE4对只含有一套UV贴图的模型不太友好,这类模型放上去都会这样。这之后在许多地方尝试过,比如用UE4自带的UV编辑器或者更改UV通道,均告失败,在我以为必须要使用3DSMax时(甚至已经打开了B站的3DSMax教程),我又在油管上搜索了一下,幸运的是在评论中就有人遇见了同样的问题,UP给的解决方案是将导入后的模型的光照类型由静态更改为可移动物体,如下图所示(不过我选的是固定)

后来经过尝试,其实将类型更改为固定也可以解决问题。最终在场景中的表现如下:
与我自己想要的效果一致,事后又在官方文档查询了一下关于静态光照,固定光照,以及可移动物体光照之间的区别:

静态光照

其光照渲染数据几乎完全是依赖物体自带的UV贴图,其中引擎参与的实时渲染部分不多(甚至没有),渲染完成后不能更改物体的位置,大小,旋转参数以及光源的强度,颜色,位置。个人理解为与现在游戏开发中常用的“预渲染”差不多,比如PSV上的《高达破坏者3》、《杀戮地带》等(还有个极其写真的国际象棋游戏,忘了叫啥了)都运用的是预渲染处理。不过预渲染是完全将场景中的阴影和光影效果(比如少量光线的反射和折射)“印”在相应的贴图上(大白话:其实就是将VRay或者其他渲染组件渲染的结果打包成贴图一类的)。一般这类技术多用在移动设备上。

固定光照

与静态光照最大的不同是,光源的属性可以改变,一般是场景中以场景物件存在的物体所使用的,多用在主机与PC游戏上。

动态光照(又名可移动物体光照)

这种光照计算方法占用的计算资源是固定光照的20倍(这个玄学的倍数是Epic官方给出的,我也很迷(笑)),多用于可移动NPC以及玩家操纵的对象。其中所用到的光照算法最多,不过即使这样,也并不是模拟出了最真实的光照效果(现在才发现老黄的实时光线追踪是真的强,能省掉不少计算资源,但为什么实时光追却很吃配置?)

本篇结语

看来在本人这方面的欠缺还很多,这会作为一个系列长期更新下去,就像UE4 C++系列一样,多谢各位的阅读,如果有什么建议或者为了指出文中的错误,非常欢迎在评论区留言。

如何将MagicaVoxel模型导入UE4中(1)的更多相关文章

  1. 如何将MagicaVoxel模型导入UE4中(2)

    前言 当可以把MagicaVoxel的静态模型导入到UE4后,我又开始不满足了.默认第三人称蓝图的"汽车碰撞人偶(雾)"与场景中的体素画风格格不入,于是,我便想着用自己建造的体素画 ...

  2. 不可能的工作:在FBX模型导入脚本中生成模型的预置体

    #if UNITY_EDITOR using System.Collections; using System.Collections.Generic; using System.IO; using ...

  3. 3dsMax模型转UE4

    转自:http://blog.csdn.net/qq_24835213/article/details/68063344 一.模型设置: 1.将Vary材质转成标准材质 2.将模型减面 3.加一套UV ...

  4. Unity3d中模型导入轴向不对的解决方法

    在unity3d中导入模型,经常会遇到模型的轴向与unity中默认的轴向不符合的情况. 网上有很多解决办法都是说在3dmax中导出模型时修改模型的轴向,那么我接下来讲的就是如何在unity里面修改模型 ...

  5. 3D max模型导入unity 3D中注意事项

    一.单位,比例统一   在建模型前先设置好单位,在同一场景中会用到的模型的单位设置必须一样,模型与模型之间的比例要正确,和程序的导入单位一致,即便到程序需要缩放也可以统一调整缩放比例.统一单位为米. ...

  6. DL4J中文文档/Keras模型导入/函数模型

    导入Keras函数模型 假设使用Keras的函数API开始定义一个简单的MLP: from keras.models import Model from keras.layers import Den ...

  7. 【自制插件】将MMD4Mecanim转换的MMD模型导入maya

    这个已经废弃了_(:зゝ∠)_,另外做了升级版: http://www.cnblogs.com/marisa/p/5174150.html ============================== ...

  8. UE4 中Struct Emum 类型的定义方式 笔记

    UE4 基础,但是不经常用总是忘记,做个笔记加深记忆: 图方便就随便贴一个项目中的STRUCT和 Enum 的.h 文件 Note:虽然USTRUCT可以定义函数,但是不能加UFUNCTION 标签喔 ...

  9. UE4中使用数据表(Data Table)

    本文依据官方文档数据驱动游戏性元素整理而来. 做过游戏的应该都清楚,如果游戏稍微有点规模,那么使用数据驱动来做游戏一般是必不可少的一步,一般也就是策划通过本表的方式来解决.下面我们来简单说一下UE4中 ...

随机推荐

  1. 基于C# 调用百度AI 人脸识别

    一.设置 登录百度云控制台,添加应用-添加人脸识别,查找,对比等. 记住API Key和Secret Key 二.创建Demo程序 1.使用Nuget安装 Baidu.AI 和 Newtonsoft. ...

  2. PyCharm如何导入python项目,并配置虚拟环境

    Pycharm导入python项目 进入PyCharm后,点击File→Open,然后在弹窗中选择需要导入项目的文件夹: 打开了python项目后,需要配置该项目对应的python才可以正常运行: 配 ...

  3. 初级模拟电路:3-8 BJT数据规格书(直流部分)

    回到目录 本小节我们以2N4123通用型BJT硅基晶体管为例,来介绍如何阅读BJT的数据规格书,点此链接可以阅读和下载2N4123的数据规格书. 1. 总体性能 打开datasheet后,首先看标题: ...

  4. Paper慢慢读 - AB实验人群定向 Learning Triggers for Heterogeneous Treatment Effects

    这篇论文是在 Recursive Partitioning for Heterogeneous Casual Effects 的基础上加入了两个新元素: Trigger:对不同群体的treatment ...

  5. WINDOWS代理服务器搭建 - Apache httpd

    1.检查电脑系统类型 检查电脑版本是为 32位操作系统 还是 64位操作系统 2.下载安装Apache Httpd 下载地址:https://www.apachehaus.com/cgi-bin/do ...

  6. 04. Go 语言流程控制

    Go 语言流程控制 流程控制是每种编程语言控制逻辑走向和执行次序的重要部分,流程控制可以说是一门语言的"经脉". Go 语言的常用流程控制有 if 和 for,而 switch 和 ...

  7. R语言-记号体系

    安装xlsx包 #装之前先装jdk,配置环境变量 install.packages("xlsx") 代表安装成功 必须先加载包然后再使用包library() $提取符号 当一个函数 ...

  8. Codeforces Round #594 (Div. 2) B. Grow The Tree 水题

    B. Grow The Tree Gardener Alexey teaches competitive programming to high school students. To congrat ...

  9. 第02组 Beta版本演示

    目录 1. 博客链接及组员信息(2分) 2. 贡献比例(3分) 3. GitHub 项目链接(1分) 4. 博客汇总(2分) 5. 燃尽图(3分) 6. 原计划.达成情况及原因分析(6分) 7. Be ...

  10. Global AI Bootcamp 2019 宁波站活动总结

    2019年12月14日,由微软MVP技术社区发起的Global AI Bootcamp 2019盛会在全球60多个国家130个城市点燃.在大中华区,本次活动由全国众多Azure专家及微软MVP技术社区 ...