GAME

Godot 学习路径

2023-06-30

Godot引擎的路线: 以下是一个基本的学习路径,以帮助你开始使用Godot进行游戏开发:

  1. 学习基础知识:

    • 了解Godot引擎的基本概念和术语,例如场景、节点和脚本等。
    • 学习Godot的用户界面,包括编辑器的各个部分和常用工具。
  2. 掌握场景和节点:

    • 理解场景和节点的概念,以及它们之间的层次结构关系。
    • 学习如何创建、组织和管理场景中的节点。
    • 实践使用不同类型的节点,例如精灵、碰撞体和摄像机等。
  3. 使用GDScript进行编程:

    • 学习Godot的脚本语言GDScript,它类似于Python。
    • 了解GDScript的语法、变量、控制流和函数等基本概念。
    • 实践使用GDScript编写简单的脚本来控制游戏对象的行为。
  4. 掌握游戏逻辑和交互:

    • 学习如何处理用户输入,例如键盘、鼠标和触摸屏等。
    • 掌握游戏逻辑的设计和实现,例如角色移动、敌人行为和碰撞检测等。
    • 实践创建简单的游戏场景,并实现基本的玩法和交互。
  5. 图形和动画效果:

    • 学习使用Godot的绘图工具和特效来创建游戏中的图形和动画效果。
    • 了解如何加载和渲染纹理、精灵和动画等资源。
    • 实践创建各种图形效果,如粒子效果、渐变和过渡动画等。
  6. 音频和音效:

    • 学习如何在游戏中添加音频和音效。
    • 掌握Godot的音频系统,包括音乐、声音效果和音频管理等方面。
    • 实践将音频资源添加到游戏中,并实现音频的播放和控制。
  7. 游戏发布和部署:

    • 学习如何将游戏打包并发布到不同平台,如Windows、Mac、Linux和移动设备等。
    • 了解发布过程中的常见问题和最佳实践。
    • 实践将你的游戏导出并在目标平台上进行测试和部署。

Godot数学-线性插值

2020-04-08

lerp 线性插值

GDSciprt中的 lerp 公式

func lerp(a, b, t):
    return (1 - t) * a + t * b

在此公式中,a和b代表两个值,t是插值量,通常表示为0(返回a)和1(返回b)之间的值。该函数查找给定数量的值例如

x = lerp(0, 1, 0.75)  # x is 0.75
x = lerp(0, 100, 0.5)  # x is 50
x = lerp(10, 75, 0.3)  # x is 29.5
x = lerp(30, 2, 0.75)  # x is 9

线性差值概念参照 wiki wiki_zh

Game

2019-12-31

资源处理

康威生命游戏

2019-12-15

使用 rust 实现,基于sdl2 , 项目地址: github;

康威生命游戏

生命游戏是一个零玩家游戏。它包括一个二维矩形世界,这个世界中的每个方格居住着一个活着的或死了的细胞。一个细胞在下一个时刻生死取决于相邻八个方格中活着的或死了的细胞的数量。如果相邻方格活着的细胞数量过多,这个细胞会因为资源匮乏而在下一个时刻死去;相反,如果周围活细胞过少,这个细胞会因太孤单而死去。实际中,玩家可以设定周围活细胞的数目怎样时才适宜该细胞的生存。如果这个数目设定过高,世界中的大部分细胞会因为找不到太多的活的邻居而死去,直到整个世界都没有生命;如果这个数目设定过低,世界中又会被生命充满而没有什么变化。