按照官方说明

https://github.com/google/filament

前置工具包

Windows 10 SDK
Visual Studio 2017
Clang 6
Python 3.7
Git 2.16.1 or later
Cmake 3.11 or later

其中VS2017和Win10 SDK应该是装完VS2017就有的,其他Python,Git Windows和CMake也算常用,都装了,Clang要单独安装一下。

http://releases.llvm.org/download.html

写本文时使用的是

http://releases.llvm.org/7.0.1/LLVM-7.0.1-win64.exe

我装到了

D:\Program Files\LLVM

接下来,安装LLVM for VS2017的Toolchain

https://marketplace.visualstudio.com/items?itemName=LLVMExtensions.llvm-toolchain

然后就可以下载filament了

git clone https://github.com/google/filament.git

  

开始菜单中找到

x64 Native Tools Command Prompt for VS 2017

并运行

进入项目比如我的是

E:\PProjects\GitDownloads\filament

e:
cd E:\PProjects\GitDownloads\filament
mkdir msvc_config
cd msvc_config

  

建立msvc_config目录,并进入

然后修改下面的配置,变成你安装的Clang编译器路径,复制粘贴到命令行中运行

cmake ..\ -T"LLVM" -G "Visual Studio 15 2017 Win64" ^
-DCMAKE_CXX_COMPILER:PATH="D:\Program Files\LLVM\bin\clang-cl.exe" ^
-DCMAKE_C_COMPILER:PATH="D:\Program Files\LLVM\bin\clang-cl.exe" ^
-DCMAKE_LINKER:PATH="D:\Program Files\LLVM\bin\lld-link.exe"  

这时就会生成sln工程。

接着可以编译

msbuild  TNT.sln /t:material_sandbox /m /p:configuration=Release

  

编译完后应该没有任何错误,然后运行

samples\Release\material_sandbox.exe --ibl=..\samples\envs\pillars ..\assets\models\monkey\monkey.obj

  

注意路径可能有变化,官方给的是

samples\Release\lightbulb.exe ..\..\assets\models\monkey\monkey.obj

但是我编译完并没有lightbulb.exe,只有material_sandbox.exe

版本不同,自己修改下目录,一般不会变化太多。

看了下,实际上是官方只编译了material_sandbox工程,因为这个工程可以调节参数

========================================

最后是完全PBR,带纹理

msbuild  TNT.sln /t:sample_full_pbr /m /p:configuration=Release

  

然后我们需要修改纹理目录纹理的名字

filament\assets\models\monkey

备份,并且改为如图所示,不改的话程序会提示你找不到对应贴图

也就是纹理名带上目录前缀

修改好后再次运行

samples\Release\sample_full_pbr.exe --ibl=..\samples\envs\pillars --material=..\assets\models\monkey ..\assets\models\monkey\monkey.obj

  

可以看到是带了纹理的PBR,找其他的PBR模型试一下。

Win7 VS2017编译PBR渲染引擎google filament的更多相关文章

  1. Win7 VS2017编译Audacity2.1.3

    最近比较热衷折腾大型开源软件编译,因为在逐渐用开源软件替换盗版软件,除去盗版用着不安全的原因外,主要还是因为开源软件有源码,可以学习研究,另外就是体积小. 像Matlab每次装完都用不上什么功能,体积 ...

  2. Win7 VS2017编译Blender2.79

    去年在VS2013环境编译过一次,重装系统后换了VS2017,正好刚编译完Godot3.0.2,顺手把Blender也编译了吧. 官方Windows下编译指南 https://wiki.blender ...

  3. Win7 VS2017编译bgfx图形API

    官方的编译指南在这个页面 https://bkaradzic.github.io/bgfx/build.html#quick-start 目前的版本编译比较简单,下载3个项目,放于同级目录下 http ...

  4. Win7 VS2017编译magnum及例子

    magnum是一个开源的图形中间件 Lightweight and modular C++11/C++14 graphics middleware for games and data visuali ...

  5. Win7 VS2017编译Godot3.0.2和2.1.4

    千呼万唤屎出来,Godot终于发布3.0版本的源码了,今天是2018年3月17日,自去年接触过后,一直没事就刷刷Gayhub,看看3.0什么时候更新,刷了一年也没结果. 今天上Youtube无意中搜了 ...

  6. 剖析虚幻渲染体系(14)- 延展篇:现代渲染引擎演变史Part 1(萌芽期)

    目录 14.1 本篇概述 14.1.1 游戏引擎简介 14.1.2 游戏引擎模块 14.1.3 游戏引擎列表 14.1.3.1 Unreal Engine 14.1.3.2 Unity 14.1.3. ...

  7. Blink: Chromium的新渲染引擎

    编自http://www.chromium.org/blink 关于blink Google Chrome/Chromium 从创始至今一直使用 WebKit(WebCore) 作为 HTML/CSS ...

  8. 深入解析Flutter下一代渲染引擎Impeller

    作者 魏国梁:字节 Flutter Infra 工程师, Flutter Member,长期专注 Flutter 引擎技术 袁    欣:字节 Flutter Infra 工程师, 长期关注渲染技术发 ...

  9. [比较老的文章]三维渲染引擎 OGRE 与 OSG 的比较综述

    1 .引言随着计算机可视化.虚拟现实技术的飞速发展,人们对实时真实感渲染以及场景复杂度提出了更高的要求.传统的直接使用底层图形接口如OpenGL.DirectX开发图形应用的模式越来越暴露出开发复杂性 ...

随机推荐

  1. supervisord的安装使用

    由于生产环境使用的的tomcat,项目比较重要,所以要做进程守护,本来打算自己写脚本,但是效果不理想,想了下还是用supervisord了 由于很久不用,所以写下来部署步骤 第一:安装,安装的方法有y ...

  2. 2017-11-11 Sa Oct Is it online

    2017-11-11 Sa Oct Is it online 9:07 AM After breakfast I tried connecting to the course selection sy ...

  3. Django SCRF跨站点请求伪造

    使用Django发POSTt请求的时候经常会遇到Forbidden的错误,然后直接了当的方法就是去setting里面吧csrf中间件注释掉,其实csrf是django给我们提供的防护措施. CSRF就 ...

  4. IO分类

    按流向分类: 输入流 读取数据 FileReader Reader 输出流 写入数据 FileWriter Writer 按数据类型分类: 字节流 字节输入流 读取数据 InputStream 字节输 ...

  5. ASP.NET网站不能在VS中调试

    点击VS2010工具栏中绿色的小箭头运行网站没问题,按说运行后,应该处于正在运行状态,这个小箭头会变成灰色.但是没有变化,仍然是绿色的小箭头.所以设置断点根本没有截获.任务栏右下角显示的Develop ...

  6. docker学习-常用命令1

    一.容器管理 1.1 Docker start/stop/restart/rm 命令实例:启动|停止|重启|删除 容器mydb01# docker start|stop|restart|rm mydb ...

  7. tcp,Socket,三次握手和四次挥手的图示

    tcp的图示: Socket的图示: Socket原理图示: “三次握手”图示介绍: 客户端向服务器发送一个SYN J 服务器向客户端响应一个SYN K,并对SYN J进行确认ACK J+1 客户端再 ...

  8. mysql in 子查询 效率慢,对比

    desc SELECT id,detail,groupId from hs_knowledge_point where groupId in ( UNION all ) UNION ALL SELEC ...

  9. scrapy爬取58同城二手房问题与对策

    测试环境: win10,单机爬取,scrapy1.5.0,python3.6.4,mongodb,Robo 3T 其他准备: 代理池:测试环境就没有用搭建的flask抓代理,因为我找到的几个免费网站有 ...

  10. 从零开始学spring cloud(三) -------- Eureka简介

    1.服务发现组件:Eureka Eureka的开源文档介绍地址:https://github.com/Netflix/eureka/wiki/Eureka-at-a-glance What is Eu ...