![](https://img-blog.csdnimg.cn/20201014180756780.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Godot4自学手册
文章平均质量分 81
游戏自学
低质量的勤奋,不过是营造一个我很努力的幻觉。勤奋不是马不停蹄,而是有效利用手头的时间。
展开
-
Godot4自学手册目录
这是本人用Godot4.2开发2D游戏的自学笔记,我希望能够系统地学习和掌握游戏设计制作的相关技能,成为一名优秀的游戏开发者。记笔记的目的是防止自己忘记,另一方面是不断积累、不断创新,提高自己的水平。同时,还希望能与更多志同道合的朋友一起交流学习,共同探讨游戏的未来发展趋势,不断拓展自己的视野和思维。原创 2024-03-22 15:28:40 · 1178 阅读 · 1 评论 -
【Godot4自学手册】第四十二节实现拖拽进行物品交换和数量叠加
这一节我们主要学习背包系统中的物品拖拽后,物品放到新的位置,或交换物品位置,如果两个物品属于同一物品则数量相加。原创 2024-06-24 23:06:59 · 296 阅读 · 0 评论 -
【Godot4自学手册】第四十一节背包系统(一)UI设置
各位同学,好久没有更新笔记了,今天开始,我准备自学背包系统。今天先学习下UI界面设置。原创 2024-06-04 22:03:29 · 615 阅读 · 0 评论 -
第四十节实现主人公的技能释放功能(三)插槽释放技能实现
本小结是学习技能释放的最后一节,本节将技能框和释放连接起来。先看一下效果:在我们的游戏界面下方会并排放置5个技能按钮,单击数字1释放火焰技能,然后火焰技能开始冷却;单击数字2释放水球技能,释放完成后冷却;单击数字3释放龙卷风技能;点击数字4释放黑暗精灵技能;点击数字5释放混合技能。原创 2024-05-19 21:45:00 · 357 阅读 · 0 评论 -
第四十节实现主人公的技能释放功能(二)实现技能按钮
horizontal_alignment属性设置为Right。theme_override_font_sizes/font_size设置为8px;并开启theme_override_colors/font_shadow_color属性表示在右下产生一个黑色的阴影。stretch_mode属性设置为Scale。新建场景,选择TextureButton作为根节点,重名为SpellButton,保存场景到Scenes文件夹下。为根节点添加TextureProgressBar子节点,命名为Cooldown。原创 2024-05-08 22:09:08 · 429 阅读 · 0 评论 -
第四十节实现主人公的技能释放功能(一)
我准备用三节来完成主人公释放技能的功能。新建Area2D场景,命名为projectile,为根节点添加AnimatedSprite2D子节点,表示技能动画(例如水球、火攻等等);VisibleOnScreenEnabler2D子节点(用于结点超出屏幕显示范围后消除该节点);CollisionShape2D子节点表示碰撞检测。将此场景保存到场景目录中。原创 2024-05-05 21:25:09 · 425 阅读 · 0 评论 -
【Godot4自学手册】第三十九节利用shader(着色器)给游戏添加一层雾气效果
该节点的子节点将受其滚动偏移量的影响。在ColorRect节点属性面板中,找到CanvasItem -> Material->Material属性,单击后方的下拉菜单小箭头选择新建ShaderMaterial。路径选择Component文件夹下,其他不变,单击创建。uniform的定义表示传递给着色器参数,定义的noise_teture为传入的纹理,定义完成后会在检查器面板出现该参数。FastNoiseLite的Frequeny属性设置为0.0075,表示噪声的频率,值越大产出的噪声越粗糙,颗粒越大。原创 2024-04-20 22:12:06 · 1097 阅读 · 1 评论 -
【Godot4自学手册】第三十八节给游戏添加音效
今天,我的主要任务就是给游戏添加音效。在添加音效前,我们需要了解一个东西:音频总线。这个东西或许有些枯燥,如果你只为添加一个音效没必要了解太多,但如果你以后将要经常与音频播放打交道,还是要了解一下的。原创 2024-04-19 23:18:00 · 906 阅读 · 2 评论 -
【Godot4自学手册】第三十七节钥匙控制开门
有些日子没有更新了,实在是琐事缠身啊,今天继续开始自学Godot4,继续完善地宫相关功能,在地宫中安装第二道门,只有主人公拿到钥匙才能开启这扇门,所以我们在合适位置放置一个保险,主人公开启宝箱后,获得开门钥匙。先看一下展示效果。原创 2024-04-17 23:00:00 · 861 阅读 · 0 评论 -
【Godot4自学手册】第三十六节圆形移动或扇形移动的铁球
在第三十四节我实现了来回无限滚动的伤害铁刺球,这一节我准备实现一个圆形移动或扇形移动,并带有链条的铁球。原创 2024-04-11 19:38:21 · 541 阅读 · 0 评论 -
【Godot4自学手册】第三十五节摇杆控制开门
为根节点加Node2D节点,命名为Doors,用于存放跟门有关节点,方面管理。然后为该节点添加StaticBody2D节点,命名为DoorSta,表示静态节点,一般用于不动的委托;添加CollisionShapte2D节点,命名为DoorColl,用于碰撞检测,当门关闭时,人是不能进入的,当打开时人才能通过。添加CollisionShapte2D节点,命名为SwitchColl,用于碰撞检测,当检测到主人公攻击时,开关进行开关切换,并变道开的状态,检测实效,再次攻击不起作用。先为该节点设置编写代码文件。原创 2024-04-07 21:40:56 · 463 阅读 · 0 评论 -
【Godot4自学手册】第三十四节来回无限滚动的伤害铁刺球
本节主要学习给地宫添加来回滚动的铁刺球,铁刺球共有两个方向,一个是左右方向;另一个是上下方向。如果主人公不小心碰到球,就会收到伤害。这是地宫的第一个机关。原创 2024-04-04 21:05:19 · 341 阅读 · 0 评论 -
【Godot4自学手册】第三十三节用三种方法实现场景切换管理
其实,我整理了三种方面进行场景切换,我把他记录如下,以备后用。原创 2024-04-02 22:11:52 · 1079 阅读 · 0 评论 -
【Godot4自学手册】第三十二节地宫设计
各位同学,今天我们设计一个新场景,根据故事的线索,主人公夜晚杀死怪物后,将进入地宫开始新的征程,所以这节我们主要实现地宫的地形设计,地形设计我们在第七节到第十节有详细的介绍,这节就当复习了,还不了解地形设计的请跳转到第七节到第十节详细了解一下。原创 2024-04-01 21:15:25 · 407 阅读 · 0 评论 -
【Godot4自学手册】第三十一节使用WorldEnvironment为地宫入口粒子系统添加辉光
本节,首先我将使用WorldEnvironment节点为地宫入口的例子系统添加辉光,让游戏看上去效果更加灿烂。其次加入相应提示信息,白天到达地宫附近、未杀死怪物进入地宫,都有提示信息,达到条件后地宫方可进入。原创 2024-03-29 21:56:10 · 791 阅读 · 0 评论 -
【Godot4自学手册】第三十节代码调用受伤闪白效果及组合与自由状态机有效结合
这一节,我主要学习用代码调用shader,组合和自由状态机结合到一起来完成怪物的一些功能。其实用代码调用shader实现敌人的闪白效果是怪物里面的一个受伤状态,所以先从怪物受伤状态开始。原创 2024-03-27 20:44:34 · 472 阅读 · 0 评论 -
【Godot4自学手册】第二十九节使用Shader来实现敌人受伤的闪白效果
在Godot 4中,Shader是用来为材质提供自定义渲染效果的程序。材质可以应用于MeshInstance、CanvasItem和ParticleEmitter等节点。Shader可以影响顶点的变换、片段(像素)的颜色,以及光照与物体的交互。在Godot中,Shader的编写和使用通常涉及以下步骤:选择或创建一个材质节点。1. 在材质的Shader属性中,选择Custom(自定义)或者Add来创建一个新的Shader。2.切换到Godot的Shader编辑器,这是编写和测试Shader的地方。原创 2024-03-26 22:20:18 · 1064 阅读 · 0 评论 -
【Godot4自学手册】第二十八节利用组合实现怪物的受伤
定义攻击类Attack,主要用来传递参数等。class_name Attack #定义类var attack_damage:float #攻击力var konckback_force:float #攻击后退理论var attack_position:Vector2 #攻击位置。原创 2024-03-25 20:58:47 · 677 阅读 · 0 评论 -
【Godot4自学手册】第二十七节自定义状态机完成看守地宫怪物
本节,我将使用自定义状态机实现看守地宫怪物,完成了基础类State,状态机类StateMachine的编码,实现了怪物的闲置巡逻类、追踪类和攻击类,以及对应动画等。这节代码有点多,不过还好,代码比较简单。原创 2024-03-22 21:29:52 · 1387 阅读 · 0 评论 -
【Godot4自学手册】第二十六节用GPUParticles2D节点实现地宫入口的奇异光芒
我们的主人公与NPC对话完成后,夜晚来临,在城北有一处乱石岗,出现了奇异光芒,这是地宫的入口,但是有一妖怪把守,我们必须消灭妖怪后才可发现地宫入口。这一节,主要记录利用粒子系统GPUParticles2D节点,实现地宫口的奇异光芒。原创 2024-03-18 22:12:58 · 670 阅读 · 0 评论 -
【Godot4自学手册】第二十五利用PointLight2D节点点缀夜晚灯光
夜晚来临了,少不了灯光的出现,今天就用PointLight2D节点来实现夜晚的忽闪忽闪灯光效果。原创 2024-03-17 22:05:09 · 780 阅读 · 0 评论 -
【Godot4自学手册】第二十四节利用DirectionalLight2D节点实现夜幕降临
根据我们的游戏情节,今天我们将要实现夜晚的来临,主要是用DirectionalLight2D节点来实现,当与NPC对完话后,整改场景逐渐变得黑暗。原创 2024-03-16 10:47:33 · 376 阅读 · 0 评论 -
【Godot4自学手册】第二十三节对话系统
各位同学,大家好今天我要开始自学对话系统了,今天不准备自己造轮子,利用Godot的Dialogic 2.0插件来玩主人公与NPC的对话。先看一下最终效果。开始行动。原创 2024-03-12 23:19:52 · 1561 阅读 · 0 评论 -
【Godot4自学手册】第二十二节完成主人公的闪现功能
首先切换到Player场景,给根节点添加Timer结点,并命名为DashTime,在其检查器中将Timer->Wait Time设置为0.05,表示每0.05秒执行一次Timeout函数。然后切换到结点信号双击timeout信号,弹出对话框选择Player结点,然后单击连接按钮。新建Node2D场景,命名为Ghost,存储到Scenes目录下。然后在根节点下添加4个Sprite2D精灵结点,用来展示主人公四个方向的图片,并在检查器中将Visibility->Visble关闭。同学们这节就到这了,下节见。原创 2024-03-09 19:17:27 · 372 阅读 · 0 评论 -
【Godot4自学手册】第二十一节掉落金币和收集
这一节我们主要学习敌人死亡后随机掉落金币,主人公可以进行拾取功能。原创 2024-03-08 08:33:24 · 559 阅读 · 0 评论 -
【Godot4自学手册】第二十节增加游戏的打击感,镜头震颤、冻结帧和死亡特效
这节我主要学习增加游戏的打击感。我们通过镜头震颤、冻结帧、增加攻击点特效,增加死亡。开始了。原创 2024-03-05 20:20:54 · 983 阅读 · 0 评论 -
【Godot4自学手册】第十九节敌人的血量显示及掉血特效
这一节,我主要学习敌人的血量显示、掉血显示和死亡效果。敌人的血量显示和主人公的血量显示有所不同,主要是在敌人头顶有个红色的血条,受到攻击敌人的血条会减少,并且有掉血数量的文字显示原创 2024-03-03 20:06:55 · 800 阅读 · 0 评论 -
【Godot4自学手册】第十八节主人公的血量显示
今天,我主要学习主再开始今天的学习之前,修改以前的一些Bug,在敌人攻击和受伤,主人公的攻击和受伤学习中又许多Bug,主要是因为我把需要执行一次的状态代码和需要执行一段时间的代码全都写到_physics_process函数的原因,所以我将需要执行一次的代码加到state状态的set(v):函数内执行一次;切换到Player场景,选择根节点,单击实例化子场景按钮,在实例化子场景中选择StatusUI点击打开,就把StatusUI场景加入到Player场景内了,重名为PlayerStatus,然后适当调整位置。原创 2024-02-29 16:18:11 · 1298 阅读 · 0 评论 -
【Godot4自学手册】第十七节主人公的攻击和敌人的受伤
本节主要学习主人公是如何向敌人发起进攻的,敌人是如何受伤的,受伤时候动画显示,击退效果等。其原理和上一节内容相同,不过有许多细节需要关注和完善。原创 2024-02-27 22:24:58 · 1169 阅读 · 0 评论 -
【Godot4自学手册】第十六节敌人的攻击和主人公的受伤
各位同学大家好,前面我们学习了敌人的攻击动画,但是没有真正意义上实现攻击功能。今天我们将要学习敌人的攻击和主任的受伤功能的实现,其实原理很简单我们以前都学过,主要是给敌人添加一个Area2D子节点,这个结点用于与主任公发生碰撞达到进攻记录的目的;给主人公添加一个Area2D子节点用于接收敌人的进攻。开始吧。原创 2024-02-25 19:40:15 · 855 阅读 · 0 评论 -
【Godot4自学手册】第十五节碰撞层Layer和Mas的使用
在Godot4中的Collsion属性中有Layer和Mask两个属性,用于定义碰撞过滤的重要参数,它们可以允许控制哪些物体可以与该节点进行碰撞检测原创 2024-02-22 09:04:29 · 821 阅读 · 0 评论 -
【Godot4自学手册】第十四节完善敌人功能——追击、攻击
本节将要学习,当主人公进入敌人的追击范围,敌人会自动追击主人公,当达到攻击范围,敌人将对主人公进行攻击。原创 2024-02-20 21:56:55 · 1428 阅读 · 0 评论 -
【Godot4自学手册】第十三节初建创建敌人
从本节起,将要学习创建第一人。原创 2024-02-14 09:31:04 · 1262 阅读 · 0 评论 -
【Godot4自学手册】第十二节屋内场景碰撞和返回主场景定位
各位同学,本节主要完成屋内场景碰撞添加,人物在屋内移动,处于正常位置;从屋内返回主人公出现在房屋门口正常位置。回顾一下本节的内容,一是给房屋内添加CollisionPolygon2D节点,为物体添加上碰撞;二是创建全局变量,在主人公进入屋内记录最后位置,从屋内返回主场景,将主人公展示到指定位置。原创 2024-02-04 14:50:10 · 722 阅读 · 0 评论 -
【Godot4自学手册】第十一节主场景和房屋内部场景相互切换
这节,我主要学习场景切换,主人公进入门口会进入房间内部,这样就需要进行场景切换。这节绘制了一个房屋内部场景,用到的大部分都是上一节内容,新内容搭建动画背景图片,我进行了重点介绍和学习。原创 2024-02-03 19:11:13 · 1497 阅读 · 1 评论 -
【Godot4自学手册】第十节将场景添加到TileSet绘制背景,主人公走到房子后面房子变得半透明
这节主要学习将场景添加到TileSet作为TileMap来搭建背景。同时,主人公进入房子后面,房子变得半透明,离开房子后房子变的不透明。原创 2024-01-31 22:18:36 · 1251 阅读 · 0 评论 -
【Godot4自学手册】第九节人物碰撞、遮挡关系背景搭建
这一节,我主要学习,人物与场景中的物体发生碰撞,实现对应的遮挡关系,比如:主任公可以与树木的根本碰撞,在上部行走就是树木遮挡人物,在下方行走就是人物遮挡树木。第一步点击TileMap结点,在其检查器中选择TileSet下physical layer中选择添加元素这样就创建一个物理层了。原创 2024-01-31 10:10:58 · 1215 阅读 · 1 评论 -
【Godot4自学手册】第八节使用地形集和分层绘制地形
各位同学,今天继续使用TileMap中的tileset完善背景搭建。在Main场景中,单击TileMap节点,在检查器中点击tilemap选择tileset,在Terrainset属性下单击添加元素,在出现的Terrains属性中点击添加元素按钮,Name设置为DirtRoad。原创 2024-01-29 21:23:47 · 1013 阅读 · 0 评论 -
【Godot4自学手册】第七节背景搭建
各位同学,今天是第七节,在本节我会学习如何使用TileMap来完成背景搭建。TileMap是基于 2D 图块的地图节点。Tilemap(图块地图)使用 TileSet,其中包含了图块的列表,用于创建基于栅格的地图。TileMap 可以有若干图层,可以将图块布局在彼此之上。开始啦,在main场景中选择Main结点点击添加结点按钮,在弹出对话框中选择TileMap结点,点击创建原创 2024-01-27 22:20:15 · 1038 阅读 · 3 评论 -
【Godot4自学手册】第六节实现人物的挥剑操作
同学们好!本节学习一下人物挥剑操作。单击项目选择项目设置,在添加新动作填写sword,然后点击添加。在动作列表中,单击sword后面的加号,在弹出对话框中单击鼠标左键,最后单击确定,这样鼠标左键就完成了输入映射原创 2024-01-26 20:13:49 · 1333 阅读 · 0 评论