Conversation
…and Elementary Cellular Automata
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This pull request introduces comprehensive support for grid-based simulation modules to the core engine and documentation. It adds a new
ModuleRole.Gridfor modules that simulate 2D cellular fields (such as Game of Life and reaction-diffusion), updates the engine API to support grid operations, and provides extensive documentation for authoring, using, and understanding grid modules and their interop with particles. Additionally, a newGridGeometryutility is introduced for consistent world-to-cell conversions across runtimes.Core engine and API enhancements:
gridsarray toEngineOptions, and exposinggetGrid(moduleName)andsetGrid(moduleName, data)methods on theEngineclass for explicit grid state read/write. [1] [2] [3]GridGeometryutility class ingrid/geometry.tsto provide consistent world↔cell conversions and grid dimension calculations across both CPU and WebGPU runtimes.Documentation and authoring guides:
README.md,AGENTS.md,docs/user-guide.md,docs/maintainer-guide.md,docs/module-author-guide.md,docs/playground-user-guide.md) to describe grid modules, their API, lifecycle, interop modules (GridFieldForce,ParticleDepositGrid), and usage patterns. [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11] [12]Key documentation and authoring improvements:
init,step,post,render), grid specs, and best practices for performance and correctness.Summary of the most important changes:
1. Core engine and API:
gridsarray,getGrid,setGridmethods). [1] [2] [3]GridGeometryutility for world↔cell conversions and grid dimension calculations.2. Documentation and guides:
3. Interop and patterns:
GridFieldForce,ParticleDepositGrid) for particle↔grid workflows, with real-world example patterns and authoring notes. [1] [2]These changes significantly expand the engine's capabilities to support grid-based simulations and provide clear guidance for both users and module authors.