Files
whale-town-front/docs/06-功能模块/网格瓦片系统.md
moyin f527fa3c38 docs:添加网格瓦片系统功能文档
- 详细说明32x32网格系统的使用方法
- 包含核心组件介绍和API参考
- 提供编辑器和代码使用示例
2026-01-03 22:35:36 +08:00

1.5 KiB
Raw Blame History

网格瓦片系统

概述

网格瓦片系统提供32x32像素的标准化网格管理用于规范地图元素的位置和大小。

核心组件

GridSystem (核心系统)

  • 位置: _Core/systems/GridSystem.gd
  • 功能: 提供网格坐标转换、位置计算等基础功能
  • 类型: 静态工具类

GrassTile (瓦片组件)

  • 脚本: scenes/prefabs/GrassTile.gd
  • 场景: scenes/prefabs/grass_tile_prefab.tscn
  • 功能: 可视化的草地瓦片自动对齐32x32网格

使用方法

在编辑器中使用

  1. 拖拽 scenes/prefabs/grass_tile_prefab.tscn 到场景中
  2. 在Inspector中设置Texture和Grid Position
  3. 瓦片会自动对齐到网格

通过代码使用

# 预加载场景
const GrassTileScene = preload("res://scenes/prefabs/grass_tile_prefab.tscn")

# 创建瓦片
var grass = GrassTileScene.instantiate()
add_child(grass)
grass.set_grid_position(Vector2i(0, 0))

网格规范

基础规格

  • 网格大小: 32x32像素
  • 坐标系: 左上角为原点(0,0)
  • 对齐方式: 瓦片中心对齐到网格中心

纹理要求

  • 尺寸必须是32的倍数
  • 推荐格式: PNG
  • 推荐尺寸: 32x32, 64x64, 96x96

API参考

GridSystem 方法

  • world_to_grid(world_pos: Vector2) -> Vector2i
  • grid_to_world_center(grid_pos: Vector2i) -> Vector2
  • snap_to_grid(position: Vector2) -> Vector2

GrassTile 属性和方法

  • grid_position: Vector2i - 网格坐标
  • set_grid_position(pos: Vector2i) - 设置网格位置
  • snap_to_grid() - 对齐到网格