godot4专题

【Godot4自学手册】第三十九节利用shader(着色器)给游戏添加一层雾气效果

今天,主要是利用shader给游戏给地宫场景添加一层雾气效果,增加一下气氛,先看一下效果: 一、新建ParallaxBackground根节点 新建场景,根节点选择ParallaxBackground,命名为Fog,然后将该场景保存到Component文件夹下。ParallaxBackground 使用一个或多个 ParallaxLayer 子节点来创建视差效果。每个 ParallaxLay

【Godot4自学手册】第三十六节圆形移动或扇形移动的铁球

在第三十四节我实现了来回无限滚动的伤害铁刺球,这一节我准备实现一个圆形移动或扇形移动,并带有链条的铁球。效果如下: 一、实现原理 绕一点做圆周运动,简单的说就是: 每一帧根据旋转的角度计算出下一个位置的坐标 。因此我们需要两个数值: 旋转角度(偏移量)、距离(半径) 。这样每一帧都根据计算的坐标来更新平台的位置,实现平台绕中心点做圆周运动。这么怎么才能计算出移动的位置呢?这需要我们初中学的一

【Godot4自学手册】第三十四节来回无限滚动的伤害铁刺球

本节主要学习给地宫添加来回滚动的铁刺球,铁刺球共有两个方向,一个是左右方向;另一个是上下方向。如果主人公不小心碰到球,就会收到伤害。这是地宫的第一个机关。 一、新建场景并布局节点 把我们准备好的铁球图片素材拖入到文件系统的Sprites->Objects目录下。 然后新建Node2D场景,命名为RollingBar,存到Scenes目录下。将素材拖入到场景中。 二、让铁球无限滚动 选择根

【Godot4自学手册】第三十一节使用WorldEnvironment为地宫入口粒子系统添加辉光

本节,首先我将使用WorldEnvironment节点为地宫入口的例子系统添加辉光,让游戏看上去效果更加灿烂。其次加入相应提示信息,白天到达地宫附近、未杀死怪物进入地宫,都有提示信息,达到条件后地宫方可进入。先看一下效果: 一、整理我们的地宫入口 首先进入主场景main,然后选择DoorRoom节点,在节点单击右键,选择将分支保存为场景,在弹出的对话框中选择Scenes文件夹,把场景保持该目

【Godot4自学手册】第二十九节使用Shader来实现敌人受伤的闪白效果

在Godot 4中,Shader是用来为材质提供自定义渲染效果的程序。材质可以应用于MeshInstance、CanvasItem和ParticleEmitter等节点。Shader可以影响顶点的变换、片段(像素)的颜色,以及光照与物体的交互。 在Godot中,Shader的编写和使用通常涉及以下步骤: 选择或创建一个材质节点。1. 在材质的Shader属性中,选择Custom(自定义)或者Add

【Godot4自学手册】第二十四节利用DirectionalLight2D节点实现夜幕降临

根据我们的游戏情节,今天我们将要实现夜晚的来临,主要是用DirectionalLight2D节点来实现,当与NPC对完话后,整改场景逐渐变得黑暗。 一、添加DirectionalLight2D节点 切换到主场景main,选择根目录,单击添加子节点按钮,在创建节点对话框中选择DirectionalLight2D节点,单击创建按钮,这样就会在主场景中创建了该节点。该节点表示平行光,模拟覆盖整个场景

【Godot4自学手册】第二十一节掉落金币和收集

这一节我们主要学习敌人死亡后随机掉落金币,主人公可以进行拾取功能。 一、新建金币场景 新建场景,节点选择CharacterBody2D,命名为Coins,将场景保存到Scenes目录下。 1.新建节点 为根节点依次添加CollisionShape2D节点,表示金币本身碰撞体;AnimatedSprite2D节点,命名为AnimaS用于播放金币的动画; Area2D节点,命名为PickBox

【Godot4自学手册】第二十节增加游戏的打击感,镜头震颤、冻结帧和死亡特效

这节我主要学习增加游戏的打击感。我们通过镜头震颤、冻结帧、增加攻击点特效,增加死亡。开始了。 一、添加攻击点特效 增加攻击点特效就是,在攻击敌人时,会在敌人受击点显示一个受击动画。 1.添加动画。 第一步先做个受击点动画。切换到Enemy场景,给根节点添加AnimatedSprite2D节点,命名为HiteffectAnima。在其检查器Animation->Sprite Frames 属

【Godot4自学手册】第十九节敌人的血量显示及掉血特效

这一节,我主要学习敌人的血量显示、掉血显示和死亡效果。敌人的血量显示和主人公的血量显示有所不同,主要是在敌人头顶有个红色的血条,受到攻击敌人的血条会减少,并且有掉血数量的文字显示,效果如下: 一、创建敌人的血条 1.节点布局 新建Node场景命名为HealthBar,给HealthBar添加3个子节点,一是TextureProgressBar命名为HbarTxp,二是Label命名为Sho

【Godot4自学手册】第十八节主人公的血量显示

今天,我主要学习主人公的血量显示,在屏幕的左上角,会显示主人公的头像,后面会显示血量进度条,当主人公受到伤害时,血量会实时变动,显示绿色血条减少,后是红色血量逐渐减少到正确位置,效果如下: 一、修改BUG 再开始今天的学习之前,修改以前的一些Bug,在敌人攻击和受伤,主人公的攻击和受伤学习中又许多Bug,主要是因为我把需要执行一次的状态代码和需要执行一段时间的代码全都写到_physics_p

【Godot4自学手册】第十六节敌人的攻击和主人公的受伤

各位同学大家好,前面我们学习了敌人的攻击动画,但是没有真正意义上实现攻击功能。今天我们将要学习敌人的攻击和主任的受伤功能的实现,其实原理很简单我们以前都学过,主要是给敌人添加一个Area2D子节点,这个结点用于与主任公发生碰撞达到进攻记录的目的;给主人公添加一个Area2D子节点用于接收敌人的进攻。开始吧。 一、敌人的进攻 1.结点布置。 在Enemy场景中添加Area2D结点,命名为Hit

【Godot4自学手册】第十五节碰撞层Layer和Mas的使用

上一节中我学习了敌人的攻击,这一节将学习一些碰撞的有关知识。开始今天的学习。 一、碰撞层基本使用知识 在Godot4中的Collsion属性中有Layer和Mask两个属性,用于定义碰撞过滤的重要参数,它们可以允许控制哪些物体可以与该节点进行碰撞检测。具体长成如下的样式: 1、Layer表示该节点所在的层,可以属于一个或多个层,在属性面板中可以进行选择。 2、Mask表示该节点与哪个层进行

【Godot4自学手册】第八节使用地形集和分层绘制地形

各位同学,今天继续使用TileMap中的tileset完善背景搭建。 一、利用地形集完成小路的背景 在Main场景中,单击TileMap节点,在检查器中点击tilemap选择tileset,在Terrainset属性下单击添加元素,在出现的Terrains属性中点击添加元素按钮,Name设置为DirtRoad。这个过程顺序如下图: 梳理一下,这个过程就是先找到TileSet,然后在Terr

【Godot4自学手册】第五节用GDScript语言让主人公动起来

GDScript 是Godot自带的编程语言,用于编写游戏逻辑,它是一种高级面向对象的指令式编程语言,使用渐进类型,专为 Godot 构建。在这一小节里,我将自学用GDScript语言控制主人公的行走和攻击。 一、给Player节点添加GDScript 在场景面板中,选择Player节点,然后单击上方的给选中节点添加脚本快捷按钮,然后在弹出的对话框中选择路径按钮,然后选择脚本保存路径为:res

Godot4实现游戏的多语言版本

要在Godot 4中实现多语言版本的游戏,您需要按照以下几个步骤来设置和管理游戏文本以及可能的其他资源,如图像或声音。以下是根据官方文档和详细教程整理的简明指南: 准备翻译文件: Godot支持使用.csv文件或.po文件进行国际化​​。 您将使用电子表格程序(如LibreOffice Calc)创建一个.csv文件,其中包含每种支持的语言的键和翻译​。 CSV的结构: CSV文件必须遵

godot4实现一个单例类,作为公共数据共享类

在 Godot 4 中,你可以通过创建一个自动加载的脚本来实现单例类,用于作为公共的数据总线。你需要做的是: 1. 创建一个新的 GDScript 文件,例如 `GlobalData.gd`,并在其中定义你想要共享的变量和函数。 2. 然后,转到 "Project" > "Project Settings" > "AutoLoad",并添加你刚刚创建的脚本。为它提供一个名称(例如 "Global