Skip to content

Develop#43

Merged
amasiye merged 14 commits into
mainfrom
develop
Feb 5, 2026
Merged

Develop#43
amasiye merged 14 commits into
mainfrom
develop

Conversation

@amasiye

@amasiye amasiye commented Feb 5, 2026

Copy link
Copy Markdown
Contributor

This pull request introduces several new JSON schema files for game assets and refactors core engine classes to improve scene and game object management. The most significant changes are the addition of asset schemas for game objects, scenes, prefabs, and vectors, as well as major restructuring of the AbstractScene and GameObject classes to clarify responsibilities and improve code organization.

Asset Schema Additions:

  • Added gameobject.schema.json, scene.schema.json, prefab.schema.json, and vector2.schema.json to define structured formats for game objects, scenes, prefabs, and vector data, enabling better data validation and interoperability. [1] [2] [3] [4]
  • Updated main composer.json dependencies to include swaggest/json-schema and symfony/polyfill-php83 for schema validation and compatibility.

Core Engine Refactoring (AbstractScene):

  • Reorganized the AbstractScene class, moving properties and methods for scene lifecycle (awake, load, unload, start, stop, isStarted, isStopped) to clarify their purpose and improve maintainability. Scene metadata can now be injected via the constructor. [1] [2] [3] [4] [5]
  • Refactored world space and collision world space management into dedicated methods (createWorldSpace, setWorldSpace, setCollisionWorldSpace). [1] [2] [3]

Core Engine Refactoring (GameObject):

  • Clarified and separated the responsibilities of render, erase, and isActive methods, and ensured the getRenderer method is properly defined and documented. [1] [2] [3] [4] [5]

Examples and Miscellaneous:

  • Added a new example project pong with its own composer.json, .gitignore, and splash texture. Updated the collector example's splash texture for improved visual style. [1] [2] [3] [4]

These changes collectively improve the structure, maintainability, and extensibility of the engine and its asset pipeline.

@amasiye amasiye merged commit 2545ee6 into main Feb 5, 2026
0 of 2 checks passed
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.

1 participant