【learnopengl】Assimp构建与编译

文章目录

  • 【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.rhkb.cn/news/118412.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Navicat介绍及下载安装教程

Navicat是一个广泛使用的数据库管理工具,可用于管理多种数据库系统,如MySQL、MariaDB、Oracle等。它提供了丰富的功能,使得管理数据库变得更加容易和高效。安装Navicat十分简单,只需下载安装包并按照向导进行操作即可。在安装完成…

RealVNC配置自定义分辨率(AlmaLinux 8)

RealVNC 配置自定义分辨率(AlmaLinux8) 参考RealVNC官网 how to set up resolution https://help.realvnc.com/hc/en-us/articles/360016058212-How-do-I-adjust-the-screen-resolution-of-a-virtual-desktop-under-Linux-#standard-dummy-driver-0-2 …

【ROS 04】ROS运行管理

ROS是多进程(节点)的分布式框架,一个完整的ROS系统实现: 可能包含多台主机; 每台主机上又有多个工作空间(workspace); 每个的工作空间中又包含多个功能包(package); 每个功能包又包含多个节点(Node),不同的…

UE4/5在蓝图细节面板中添加函数按钮(蓝图与c++的方法)

目录 在细节面板中添加按钮使用函数 蓝图的方法 事件 函数 效果 uec的方法 效果 在细节面板中添加按钮使用函数 很多时候,我们可以看到一些插件的actor类中,点击一下之后就可以实现如矩阵一样的效果。 实际上是因为其使用了函数来修改了蓝图中的数…

ROS-4.创建发布者和订阅者

ros中非长连接的通信使用topic的方式,publisher向topic发布消息,subscriber订阅topic消息,对于非应答模式的通信适合使用该模式,如下图 接下来我们实现一个发布者和订阅者 1. 创建功能包 在实现订阅者和发布者的时候我们需要先…

wap2app 隐藏系统状态栏

一、首先创建wap2App项目 1、文件》新建》项目 2、选择Wap2App项目:输入项目名称、网站首页地址(如果是本地localhost的话改为你的IP地址即可),点击创建 二、创建完wap2App项目后 隐藏系统状态栏只要修改1、2选项即可 1、找到根…

Java 大厂面试 —— 常见集合篇 List HashMap 红黑树

23Java面试专题 八股文面试全套真题(含大厂高频面试真题)多线程_软工菜鸡的博客-CSDN博客 常见集合篇-01-集合面试题-课程介绍 02-算法复杂度分析 2 List相关面试题 2.1 数组 2.1.1 数组概述 数组(Array)是一种用连续的内存空…

Vue实现Antv/X6中的示例,以及一些er图开发场景

通过Vue实现Antv X6中的示例,以及一些开发场景,代码已经丢到仓库里了。 lwstudy/antv-x6-vue-demo: Vue实现Antv X6中的示例,以及一些开发场景 (github.com)learn-antv-x6: antv/X6学习 (gitee.com) 介绍 使用脚手架(自动生成接…

腾讯云国际代充-GPU服务器安装驱动教程NVIDIA Tesla

腾讯云国际站GPU 云服务器是基于 GPU 的快速、稳定、弹性的计算服务,主要应用于深度学习训练/推理、图形图像处理以及科学计算等场景。 GPU 云服务器提供和标准腾讯云国际 CVM 云服务器一致的方便快捷的管理方式。 GPU 云服务器通过其强大的快速处理海量数据的计算性…

小兔鲜商02

npm i vueuse/core -fvue插件使用: 许多公用的全局组件,,可以通过插件注册进去,就不用一个一个导入组件,, import XtxSkeleton from /components/library/xtx-skeletonexport default {install (app) {// …

IDM2024Internet Download Manager下载器最新版本

IDM(Internet Download Manager)下载器主窗口的左侧是下载类别的分类,提供了分类功能来组织和管理文件。如果不需要它,可以删除“分类”窗口,并且在下载文件时不选择任何分类。 每个下载类别都有一个名称,…

kvm虚拟机开启VNC功能

停止kvm虚拟机 virsh shutdown 虚拟机名称 在kvm虚拟机配置文件里面添加如下内容 <graphics typevnc port-1 autoportyes listen0.0.0.0 keymapen-us passwd123456> 启动kvm虚拟机 virsh start 虚拟机名称 得到虚拟机进程id ps -ef|grep 虚拟机名称 得到虚拟机vnc…

windows环境装MailHog

背景&#xff1a;win10系统&#xff0c;windows 宝塔&#xff0c;laravel 项目&#xff0c;邮件相关需要装一个MailHog 下载地址&#xff1a;https://sourceforge.net/projects/mailhog.mirror/ 直接下载&#xff0c;下载后双击运行就可以了&#xff0c;系统可能提示”不信任“…

三维点云转换为二维图像

文章目录 前言原理代码总结与反思实验结果展示 前言 目的&#xff1a;将三维点云转换为二维图像 作用&#xff1a; a.给点云赋予彩色信息&#xff0c;增强点云所表达物体或对象的辨识度&#xff1b; b.将三维点云中绘制的目标物体通过映射关系绘制到二维图像中&#xff0c;这个…

PriorityQueue介绍

PriorityQueue堆的应用找前k个最小数据&#xff08;TOPK问题&#xff09;求k个最小的数优化堆排序 PriorityQueue Java集合框架中提供了PriorityQueue和PriorityBlockingQueue&#xff08;优先级阻塞队列&#xff09;两种类型的优先级队列&#xff0c;PriorityQueue是线程不安…

Windows7安装SSH客户端的解决方案

大家好,我是爱编程的喵喵。双985硕士毕业,现担任全栈工程师一职,热衷于将数据思维应用到工作与生活中。从事机器学习以及相关的前后端开发工作。曾在阿里云、科大讯飞、CCF等比赛获得多次Top名次。现为CSDN博客专家、人工智能领域优质创作者。喜欢通过博客创作的方式对所学的…

C语言深入理解指针(非常详细)(二)

目录 指针运算指针-整数指针-指针指针的关系运算 野指针野指针成因指针未初始化指针越界访问指针指向的空间释放 如何规避野指针指针初始化注意指针越界指针不使用时就用NULL避免返回局部变量的地址 assert断言指针的使用和传址调用传址调用例子&#xff08;strlen函数的实现&a…

开开心心带你学习MySQL数据库之第三篇上

学校的项目组有必要加入吗? 看你的初心. ~~如果初心是通过这个经历能够提高自己的技术水平 ~~是可以考虑的 ~~如果初心是通过这个经历提高自己找工作的概率 ~~这个是不靠谱的,啥用没有 ~~如果初心是通过这个体验更美好的大学生活 ~~靠谱的 秋招,应届生,找工作是非常容易的!!! …

JavaScript -【第二周】

文章来源于网上收集和自己原创&#xff0c;若侵害到您的权利&#xff0c;请您及时联系并删除~~~ 理解什么是流程控制&#xff0c;知道条件控制的种类并掌握其对应的语法规则&#xff0c;具备利用循环编写简易ATM取款机程序能力 运算符语句综合案例 1. 运算符 算术运算符赋值运…

无涯教程-Android - AutoCompleteTextView函数

AutoCompleteTextView是一个类似于EditText的视图&#xff0c;只是它在用户键入时自动显示补充数据。 AutoCompleteTextView - 属性 以下是与AutoCompleteTextView控件相关的重要属性。您可以查看Android官方文档以获取属性的完整列表以及可以在运行时更改这些属性的相关方法。…