Skip to content

Conversation

Copilot
Copy link

@Copilot Copilot AI commented Aug 1, 2025

This PR adds extensive developer documentation to help developers understand ProBuilder's architecture, algorithms, and development workflows. The documentation is organized in a new Developer-Docs/ folder with multiple focused documents.

What's Added

The documentation covers ProBuilder's complete architecture from a developer perspective:

  • System Architecture: High-level overview of the modular design with Runtime, Editor, and External library layers
  • Core Components: Deep dive into fundamental classes like ProBuilderMesh, Face, Edge, Vertex, and the sophisticated shared vertex system
  • Mesh Operations: Detailed coverage of algorithms including triangulation, extrusion, subdivision, and CSG operations
  • Editor Tools: Complete guide to the editor architecture, selection system, and Unity integration
  • Development Guide: Practical workflows for bug fixes, feature development, and performance optimization

Key Algorithm Documentation

The documentation includes detailed explanations and external references for the major algorithms used:

  • Delaunay Triangulation: ProBuilder uses the Poly2Tri library implementing sweep line triangulation
  • Constructive Solid Geometry: BSP tree-based boolean operations for mesh combination
  • Winged Edge Data Structure: Advanced topology navigation system for efficient mesh traversal
  • k-d Trees: Spatial indexing for performance-critical operations like vertex welding

Each algorithm section includes links to authoritative sources and explains any differences from standard implementations.

Structure

Developer-Docs/
├── README.md              # Navigation and quick start
├── Overview.md            # System architecture overview  
├── Core-Components.md     # Fundamental classes and data structures
├── Mesh-Operations.md     # Algorithms and mesh manipulation
├── Editor-Tools.md        # Editor architecture and tools
└── Getting-Started.md     # Practical development workflows

Benefits for Developers

This documentation provides developers with:

  • Clear Entry Points: Know exactly where to start when fixing bugs or adding features
  • Algorithm Understanding: Comprehensive explanations of complex geometric algorithms
  • Best Practices: Established patterns for code organization, error handling, and testing
  • Performance Guidance: Optimization techniques and complexity analysis
  • Integration Patterns: How to properly integrate with Unity's editor systems

The documentation totals over 1,700 lines covering everything from high-level architecture to specific debugging techniques, giving developers the knowledge needed to work effectively with ProBuilder's sophisticated codebase.


💬 Share your feedback on Copilot coding agent for the chance to win a $200 gift card! Click here to start the survey.

@unity-cla-assistant
Copy link

CLA assistant check
Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.
You have signed the CLA already but the status is still pending? Let us recheck it.

@Copilot Copilot AI changed the title [WIP] Hi, I would like you to create a set of documentation aimed at developers working on the ProBuilder code. The documentation should live in a new folder called 'Developer-Docs' and should be in markdown format. To create the documentation, you should l... Add comprehensive developer documentation for ProBuilder codebase Aug 1, 2025
Copilot finished work on behalf of TimAidleyAtUnity August 1, 2025 22:21
@Copilot Copilot AI requested a review from TimAidleyAtUnity August 1, 2025 22:21
@codecov-github-com
Copy link

codecov-github-com bot commented Aug 1, 2025

Codecov Report

All modified and coverable lines are covered by tests ✅

@@            Coverage Diff             @@
##           master     #617      +/-   ##
==========================================
+ Coverage   33.66%   33.68%   +0.02%     
==========================================
  Files         277      277              
  Lines       34785    34785              
==========================================
+ Hits        11709    11718       +9     
+ Misses      23076    23067       -9     
Flag Coverage Δ
mac_trunk 33.47% <ø> (+0.01%) ⬆️
win_trunk 33.36% <ø> (+0.01%) ⬆️

Flags with carried forward coverage won't be shown. Click here to find out more.

see 2 files with indirect coverage changes

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants