去年在VS2013环境编译过一次,重装系统后换了VS2017,正好刚编译完Godot3.0.2,顺手把Blender也编译了吧。

官方Windows下编译指南

https://wiki.blender.org/index.php/Dev:Doc/Building_Blender/Windows

所需工具

Git for Windows

TortoiseSvn

CMake

首先用Git Clone Blender的源码,可能需要梯子工具,反正我用了,因为最近Clone Gayhub有第三方依赖库引用,不用梯子好像都失败了,我也不知道blender这个到底用不用,为了减少麻烦,直接用吧

git clone git://git.blender.org/blender.git
cd blender
git submodule update --init --recursive
git submodule foreach git checkout master
git submodule foreach git pull --rebase origin master

  

源码Clone完大概占678MB

Clone完blender源码,最好马上打包一份,以防以后没梯子时想用不好搞,毕竟体积不算小了,下载挺花时间的。

总之对我这种N线小破城市来说,速度的确不怎么友好,大城市的朋友请无视。

然后SVN下载预编译的第三方库文件,无需梯子

svn checkout https://svn.blender.org/svnroot/bf-blender/trunk/lib/win64_vc14 lib/win64_vc14

实际上装完TortoiseSvn,直接有右键,选SVN Checkout
写上路径就行了,要注意的一点是目录

blender

lib

要同级目录

所以,我直接在blender目录同级新建lib,再建立win64_vc14

变成

lib/win64_vc14

然后直接图形界面下载

https://svn.blender.org/svnroot/bf-blender/trunk/lib/win64_vc14

就行了

完成后大概有6.66GB,不确定是不是编译完之前的,总之大概4-6G的样子,只要TortoiseSvn中完成就行了

最后命令行再进入blender目录,注意要求cmake在Path环境变量中

make full nobuild 2017

  

之后就会在blender同级目录下生成

build_windows_Full_x64_vc15_Release

的VS2017工程了

打开Blender.sln,Debug下编译,经过慢长的等待

全部成功

F5调试,说找不到python36_d.dll

lib\win64_vc14\python\lib\python36_d.dll

复制一份到

build_windows_Full_x64_vc15_Release\bin\Debug

目录下

再次运行说还少OpenAL什么的,这时想到,应该是还要用到blender资源文件的一些东西,

所以直接就去下载一份Latest Builds

https://builder.blender.org/download/

写本文时,我用的是

Official New Compiler

blender-2.79-5389964-win64-vc14.zip

解压后,把所有dll和2.79资源目录一起复制到

build_windows_Full_x64_vc15_Release\bin\Debug

再次F5成功了

然后在blender项目源码里,creator.c的

int main函数上下断点,F5再跑,成功断下,F10步过,等操作,F5继续运行,都OK。

2018.05.05补张代码结构图

https://www.blender.org/bf/codelayout.jpg

Win7 VS2017编译Blender2.79的更多相关文章

  1. Win7 VS2017编译Audacity2.1.3

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

  2. Win7 VS2017编译PBR渲染引擎google filament

    按照官方说明 https://github.com/google/filament 前置工具包 Windows 10 SDKVisual Studio 2017Clang 6Python 3.7Git ...

  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. windows 平台使用 VS2017 编译openssl源码

    windows 平台使用 VS2017 编译openssl源码 1)依赖安装 安装 perl 脚本解释器 下载 http://libevent.net/download 安装 nasm 汇编器 C:\ ...

  7. 32位win7+vs2008编译mysql 5.6.22源码并安装

    以下这部分安装说明是来自http://www.2cto.com/database/201407/316681.html的win7+vs2010源码编译mysql,文章最后会说明用vs2008编译遇见的 ...

  8. windows 平台使用 VS2017 编译 libevent 源码

    一 依赖库编译 先要将其依赖的库编译好,其中openssl需要编译到libevent中,编译成libevent_openssl.lib库,zlib在新版本中只有示例用到. 1)windows 平台使用 ...

  9. VS2017 编译 Visual Leak Detector + VLD 使用示例

    起因 一个Qt5+VS2017的工程,需要进行串口操作,在自动时发现一段时间软件崩溃了,没有保存log,在 debug 的时候发现每运行一次应用占据的内存就多一点,后来意识到是内存泄漏了.这个真是头疼 ...

随机推荐

  1. 算法之Python实现 - 000

    Python的火热已极,几乎人人在学Python,为了节约时间,也为了实现Python的代码量,计划从今天开始,将<算法与数据结构题目最优解>一书中的代码全部用Python实现.

  2. linux shell数据重定向(输入重定向与输出重定向)详细分析

    linux shell下常用输入输出操作符是: 1. 标准输入 (stdin) :代码为 0 ,使用 < 或 << : /dev/stdin -> /proc/self/fd/ ...

  3. Windows7下安装、部署Weblogic和发布war项目

    安装 1 从官方下载安装包 链接 2 下载之后,放到 Java8\jdk1.8.0\bin目录下 3 打开cmd,输入 java -jar . 4 5 6 下面是我自定义的目录, 7 8 9 10 1 ...

  4. About Feature Scaling and Normalization

    在进行数据处理之前,一定要想一想,你的算法是用来做什么,这样才能选择如何对数据进行预处理. 参考网站: http://sebastianraschka.com/Articles/2014_about_ ...

  5. Opencv-Python学习笔记(二)

    2. 使用OpenCV3处理图像 2.1 不同色彩空间的转换 OpenCV中有数百种关于在不同色彩空间之间转换的方法. 三种常用色彩空间:灰度.BGR.HSV(Hue色调,Saturation饱和度, ...

  6. python相关注册登录方式

    1.使用django自带功能实现登录/退出登录 使用django自带登录功能,前提生成用户(用户注册)使用的是django自带的user,或称models中用户表继承于django自带的user 1. ...

  7. python note 09 初识函数

    1.函数 def my_len(): #自定义函数(相当于len) i = 0 for k in s: i += 1 print(i) print(my_len()) #输出None,因为没有返回值 ...

  8. layui---十分适用于PC端后台的框架

    1.关闭当前页面: top.$(".layui-tab-title").find("li.layui-this>i").click(); 2.调用指定ID ...

  9. 【深度好文】多线程之WaitHandle-->派生EventWaitHandle事件构造-》AutoResetEvent、ManualResetEvent

    AutoResetEvent/ManualResetEvent 都是继承自 EventWaitHandle ,EventWaitHandle继承自WaitHandle. 在讨论这个问题之前,我们先了解 ...

  10. Unity3D-RayMarch-几何图元0

    效果图: 将下面的shader代码对应的Material拖给一个面片,即可看到效果. shader代码: // Upgrade NOTE: replaced '_Object2World' with ...