
Godot4.0
文章平均质量分 81
巽星石
业余编程爱好者,Godot游戏引擎爱好者
展开
-
【Godot4.4】写入和读取ZIP文件
Godot提供了ZIPPacker类型来读写ZIP压缩包文件。本文是简单的写入和读取文件操作测试笔记。原创 2025-03-12 23:23:02 · 597 阅读 · 0 评论 -
【Godot4.4】模拟类似网页的布局
最近瞎搞一些布局的事情,其中需要实现类似网页的布局,也就是水平居中,且中间内容区域固定宽度的形式。最终通过容器的嵌套,实现了效果,想着记录一下思路。Godot的容器就是为了UI布局存在的,很强大,但是对于某些特殊布局还是有些设置繁琐和力不从心。另外Godot不支持WebBrowser,无法内嵌网页。有时候又需要类似网页的显示和布局,所以只能自己搞。此文所述的容器嵌套版本只是记录一下思路,后续会创建自定义容器简化和特化类网页排版的需求,敬请期待。原创 2025-03-04 22:24:47 · 522 阅读 · 0 评论 -
【Godot4.3】应用程序开发的一些小技巧
Godot默认导出,无法修改应用图标。也是在群友提醒下,获得了正确的设置,rcedit需要自己下载,并保存到固定位置后为Godot进行指定。原创 2025-03-01 23:36:05 · 332 阅读 · 0 评论 -
【Godot4.3】剪贴板相关以及粘贴截图
Godot4.3中更新了一些关于剪贴板的方法,获取图片赫然在列,这意味着可以在自己的应用中创建诸如粘贴截图的功能。这些方法被包含在单例中,有兴趣的戈友可以自己去翻一下文档。或许可以实现Godot版本的屏幕截图工具。原创 2024-09-21 21:45:46 · 560 阅读 · 0 评论 -
【Godot4.2】环形阵列子节点和控件环形阵列容器
今天(2024年4月13日)在群里收到群友的提问,它想实现子节点的环形排布,当然按他的说法,它实际想要实现的是一个自动环形排列子控件的自定义容器。好在我之前有自定义容器的经验,也马上想到可以用向量旋转获取圆上的定位。这是一次很好的自定义容器尝试,证明了Godot可以实现特殊的布局容器当然这种做法可能不算符合Godot容器的定义规范,对于子控件将无法再使用size_flags来实现动态大小,控件将自动被压缩至最小尺寸,除非定义了。原创 2024-04-13 17:39:42 · 718 阅读 · 0 评论 -
【Godot4.2】注释习惯 -- 拒绝屎山,提高代码可读性
我个人于2020年9月左右开始接触Godot,在2021年8月汉化一个关于GDScript脚本注释习惯的视频时,学习到了一些有用的代码注释规则,于是逐渐将一些注释习惯引入自己的代码书写中。这些注释习惯一直延续至今,并逐渐形成我自己的一种风格。本篇就来介绍一下我自己的注释习惯,以及谈谈这样做的好处。当然你并不需要完全和我一致,每个人都有自己的习惯。如果你觉得还有哪些好的提高代码可读性的好方法,可以留言或讨论。希望本篇内容对学习Godot的小伙伴们有用。原创 2024-03-23 16:57:31 · 2906 阅读 · 2 评论 -
【Godot4.2】随机数应用案例 - 制作骰子组件
在学习随机数之后,我们就来用随机数实现骰子。初期:不要拘泥于形式。只要表现了随机,骰子可以不必做成骰子的样子。刚开始因为技术力的原因,可能无法实现比较真实和动态的骰子效果,但是这并不意为着不可以做出一个“表意”的骰子,比如一个纯数字版本的骰子也是完全可以的,因为骰子在游戏里只是提供的随机的一种工具。本篇主要是随机数应用的一个简单实例。讲解如何手搓简单的纯数字骰子和图片版骰子。同样只是抛砖引玉,讲解基础的原理,代码其实可以优化的更简洁,也可以使用Timer节点取代,以及实现摇骰子过程中显示随机的面等等。原创 2024-03-21 17:51:33 · 1464 阅读 · 0 评论 -
【Godot4.2】实现鼠标控制对象(控件)旋转
在一些情况下我们可能需要使用鼠标控制对一个图形或对象(如控件)进行旋转。通过如下图的分析:我们只需要求出对象(如控件)中心点C到鼠标点击的位置start的向量与中心点C到鼠标移动后的位置start的向量之间的夹角θ然后将这个角度加到对象(如控件)的rotation属性上就可以了。原创 2024-03-21 16:00:26 · 1273 阅读 · 0 评论 -
【Godot4.2】随机数入门指南
计算机程序是精确的艺术,现实生活却充满了随机性。如果你的游戏缺乏了随机性,也就缺乏了最基础的乐趣。我们在很多场景下需要使用随机数,来为已经非常刻意和规整的设计带来一些变化和趣味。比如打怪、打完Boss或开宝箱后随机掉落不同的物品,随机生成地图,判定某次攻击的命中率等等。要想成为游戏设计高手,随机数的学习和使用是躲不开的命题。本篇讲解Godot内置脚本GDScript提供的随机数生成类和方法,带你进入游戏设计随机数的大门。原创 2024-03-21 01:53:44 · 1966 阅读 · 0 评论 -
【Godot4.2】 基于SurfaceTool的3D网格生成与体素网格探索
说明:本文基础内容写于2023年6月,由三五篇文章汇总而成,因为当时写的比较潦草,过去时间也比较久了,我自己都得重新阅读和理解一番,才能知道自己说了什么,才有可能重新优化整理。因为我对体素网格的原始算法并不精通,当时只是依靠自己的直觉以及Godot4.2提供的工具类来实现了体素网格的生成算法。但是本文也可以作为这些工具的类的实例教程进行使用。因此体素不体素的你也可以当我没说:),重点在于用代码进行3D网格的生成。# UV坐标# 右侧面@tool# 构造AABB。原创 2024-03-19 22:37:18 · 1842 阅读 · 0 评论 -
【Godot4.2】颜色完全使用手册
本篇简单汇总Godot中的颜色的构造和使用,包括了RGB、RGBA,HSV以及HTML16进制颜色值、颜色常量等形式。颜色的运算以及取反、插值以及用数组或PNG图片存储多个颜色。可以自定义Resource,来存储多个颜色。# 调色板 - 存储多个颜色@tool你可以在检视器面板新建和编辑或者用代码方式创建、编辑并保存。原创 2024-03-17 17:14:24 · 2063 阅读 · 0 评论 -
【Godot4.2】简单调色板生成
Godot内部提供了和两个颜色选择控件,也提供了和,来实现参数化的渐变图片。但是有时候我们可能需要用Godot自己编写一些绘图程序,可能和就显得比较Low了,我们可能想自己实现调色板或者色环之类的。本篇旨在阐述如何用简单的GDScript代码形式生成调色板,通过控件来呈现,并进取色交互。通过上面探讨的基础,我们已经可以实现自己的颜色选择器功能,为了让代码清晰,我封装了ColorsBar和HSBRect两个自定义控件。原创 2024-03-10 20:17:45 · 1798 阅读 · 0 评论 -
【Godot4.2】普通数组Array使用全解析
本篇总结和介绍一下Godot普通数组Array的一些常见用法,包括增、删、查、改和排序、去重、元素计数以及批量操作等。Godot4.2的数组可以分为普通数组Array)、类型化数组)和紧缩数组【Godot4.2】GDScript数组分类及类型化数组和紧缩数组概述一文。@toolvar arr = ["百度","阿里巴巴","美团","支付宝"];# 原始数组arr.shuffle() # 打乱顺序print(arr) # ["阿里巴巴", "百度", "支付宝", "美团"]原创 2024-03-06 18:01:22 · 5053 阅读 · 2 评论 -
【Godot4.2】GDScript数组分类及类型化数组和紧缩数组概述
GDScript的数组是一种很常用的数据类型。本文主要阐述一下GDScript数组分类,以及官方文档和大多数视频或教程较少提及的类型化数组和紧缩数组。原创 2024-03-06 17:53:05 · 2227 阅读 · 0 评论 -
【Godot4.2】数组扩展类型Array2D及使用手册
Godot本身的Array太过于宽松,并且只提供了通用的方法。而在很多场景下,我们都会用到二维数组,而Array自身提供的通用方法在一些二维数组操作上并不便利,所以编写一个自定义类是非常有必要的。Array2D就是专门针对二维数组的创建和操作而编写的,通过其自定义方法可以更便捷、多样和灵活的创建二维数组,并对其进行操纵。本文贴出Array2D类的源码,以及具体的使用方法。这个类目前只是一个初级版本,后续可能会继续改进和扩充。原创 2024-03-02 19:00:59 · 2033 阅读 · 0 评论 -
Godot自定义控件样式语法解析
这篇原始文章写于2023-08-07,存储在我的语雀里。但是语雀分享有诸多不便,为了让更多Godoter更轻松的搜到和看到,就转过来了。这个项目我上传了Github,后续会贴上链接。Godot控件体系存在的问题之一就是样式无法用纯文本形式简洁而清晰的定义,一切都要靠主题编辑器或检视器面板那一套手动的东西。4.x提供了一些样式属性和方法,但仍然算不上简洁。在样式定义方面,前端的CSS样式表可谓是最佳实践之一。如果能够以类似CSS一样的纯文本形式解析和控制Godot的控件样式。那么将是一件创举。原创 2024-03-02 18:26:58 · 908 阅读 · 0 评论 -
【Godot4.2】Tree控件自定义树形数据ETD及其解析
在Godot中利用MenuBarPopupMenu设计复杂菜单,以及利用Tree控件创建复杂的树形导航,都是一件繁复的工作。通过某种数据形式,以及一个解析函数,自动加载生成菜单或Tree的树形列表,便成为了自然而然的选择。我首先想到的是字典和JSON,两者其实类似,都是键值对形式,存在很多重复冗余的键定义。所以我想自创一种树形数据表示形式。可以很好的表示树形结构基于纯文本,依靠字符串解析可以轻松获取数据语法简洁,便于手动书写和更改,更易于阅读。原创 2024-03-01 00:34:25 · 1519 阅读 · 0 评论 -
【Godot4.2】图片处理函数库 - textureDB
Godot中节点使用的图片是Texture2D或其子类型,而涉及图片处理,大多数功能在Image类型中,并且我们通常需要频繁的构造Image和类型。为了封装构造Image和类型的代码,提供直接从文件到直接可以赋值给节点的纹理图片,或者从节点纹理直接获取处理后的纹理,所以笔者才起了创建这个静态函数库的想法。原创 2024-02-09 01:20:27 · 1903 阅读 · 2 评论 -
【总结】Godot 4.0 代码编辑器的一些变化
Godot4.0新的代码编辑器特性原创 2023-03-05 23:39:48 · 10163 阅读 · 1 评论 -
GDScript 导出变量 (Godot4.0)
Godot4.0新的导出变量语法原创 2023-03-05 18:58:55 · 33583 阅读 · 5 评论