【learnopengl】Assimp构建与编译

news/2024/11/15 6:09:13/

文章目录

  • 【learnopengl】Assimp构建与编译
    • 1 前言
    • 2 Assimp构建与编译
      • 2.1 下载源码
      • 2.2 CMake构建
      • 2.3 VS2022编译
    • 3 在VS中配置Assimp库
    • 4 验证

【learnopengl】Assimp构建与编译

1 前言

最近在跟着LearnOpenGL这个网站学习OpenGL,这篇文章详细记录一下教程中关于Assimp构建和编译的部分。这部分中文版教程链接:[Assimp - LearnOpenGL CN (learnopengl-cn.github.io)](https://learnopengl-cn.github.io/03 Model Loading/01 Assimp/)。

测试环境:

  • Windows 11
  • VS2022
  • CMake
  • Assimp5.2.5

2 Assimp构建与编译

2.1 下载源码

  • 克隆仓库到本地。

    git clone https://github.com/assimp/assimp.git
    

2.2 CMake构建

  • 在源码目录下新建一个build文件夹。

  • 运行CMake-gui(熟悉cmake命令的小伙伴也可以使用命令行),配置源码文件夹路径和build文件夹路径。

    image-20230903165658832

    接着点击Configure,因为是使用VS2022编译,所以这里要选择对应版本的编译器,配置完成后点击Finish

    image-20230903170052532

    此时,界面中间应该会出现一个变量和值的列表,且底色是红色的,这是正常的。接着再次点击Configure,显示done且不报错,最后点击Generate完成构建,同样显示done且不报错,成功。

2.3 VS2022编译

  • 构建完成后,build文件夹下会生成一个VS的解决方案Assimp.sln,双击打开。如下图所示,点击生成解决方案,开始编译,编译完成未报错即可。

    image-20230903170746685

3 在VS中配置Assimp库

  • assimp/includeassimp/build/include目录下的所有内容拷贝到自己工程的include文件夹中。

  • assimp/contrib整个文件夹拷贝到自己工程的include文件夹中。

  • assimp/build/lib/Debug/assimp-vc143-mtd.lib文件拷贝到自己工程的lib文件夹中。

  • assimp/build/bin/Debug/assimp-vc143-mtd.dll文件拷贝到自己工程文件夹下(项目源码所在文件夹)。

  • 配置项目属性管理器中链接器输入,添加assimp-vc143-mtd.lib

    image-20230903172949716

  • 配置完成!

4 验证

使用LearnOpenGL网站提供的源码:LearnOpenGL/src/3.model_loading/1.model_loading at master · JoeyDeVries/LearnOpenGL (github.com)进行验证。

image-20230903173246453

无报错,验证成功。


http://www.ppmy.cn/news/1084329.html

相关文章

【德哥说库系列】-ASM管理Oracle 19C单实例部署

📢📢📢📣📣📣 哈喽!大家好,我是【IT邦德】,江湖人称jeames007,10余年DBA及大数据工作经验 一位上进心十足的【大数据领域博主】!😜&am…

总结梳理HTTP状态码

前端开发中和后端联调时总会遇到一些状态码的问题,本文用于介绍一些常见的状态码,以及遇到这些状态码应该如何进行排查。 400 Bad Request - 请求无效。 表示客户端发送的请求存在语法错误,服务器无法理解或处理该请求的语法或参数。这通常…

介绍几种使用工具

FileWatch,观测文件变化,源码地址:https://github.com/ThomasMonkman/filewatch nlohmann::json,json封装解析,源码地址:https://github.com/nlohmann/json optionparser,解析选项,源…

简明易懂:Python中的分支与循环

文章目录 前言分支结构if 语句:单一条件判断else语句:提供备选方案elif 语句:多条件判断嵌套的分支结构:复杂条件逻辑 循环结构for循环:遍历序列range()函数与for循环while循环:条件重复循环控制&#xff1…

从Matrix-ResourceCanary看内存快照生成-ForkAnalyseProcessor(2)

不同于LeakCanary,在Matrix中,主要是通过Resource Canary来监控内存泄漏问题的,且监听的泄漏对象只支持Activity,官方说明如下: 结合分析LeakCanary的经验可知,要实现Activity内存泄漏监听,总体上应该要实现两大功能: Activity生命周期监控查找泄漏对象并得到GC Root P…

使用nginx-lua配置统一url自动跳转到hadoop-ha集群的active节点

下载安装nginx所用的依赖 yum -y install gcc zlib zlib-devel pcre-devel openssl openssl-devel下载nginx wget http://nginx.org/download/nginx-1.12.2.tar.gz tar -xvf nginx-1.12.2.tar.gz稍后安装nginx 安装lua语言 yum install readline-develcurl -R -O http://w…

【1921. 消灭怪物的最大数量】

来源:力扣(LeetCode) 描述: 你正在玩一款电子游戏,在游戏中你需要保护城市免受怪物侵袭。给你一个 下标从 0 开始 且长度为 n 的整数数组 dist ,其中 dist[i] 是第 i 个怪物与城市的 初始距离&#xff08…

CentOS下多网卡绑定多IP段时导致只有一个会通的问题解决

CentOS下多网卡绑定多IP段时导致只有一个会通的问题解决 虚拟机配置多个网络地址,结果同时只能有一个ip是通的, 原因:Linux默认开启了反向路由检查导致的,比如说外面访问eth0的网卡,而网关在eth1上,又或者从…