godot-start/doc/demo05_scene_node/scene_node.md

2.1 KiB
Raw Blame History

1. 深入坐标系

Image text Image text Image text Image text

因为刚开始的时候有点疑惑godot的坐标系原点既然在左上角。
unitycocos的2d原点都在左下角就很符合数学里面的象限左下角的2d坐标系感觉很复合习惯。

后来了解到计算机屏幕是从左上角开始刷新的2d坐标系左上角为原点可以屏幕坐标系吻合可以提升一点效率。  

unity的2d坐标系虽然在左下角但是unity的屏幕坐标系依然在左上角不统一。
虽然godot的2d坐标系在左上角的坐标系刚开始看不舒服但是和屏幕坐标系吻合了也算一种统一就不需要untiy2d的那么多概念了为godot点赞。

因为单论平面内容制作左上原点更符合视觉习惯也更符合设计常识比如ps。

2. 全局和相对坐标的相互转化

  • 全局坐标和局部坐标(相对坐标)可以相互转化
Node2D及其子节点的位置可以使用position和gloabl_position来控制。
其中,前者是该节点相对于父节点的相对位置,后者是全局位置。

简而言之position的坐标系是以父节点的位置坐标为原点的坐标系方向还是水平向右为x轴正方向竖直向下为y轴正方向。
需要注意的是,全局位置是以场景的左上角为原点的,并不是以根结点的位置作为原点的

3. 场景和节点

Image text Image text Image text Image text

  • 一个游戏可以包含多个场景但是一个场景中必须有一个根节点一个根节点可以包含多个不重名的子节点unity的子节点可以同名不同名更加符合习惯为godot点赞。

4. 基本组件

  • CanvasItem Image text Image text Image text Image text Image text