building-mechanics
Compare original and translation side by side
🇺🇸
Original
English🇨🇳
Translation
Chinese3D Building Mechanics
3D建筑机制
Complete building system for Three.js games with performance optimization, structural physics, and multiplayer networking.
适用于Three.js游戏的完整建筑系统,包含性能优化、结构物理和多人网络功能。
Quick Start
快速开始
javascript
import { SpatialHashGrid } from './scripts/spatial-hash-grid.js';
import { HeuristicValidator } from './scripts/heuristic-validator.js';
// Spatial indexing for fast queries
const spatialIndex = new SpatialHashGrid(10);
spatialIndex.insert(piece, piece.position);
const nearby = spatialIndex.queryRadius(position, 15);
// Structural validation (Rust/Valheim style)
const validator = new HeuristicValidator({ mode: 'heuristic' });
validator.addPiece(piece);
const canPlace = validator.validatePlacement(newPiece);javascript
import { SpatialHashGrid } from './scripts/spatial-hash-grid.js';
import { HeuristicValidator } from './scripts/heuristic-validator.js';
// 空间索引实现快速查询
const spatialIndex = new SpatialHashGrid(10);
spatialIndex.insert(piece, piece.position);
const nearby = spatialIndex.queryRadius(position, 15);
// 结构验证(Rust/Valheim风格)
const validator = new HeuristicValidator({ mode: 'heuristic' });
validator.addPiece(piece);
const canPlace = validator.validatePlacement(newPiece);Reference Files
参考文件
Read these for detailed implementation guidance:
- - Spatial partitioning, chunk loading, instancing, LOD
references/performance-at-scale.md - - Arcade vs heuristic vs realistic physics
references/structural-physics-advanced.md - - Authority models, delta sync, conflict resolution
references/multiplayer-networking.md
阅读以下文件获取详细实现指南:
- - 空间分区、区块加载、实例化、LOD(细节层次)
references/performance-at-scale.md - - 街机、启发式与写实物理对比
references/structural-physics-advanced.md - - 权限模型、增量同步、冲突解决
references/multiplayer-networking.md
Scripts
脚本
Performance (references/performance-at-scale.md)
性能优化(参考references/performance-at-scale.md)
- - O(1) queries for uniform distribution
scripts/spatial-hash-grid.js - - Adaptive queries for clustered bases
scripts/octree.js - - World streaming for large maps
scripts/chunk-manager.js - - Benchmarking utilities
scripts/performance-profiler.js
- - 均匀分布场景下的O(1)查询
scripts/spatial-hash-grid.js - - 集群基地场景下的自适应查询
scripts/octree.js - - 大地图的世界流加载
scripts/chunk-manager.js - - 基准测试工具
scripts/performance-profiler.js
Structural Physics (references/structural-physics-advanced.md)
结构物理(参考references/structural-physics-advanced.md)
- - Fast validation (Fortnite/Rust/Valheim modes)
scripts/heuristic-validator.js - - Caching and batch updates
scripts/stability-optimizer.js - - Damage states, cascading collapse
scripts/damage-propagation.js - - Optional realistic physics
scripts/physics-engine-lite.js
- - 快速验证(支持Fortnite/Rust/Valheim模式)
scripts/heuristic-validator.js - - 缓存与批量更新
scripts/stability-optimizer.js - - 损伤状态、连锁坍塌
scripts/damage-propagation.js - - 可选的写实物理引擎
scripts/physics-engine-lite.js
Multiplayer (references/multiplayer-networking.md)
多人网络(参考references/multiplayer-networking.md)
- - Only send changed state
scripts/delta-compression.js - - Optimistic placement with rollback
scripts/client-prediction.js - - Handle simultaneous builds
scripts/conflict-resolver.js - - Complete server/client system
scripts/building-network-manager.js
- - 仅发送变更状态
scripts/delta-compression.js - - 带回滚的乐观放置
scripts/client-prediction.js - - 处理同时建造操作
scripts/conflict-resolver.js - - 完整的服务器/客户端系统
scripts/building-network-manager.js
Key Patterns
核心模式
Spatial Indexing Selection
空间索引选择
| Pieces | Distribution | Use |
|---|---|---|
| <1,000 | Any | Array |
| 1-5k | Uniform | SpatialHashGrid |
| 1-5k | Clustered | Octree |
| 5k+ | Any | ChunkManager + Octree |
| 部件数量 | 分布情况 | 适用方案 |
|---|---|---|
| <1,000 | 任意 | 数组 |
| 1-5k | 均匀 | SpatialHashGrid |
| 1-5k | 集群 | Octree |
| 5k+ | 任意 | ChunkManager + Octree |
Physics Mode Selection
物理模式选择
- Arcade (Fortnite): Connectivity only, instant collapse, best for combat
- Heuristic (Rust/Valheim): Stability %, predictable, best for survival
- Realistic: Full stress/strain, expensive, best for engineering sims
- 街机模式(Fortnite风格):仅检查连通性,即时坍塌,最适合战斗类游戏
- 启发式模式(Rust/Valheim风格):稳定性百分比,可预测,最适合生存类游戏
- 写实模式:完整应力/应变计算,性能消耗高,最适合工程模拟类游戏
Multiplayer Pattern
多人网络模式
Server-authoritative with client prediction. Use delta compression for sync.
采用服务器权威+客户端预测模式,使用增量压缩实现同步。