Oak 开源项目教程
oakA pure Go game engine项目地址:https://gitcode.com/gh_mirrors/oak/oak
1. 项目的目录结构及介绍
Oak 项目的目录结构如下:
oak/
├── cmd/
│ ├── oak/
│ │ └── main.go
├── examples/
│ ├── basic/
│ │ └── main.go
│ ├── advanced/
│ │ └── main.go
├── pkg/
│ ├── core/
│ │ ├── event/
│ │ ├── render/
│ │ ├── scene/
│ │ └── space/
│ ├── physics/
│ │ ├── collision/
│ │ └── force/
│ ├── audio/
│ │ └── audio.go
│ ├── ui/
│ │ └── ui.go
├── scripts/
│ ├── build.sh
│ ├── test.sh
│ └── deploy.sh
├── config/
│ ├── default.yaml
│ └── custom.yaml
├── README.md
├── LICENSE
└── go.mod
目录结构介绍
cmd/
: 包含项目的入口文件。oak/
: 主程序入口。
examples/
: 包含示例代码,帮助用户理解如何使用 Oak。basic/
: 基础示例。advanced/
: 高级示例。
pkg/
: 包含项目的核心包和功能模块。core/
: 核心功能模块。event/
: 事件处理。render/
: 渲染功能。scene/
: 场景管理。space/
: 空间管理。
physics/
: 物理引擎相关模块。collision/
: 碰撞检测。force/
: 力学模拟。
audio/
: 音频处理模块。ui/
: 用户界面模块。
scripts/
: 包含构建、测试和部署脚本。config/
: 配置文件目录。default.yaml
: 默认配置文件。custom.yaml
: 自定义配置文件。
README.md
: 项目说明文档。LICENSE
: 项目许可证。go.mod
: Go 模块文件。
2. 项目的启动文件介绍
项目的启动文件位于 cmd/oak/main.go
。这个文件是 Oak 项目的入口点,负责初始化项目并启动主循环。
启动文件内容概览
package main
import (
"github.com/oakmound/oak/v3"
"github.com/oakmound/oak/v3/scene"
)
func main() {
oak.Add("start", func(ctx *scene.Context) {
// 初始化代码
})
oak.Init("start")
}
启动文件功能
- 导入 Oak 包和其他必要的包。
- 添加初始场景
start
。 - 调用
oak.Init
方法启动项目。
3. 项目的配置文件介绍
项目的配置文件位于 config/
目录下,包含 default.yaml
和 custom.yaml
两个文件。
默认配置文件 default.yaml
window:
width: 800
height: 600
title: "Oak Game"
fullscreen: false
自定义配置文件 custom.yaml
window:
width: 1024
height: 768
title: "Custom Oak Game"
fullscreen: true
配置文件功能
window
: 配置窗口的宽度、高度、标题和是否全屏。- 用户可以根据需要修改
custom.yaml
文件来自定义项目配置。
oakA pure Go game engine项目地址:https://gitcode.com/gh_mirrors/oak/oak