Skip to content

Separate Engine Core from Game-Specific Logic #59

Description

@aram-devdocs

Labels: enhancement, architecture, refactoring
Depends on: #1, #2, #3, #4

Description:
GameSdk mixes engine responsibilities with game-specific logic (tiled maps).

Tasks:

  • Extract tiled map logic into separate system
  • Create plugin/extension interface
  • Separate rendering, input, and game logic concerns
  • Implement dependency injection or service locator

Target Architecture:

pub struct Engine {
    renderer: Box<dyn Renderer>,
    input: InputSystem,
    resources: ResourceManager,
}

pub trait GameSystem {
    fn update(&mut self, engine: &mut Engine, dt: f32);
}

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions