Godot4.1 GDExtension 配置VisualStudio方法梳理以及快捷配置工具

写在最前

  • 本篇教程基于之前教程,并且默认为Windows10,64位,Godot版本4.1.3
  • 如果遇到任何问题,欢迎及时提出,如果配置成功了请点个赞,球球啦。

之前教程

https://blog.csdn.net/qq_31805591/article/details/129526634

https://blog.csdn.net/qq_31805591/article/details/108805392

编译godot-cpp库

  • 在github中的godot-cpp页面下载源代码
  • 在压缩包解压后的根目录中有SContruct,利用scons命令编译,生成的库在bin文件夹中

添加环境变量

  • 在环境变量中添加GODOT_CPP_ENV_PATH,并设置路径为之前压缩包解压的根目录

配置新工程文件操作

  • 配置项目目录,使vs工程可以直接创建在godot的res://src/下
  • 点击生成即可自动生成更新res://bin/ 下的dll

切换vs项目配置名称

  • 打开项目属性页的配置管理器

图 4

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

  • 将默认的Debug与Release改为editor,template_debug, template_release, 其中editor由debug复制而来,剩下两个一一对应。

图 5

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

包含目录包含:

  • 在vs工程的VC++目录中的包含目录包含:
$(GODOT_CPP_ENV_PATH)gen\include
$(GODOT_CPP_ENV_PATH)gdextension
$(GODOT_CPP_ENV_PATH)include

库目录包含:

  • 在vs工程的VC++目录中的库目录包含:
$(GODOT_CPP_ENV_PATH)bin

链接器-输入:

  • 添加一下代码,用于添加对应的lib文件
libgodot-cpp.windows.$(Configuration).x86_64.lib

输出与中间路径

  • 输出路径
$(SolutionDir)..\..\bin
  • 中间路径
IntDir\$(Configuration)\
  • 输出名称
libgdexample.windows.$(Configuration).x86_64

插入基本example&register_type

  • 在官网链接:https://docs.godotengine.org/en/stable/tutorials/scripting/gdextension/gdextension_cpp_example.html 可找到:
    register_types.cpp
    register_types.h
    example.cpp
    example.h
    gdexample.gdextension
  • !!注意!! x.gdextension 的编码格式要求为LF与UTF-8(No Bom),而默认VS对文本文件的编码不是如此,故一定注意需要改编码(通过force utf-8(no bom)插件或者高级保存选项)
  • 将它们的代码复制并创建在你的工程里,一个示例如下(其中可创建.gdignore在中间目录下,放置每次obj都被错误导入):

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

图 6

c++生成-运行库

问题

  • Link2038
  • _ITERATOR_DEBUG_LEVEL 的不匹配项
  • 检测到"RuntimeLibrary"的不匹配项

方法

  • 将项目属性的c/c++下的代码生成中的运行库改为/MT

图 2

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

预处理器

问题

  • 同上

方法

  • 将预处理器定义清空

图 1

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

简化操作

  • 相关文件以上传github, 链接:https://github.com/sclchuck/GDExtension/tree/main

编译脚本

  • 写成.bat, 放入godot-cpp解压缩的根目录路,并运行
scons target=editor
scons target=template_debug
scons target=template_release

环境变量脚本

  • 写成.bat, 放入godot-cpp解压缩的根目录路,并运行
setx GODOT_CPP_ENV_PATH %~dp0

VS工程模板

  • 将配置好的vs工程,导出为模板。
  • 使用时,便可以直接在你的godot项目目录res://src/ 创建你的vs项目

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/151662.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

Java学习day12:static关键字,字符串声明,字符串常量池

声明:该专栏本人重新过一遍java知识点时候的笔记汇总,主要是每天的知识点题解,算是让自己巩固复习,也希望能给初学的朋友们一点帮助,大佬们不喜勿喷(抱拳了老铁!) 往期回顾: Java学习day11&…

错误:CUDA error: device-side assert triggered CUDA kernel errors

对llama扩充中文词表后直接增量预训练,忘记设置--modules_to_save embed_tokens,lm_head,所以导致向量维度不一致,出现下面的错误。 1. 错误 2. 原因 出现这个错误的原因可能是因为维度或标签不一致。可以仔细排查一下。

【k8s集群搭建(二):基于虚拟机的linux的k8s集群搭建_超详细_可视化界面Dashboard安装_记录全过程踩坑记录及解决方法】

在 master 执行 # 根据 在线配置文件 创建资源 kubectl apply -f https://raw.githubusercontent.com/kubernetes/dashboard/v2.3.1/aio/deploy/recommended.yaml设置访问端口 # 修改配置文件 找到 type,将 ClusterIP 改成 NodePort kubectl edit svc kubernetes-…

虾皮之家数据分析插件:知虾数据分析工具提升销量的利器

在当今的电商市场中,虾皮Shopee成为了许多商家的首选平台。然而,随着竞争的加剧,店铺运营变得越来越具有挑战性。如何提升销量,优化标题和图片,合理设置SKU,并准确跟踪店铺活动数据和竞品数据,已…

为什么网安人才缺口那么大,就业率却上不去?

为什么网安相关行业人才缺口还有三百多万,但现在却还有很多程序员找不到工作,难道我们又被所谓大数据骗了吗? 其实啊,造成如此现象的有以下几点原因:首先,教学青黄不接,因为网安属于近几年新开…

SCons

什么是构建工具(系统) 构建工具(software construction tool)是一种软件,它可以**根据一定的规则或指令,将源代码编译成可执行的二进制程序。**这是构建工具最基本也最重要的功能。 实际上构建工具的功能…

03.智慧商城——路由配置

01. 路由配置 - 一级路由 但凡是单个页面,独立展示的,都是一级路由 路由设计: 登录页首页架子 首页 - 二级分类页 - 二级购物车 - 二级我的 - 二级 搜索页搜索列表页商品详情页结算支付页我的订单页 router/index.js 配置一级路由&#x…

基于springboot实现一起来约苗管理系统项目【项目源码】

基于springboot实现一起来约苗平台管理系统演示 Java技术 Java是由Sun公司推出的一门跨平台的面向对象的程序设计语言。因为Java 技术具有卓越的通用性、高效性、健壮的安全性和平台移植性的特点,而且Java是开源的,拥有全世界最大的开发者专业社群&…

Hack_Kid

Hack_Kid 靶机地址:https://download.vulnhub.com/hackerkid/Hacker_Kid-v1.0.1.ova 一、主机发现 发现靶机IP为192.168.80.135 二、端口扫描 发现靶机开启了80、53、9999端口 三、信息收集 1.访问80端口 2.访问9999端口 根据靶场作者的提示,不…

未来服务器操作系统的趋势与展望

摘要: 随着云计算、大数据和人工智能不断的发展,服务器操作系统也需要随之进行新一轮的升级。本文通过分析当前服务器操作系统的现状,探讨了未来服务器操作系统的趋势和展望,并针对一些关键问题提出了解决方案。 一、引言 服务器…

老哥们平日是怎么排查线上问题的?

1、做好监控告警 如果线上出现了问题,我们更多的是希望由监控告警发现我们出了线上问题,而不是等到业务侧反馈。所以,我们需要对核心接口做好监控告警的功能。 2、定位报警层面 如果是业务代码层面的监控报警,那我们应该是可以…

PVE Win平台虚拟机下如何安装恢复自定义备份Win系统镜像ISO文件(已成功实现)

环境: Virtual Environment 7.3-3 Win s2019 UltraISO9.7 USM6.0 NTLite_v2.1.1.7917 问题描述: PVE Win平台虚拟机下如何安装恢复自定义备份Win系统镜像ISO文件 本次目标 主要是对虚拟机里面Win系统备份做成可安装ISO文件恢复至别的虚拟机或者实体机上 解决方案: …

海康Visionmaster-环境配置:MFC 二次开发环境配置方法

1 新建 MFC 工程,拷贝 DLL:VM\VisionMaster4.0.0\Development\V4.0.0 \ComControl\bin\x64 下的所有拷贝到项目工程输出目录下,如下图所示,项目的输出路径是 Dll 文件夹。 2 通过配置 C目录和链接器的方式配置 VM 环境 2.1 C目录下添加附加…

金蝶云星空单据体启用块粘贴

文章目录 金蝶云星空单据体启用块粘贴 金蝶云星空单据体启用块粘贴

c/c++语言算法技巧汇总大复习2

标题前面打*号的为多数考纲范围外的,可以选择性查看 🔗链接:严书代码大全 🔗链接:c/c语言算法技巧汇总大复习1 🔗链接:c/c语言算法技巧汇总大复习2 目录 Dp动态规划入门练习 青蛙跳台阶练习&…

大数据Hadoop之——部署hadoop+hive+Mysql环境(Linux)

目录 一、JDK的安装 1、安装jdk 2、配置Java环境变量 3、加载环境变量 4、进行校验 二、hadoop的集群搭建 1、hadoop的下载安装 2、配置文件设置 2.1. 配置 hadoop-env.sh 2.2. 配置 core-site.xml 2.3. 配置hdfs-site.xml 2.4. 配置 yarn-site.xml 2.5. 配置 ma…

韦东山linux驱动开发学习【常更】

1.linux目录简单介绍 2.直接运行需要在$path路径下

YOLOv7独家原创改进:最新原创WIoU_NMS改进点,改进有效可以直接当做自己的原创改进点来写,提升网络模型性能精度

💡该教程为属于《芒果书》📚系列,包含大量的原创首发改进方式, 所有文章都是全网首发原创改进内容🚀 💡本篇文章为YOLOv7独家原创改进:独家首发最新原创WIoU_NMS改进点,改进有效可以直接当做自己的原创改进点来写,提升网络模型性能精度。 💡对自己数据集改进有效…

AI大模型创意赛秘籍:3要素搞定初赛提交,3步走开发一个网站!

11月10日,飞桨星河社区X智海Mo平台,AI大模型创意应用大赛的首场培训圆满结束!培训过程中的完整网站代码案例,可在报名比赛后获取。 初赛:1码2表3图,快速搞定初赛提交 培训实践营上,Jungle老师分…

BUUCTF 九连环 1

BUUCTF:https://buuoj.cn/challenges 题目描述: 下载附件,解压得到一张.jpg图片。 密文: 解题思路: 1、一张图片,典型的图片隐写。放到Kali中,使用binwalk检测,确认图片中隐藏zip压缩包。 使…