Unity-based game client. Includes pathfinding test tools and various development utilities.
- Sample Terrain Generator: Basic terrain generation tool
- Advanced Terrain Generator: Advanced terrain generation (various test scenarios)
- Pathfinding Test Manager: Pathfinding agent management
- SimplePlane: Basic plane terrain
- Maze: Maze-like terrain
- City: City-like terrain (buildings, bridges)
- Forest: Forest-like terrain (trees, elevation changes)
- Mountain: Mountainous terrain (mountains, tunnels)
- Battlefield: Battlefield terrain (trenches, bunkers)
- Dungeon: Dungeon terrain (walls, pillars)
- Custom: User-defined terrain
- SimplePathfinding: Basic pathfinding test
- ComplexMaze: Complex maze test
- MultiLevel: Multi-level structure test
- DynamicObstacles: Dynamic obstacles test
- PerformanceTest: Performance test
Tools > Sample Terrain Generator
- 6 basic terrain types
- Obstacles, slopes, water generation
- Configurable parameters
Tools > Advanced Terrain Generator
- 8 advanced terrain types
- 5 test scenarios
- Performance optimization settings
- Visualization options
Tools > Pathfinding Test Manager
- Agent creation and management
- Real-time path visualization
- Target randomization
- Performance monitoring
- Select
Tools > Sample Terrain GeneratororTools > Advanced Terrain Generatorin Unity Editor - Choose desired terrain type and settings
- Click "Generate Sample Terrain" or "Generate Advanced Terrain" button
- Select
Tools > Pathfinding Test Manager - Adjust agent count and settings
- Click "Spawn Agents" button to create agents
- Verify automatic pathfinding behavior in Play mode
- Spawn Agents: Create new agents
- Clear All Agents: Remove all agents
- Randomize Targets: Randomize targets for all agents
- Stop All Agents: Stop all agents
Client/
├── Assets/
│ ├── Scripts/
│ │ ├── Editor/
│ │ │ ├── SampleTerrainGenerator.cs # Basic terrain generator
│ │ │ ├── AdvancedTerrainGenerator.cs # Advanced terrain generator
│ │ │ └── PathfindingTestManager.cs # Pathfinding test manager
│ │ ├── PathfindingAgent.cs # Pathfinding agent
│ │ ├── GameManager.cs # Game manager
│ │ ├── Session.cs # Network session
│ │ └── PacketFactory.cs # Packet factory
│ ├── Resources/
│ │ └── Materials/ # Materials
│ │ ├── TerrainMaterial.mat # Terrain material
│ │ ├── ObstacleMaterial.mat # Obstacle material
│ │ └── WaterMaterial.mat # Water material
│ ├── Scenes/ # Unity scenes
│ ├── Prefabs/ # Prefabs
│ └── GeneratedNavMeshes/ # Generated navmeshes
├── Packages/ # Unity packages
├── ProjectSettings/ # Project settings
└── Library/ # Unity library
- Unity 2021.3 LTS or higher
- .NET 4.x or .NET Standard 2.1
- Visual Studio 2019 or higher (for C# script editing)
- RecastNavigation: Pathfinding system
- SharpNav: Navigation mesh
- FlatBuffers: Serialization
- gRPC: Network communication
- Static Batching: Static object batching
- LOD System: Level of detail based on distance
- Memory Optimization: Efficient memory usage
- Path Caching: Cache frequently used paths
- Batch Processing: Simultaneous processing of multiple agents
- Visualization Optimization: Improved path display performance
- Session.cs: Network session management
- PacketFactory.cs: Packet creation and parsing
- gRPC Communication: Real-time communication with server
- GameManager.cs: Game state management
- ItemFactory.cs: Item creation
- SkillFactory.cs: Skill creation
- In-game UI: Player status, skill bar
- Lobby UI: Matching, friend list
- Settings UI: Graphics, sound settings
- Battle/ - Battle server (in-game synchronization)
- Lobby/ - Lobby server (matching, authentication)
- Engine/ - Game engine (GridManager)
- GameData/ - Game data
- Add new
TerrainTypeinAdvancedTerrainGenerator.cs - Implement terrain generation method
- Add new option to UI
- Add new type to
PathfindingTestTypeenum - Add logic to
ConfigureTerrainForTestTypemethod - Implement test scenario
- Inherit from
PathfindingAgentclass - Implement custom behavior logic
- Integrate with
PathfindingTestManager