同时需要将 Camera2D 节点的 Anchor Mode 属性设置为 Drag Center 。意思是锚点在中间,如果角色的锚点也在中间,那么可以让它们重合。多数情况下,这样的操作只会让摄像机的可视范围移到根场景的坐标原点上(如图3)。这样肯定是不对的,但做为子节点,我们只需要重置一下坐标,将它置为(0,0)它就会来到角色的锚点位置...
在2D场景中我们自然选择Camera2D。基本的用法也非常简单,我们只需要在我们的Player场景中加入Camera2D即可: 2D摄像机可以调整的参数也比较简单直白。Offset是偏移不用说。Ignore Rotation会忽略旋转。Zoom是缩放,你可以根据场景大小来拉近拉远摄像机。 Anchor Mode(锚定模式)可以调整摄像机的移动逻辑。默认的Drag Center...
接着打开Player的 Node > Signals 面板,双击刚刚添加的自定义信号 grounded_update ,选择 Camera2D 节点的脚本,为其添加一个信号处理函数。 func _on_Player_grounded_update(is_grounded): drag_margin_v_enabled = !is_grounded 此函数的作用就是当角色是否在地面的状态发生改变时,设置 Drag Maring V Enabled ...
因此,在MainScene中,右键点击父节点创建一个新的子节点Camera2D。选中Camera2D节点,在监视器中勾选Current的复选框(激活摄影机),然后移动摄影机,覆盖整个关卡。 出现的紫色框就是我们刚才新建的摄影机(Camera2D节点): 接着给摄影机节点添加一个新脚本:CameraController.gd(原名Camera2D) 首先,需要创建一个变量来存...
在scene面板里,点击2D Scene按钮来创建一个新的2D场景。 双击这个新节点,重命名为MainScene。 即时保存场景是个好习惯。可以使用Ctrl + S或Scene > Save Scene来保存它。点击enter后你将在FileSystem里看到它。 创建角色 好了,我们有了主场景。接下来,我们继续创建角色场景,它将拥有所有需要的节点和对应的脚本。
嗯,相比之前的游戏,玩家场景的结构变化不大,当然也有不同之处,玩家场景中最重要的变化是多了一个非常重要的节点:Camera2D 摄像机节点。这个节点其实非常好理解,特别是在 3D 游戏中更加常用,而且很多游戏中会同时拥有多个摄像机。 godot_13_camera_node.png Camera2D 节点的一些基本参数很好理解,这里例举几个重要...
Camera2D: 用于 2D 场景的 Camera 节点。 CanvasGroup: 将多个 2D 节点合并为单个绘制操作。 CanvasModulate: 一个为画布应用颜色色调的节点。 CollisionObject2D: 2D 物理对象的抽象基类。 Area2D: 一个检测其他 CollisionObject2D 进入或退出的 2D 空间区域。
摄像机:落地时移动镜头-Godot3-2D教程 目录 跳跃时镜头不动 落地后移动镜头 判断是否在地面上 落地后移动镜头 跳跃时镜头不动 不好说明,直接看效果吧。 在前面的文章中,已经讲过 Drag Margin 的设置,也就是死区,在这个区域里的移动是不会触发镜…阅读全文 赞同6 4 条评论 分享收藏 [...
x+=1ifInput.is_action_pressed("camera_move_left"):moveAmount.x-=1ifInput.is_action_pressed("camera_move_up"):moveAmount.y-=1ifInput.is_action_pressed("camera_move_down"):moveAmount.y+=1moveAmount=moveAmount.normalized()position+=moveAmount*delta*1000*(1/zoom.x)func ClickAndDrag():...
Camera2D的Drag属性内可以修改Left\Right\Top\Bottom属性,修改摄像机水平垂直限制拖动的距离 Position_Smoothing属性设置为True,则相机会进行位置平滑,好处是不会显得死板 使相机节点触碰到场景边缘时停下来 Limit属性,可修改摄像机最边缘停止的位置,比如地板底部边缘,当玩家下落时并不会看到地图外侧,Limit属性内启用Smoothe...