源  起

  Unreal Engine 4 是全球最先进的Realtime Illumination & Physical 引擎;

  长期以来,UE4都只有Windows版和Mac版,今年终于向Linux开放,但是需要开发者自己动手编译C++源代码。。。好吧,正好练一下在Ubuntu系统中编译C++源代码;

  看来EP是认准了Linux系统的用户都是极客~ Ubuntu是最受欢迎的Linux系统,下面是我在Ubuntu中编译UE4的全过程:

  1、首先进入GitHub

  没错,EP已经把UE4的源代码托管到了传说中的GitHub上,地址:https://github.com/EpicGames,从GitHub获取UE4的源代码压缩包并提取出文件夹;

  2、获取最新存档

  Ctrl+Alt+T 打开终端,进入源码文件夹根目录,输入 ./Setup.sh ,现在开始从GitHub获取最新源代码的存档,并自动构建第三方库,请确保你的硬盘或分区有10G以上的空间,否则获取过程会出现failue的红色提示;

  获取并构建成功后,会出现如下提示:

  如果最后没出现”********** SUCCESS ****************“,则构建可能没有成功,请重复上一步;

If you don't see SUCCESS message in the end, then building did not finish properly.
In that case, take a look into /home/jack/Download/Unreal4/UnrealEngine-release/Engine/Build/BatchFiles/Linux/BuildThirdParty.log for details.

You run Ubuntu or its fork. All dependencies have been already prebuilt.

********** SUCCESS ****************

  3、生成data和index

  构建成功后,在终端输入 ./GenerateProjectFiles.sh ,这将生成Project所需的data和index,生成成功如下所示:

  4、编译测试

  接下来在终端输入 make SlateViewer,编译了一个SlateViewer,大约耗时259秒;

  这一步是可选的,仅仅测试生成一个app,你可以选择跳过,稍后在编译好的Editor里进行也可以。

  5、最关键的一步来了,编译Editor~

  在终端输入:make UE4Editor UE4Game UnrealPak CrashReportClient ShaderCompileWorker UnrealLightmass ,然后回车;

  这段命令是顺序编译五个模块,其实我们只需要UE4Editor就可以了,但是其他模块官方既然都提供了那就一起编译出来用吧;

  不过要确保你的硬盘上还有10G以上的空间哦,编译UE4真的很耗空间,目前生成的文件前后加起来快10个G了。。。

  好了,喝杯水去,一会儿回来鉴证奇迹~

  对了,编译期间最好不要运行其他软件;

  6、编译完成!

  显示耗时1689秒,速度还行哈,HP Z820 workstation性能果然强悍,据说有人编译了一个多小时。。。感谢HP Z820;

  编译完成后如果出现failue就是编译不成功,此时要重复上一步直到编译完成;

  我这边编译完成后,UE4文件夹的总体积已经变成了18G!这样的体积,在CG软件中前无来者;

  所以编译前一定要保证硬盘空间足够,否则也会导致编译失败哦;

  接下来就可以运行Linux版的UE4了~ 是不是有点小激动呢~

  7、启动UE4

  在终端输入: cd Engine/Binaries/Linux && ./UE4Editor  ,回车;

  启动~ 第一次启动会构建material\light等等,所以比较慢,大概30秒后,首次启动完成,然后发现界面居然是中文~

  用惯了英文的Maya/Max/Houdini/Naiad/Eclipse/Android Studio,突然来个中文界面还真有点不适应。。。

  关键如果是全中文那也可以,结果一半中文一半英文,有的地方翻译得还不恰当,于是我把界面改了英文;

  8、建立一个工程:

  建立工程之前,请确保硬盘还有至少2G的空间,因为UE4的一个工程会占用1G左右的空间。。。

  工程建立完成后,会听到显卡的风扇突然开始呼呼的响,看来UE4把显卡的GPU性能运用到了极致~

  9、添加文件路径到$PATH

  现在每次打开UE4都要进入很深的目录然后输入 ./UE4Editor 才能运行UE4,按照下面的方法,就可以在任意目录下输入 UE4Editor 来运行UE4了~

  在终端输入:

  $ sudo gedit ~/.profile

  在此文件末尾添加类似下面的语句,把your path1改成你要添加的路径就可以了,如果添加两个路径,中间用冒号隔开即可,注意是冒号不是分号;

  export PATH=”$PATH:your path1:your path2 ...”

  修改完成后 Ctrl+S 保存,然后注销再登录就可以生效了~

  10、释放硬盘空间

  如果硬盘空间不够,可以先把Engine文件夹下的Intermediate和Source文件夹移到其他盘,可以腾出大约10G的空间,不会影响UE4的启动和运行;

  新建工程

  好建一个Blank空白工程;

  但即使是空白,场景中也会有两张椅子和一张桌子,呵呵,多复制几把椅子,实时光影,效果很棒;

  尤其是桌上那个玻璃的实时折射效果很赞,不过需要手动改一下bluePrint,默认是没有这么好看的;

  玻璃材质的 BluePrint节点如下所示:

  需要修改Specular、Roughness、Refraction的相关参数;

  这个BluePrint节点编辑器是不是看起来很眼熟?没错,看起来很像Houdini的VEX节点

  玻璃节点调整之后的折射效果;

  默认的玻璃效果像一张平面的薄膜,没有任何折射,现在好多了~

  椅子扶手,从磨砂改为不锈钢~

  这跟在Maya中修改Shader是完全不一样的感觉,随时就能看到效果,实时更新~

  只是显卡的风扇一直满速呼呼在转。。。辛苦显卡了,UE4完全是基于GPU渲染的,请确保你的显卡支持GPU;

  GPU的运算速度远远高于CPU,但是对硬件的要求也很高;

  

  地面是特意用两种Material做个对照,实时Displacement,凹凸部分对光照都有准确而实时的高光体现,效果很赞;

  椅子金属的高光部分可以实时反射光晕效果~

      

  好,Ubuntu下编译 Linux版的UE 圆满完成~

  编译完成总共占用硬盘19.7G,是我用过体积最大的CG软件~ 不过实时光影的效果的确很棒;

  编译前,我还想着把编译好的文件上传网盘共享,现在看这体积。。。想起网盘上传都限速,10个G不知要传多久,终于知道EP不发布Linux版的原因了~

  授人以鱼不如授人以渔,感兴趣的朋友可以按照我写的方法自己尝试编译一下,也许会有意想不到的收获哦。

Ubuntu 15.04 编译UE4 for Linux版的更多相关文章

  1. Ubuntu 15.04 clang++ 3.6 编译boost 1.59/1.55

    Ubuntu 15.04已经可以直接通过apt-get insall 安装clang 3.6, 并且预装的gcc版本是4.9.2.这些安装过程在这里介绍. 首先下载boost源码 wget -O bo ...

  2. 在 Ubuntu 15.04 中使用 ubuntu-make、Eclipse 4.4、Java 8 以及 WTP

    Ubuntu 今天发布新版本了 其实昨天(2015-04-23)我就看到了 Ubuntu 发布新版本的新闻,下班后回家的第一件事就是访问 Ubuntu 的官网,很可惜,没有提供下载.今天(2015-0 ...

  3. ubuntu 15.04怎么安装QQ

    ubuntu 15.04怎么安装QQ | 浏览:468 | 更新:2015-07-21 10:20 1 2 3 4 5 6 7 分步阅读 新装的ubuntu不能没有QQ,我们需要安装QQ来进行及时交流 ...

  4. Caffe + Ubuntu 15.04 + CUDA 7.0 安装以及配置

    作为小码农的我,昨天就在装这个东东了,主要参考第一篇博文,但是过程发现很多问题,经过反反复复,千锤百炼,终于柳暗花明,我把这个caffe给搞定了,是故,我发布出来,后之来者,欲将有感于斯文~ 本分分为 ...

  5. Ubuntu 15.04 双击运行 *.sh、*.py文件

    源 起 之前一直在Windows下用AndoridStudio,今天试了一下在Linux系统Ubuntu 15.04中配置Android Studio: 过程和Windws下差不多,但是最后没有生成桌 ...

  6. Ubuntu 15.04 安装配置 Qt + SQLite3

    序 最近需要在Ubuntu下使用Qt开发项目,选择简单小巧的SQLite数据库,现将安装配置以及简单操作记录如下,以便日后查阅. 安装Qt CMake和Qt Creator是Linux下开发C++程序 ...

  7. 在ubuntu 15.04下安装VMware Tools

    提出问题:在Ubuntu 15. 04版本上,不能实现剪贴板的共享 解决方法:发现没有装VMware Tools 安装VMware Tools步骤 1. 点击菜单栏,虚拟机 → 安装VMware工具 ...

  8. 如何在 Ubuntu 15.04 系统中安装 Logwatch

    大家好,今天我们会讲述在 Ubuntu 15.04 操作系统上如何安装 Logwatch 软件,它也可以在各种 Linux 系统和类 Unix 系统上安装.Logwatch 是一款可定制的日志分析和日 ...

  9. Ubuntu 15.04下MySQL 5.6.25不支持中文解决办法

    Ubuntu 15.04下MySQL 5.6.25不支持中文解决办法,apt-get install 安装的,不是源码包安装的mysql. 1 修改mysql的配置文件 /etc/mysql/conf ...

随机推荐

  1. 基于范围的for语句

    一.关键点 1. 作用过程 遍历给定序列中的每个元素并对序列中的每个值执行某种操作. 2. 若要修改序列中元素的值,需将类型定义为引用 string s("Hello World!!!&qu ...

  2. Comparison of Android versions(strcmp的应用)

    Description As an Android developer, itˇs really not easy to figure out a newer version of two kerne ...

  3. Crawling is going on - Beta版本测试报告

    [Crawling is going on - Beta版本] 测试报告 文件状态: [] 草稿 [√] 正式发布 [] 正在修改 报告编号: 当前版本: 2.0.2 编写人: 周萱.刘昊岩.居玉皓 ...

  4. 常用算法Java实现之选择排序

    选择排序算法在每一步中选取最小值来重新排序,通过选择和交换来实现排序. 具体流程如下: 1.首先从原数组中选择最小的1个数据,将其置于第一个位置. 2.然后从剩下的数据中再选择其中最小的一个数据,并将 ...

  5. C++与C#数据类型对应关系总结

    https://blog.csdn.net/u010159842/article/details/51720458 添加: 1.c++参数含有&,c#也需要用ref关键字. 2.在c++中声明 ...

  6. tabales1.10版参数详解

    //@translator codepiano //@blog codepiano //@email codepiano.li@gmail.com //尝试着翻译了一下,难免有错误的地方,欢迎发邮件告 ...

  7. seaj和requirejs模块化的简单案例

    如今,webpack.gulp等构件工具流行,有人说seajs.requirejs等纯前端的模块化工具已经被淘汰了,我不这么认为,毕竟纯前端领域想要实现模块化就官方来讲,还是有一段路要走的.也因此纯前 ...

  8. SQL Server的全局变量

    SQL Service中的全部变量不需要用户参与定义,在任何程序均可随时调用.并且全部变量是以@@开头 全局变量名称 描述 @@CONNECTIONS 返回 SQL Server 自上次启动以来尝试的 ...

  9. 【bzoj1093】[ZJOI2007]最大半连通子图 Tarjan+拓扑排序+dp

    题目描述 一个有向图G=(V,E)称为半连通的(Semi-Connected),如果满足:对于u,v∈V,满足u→v或v→u,即对于图中任意两点u,v,存在一条u到v的有向路径或者从v到u的有向路径. ...

  10. SPOJ - PHRASES

    题意: 给n个字符串,求出最长的子串.使得子串在每个字符串中不重叠地至少出现2次.输出子串长度. 题解: 用后缀数组求出height数组,之后二分答案.check时对height数组进行分组,并维护每 ...