/Arcus-Engine

A Dart game engine based on Flutter Canvas and Custom Painter

Primary LanguageDartMIT LicenseMIT

Arcus Engine

A game engine made with Dart and Flutter, based mainly on Canvas/Custom-Painter




Todo

โœ”๏ธ (done) โ— (important) ๐Ÿงช (needs testing) โŒ (problem) ๐Ÿšฉ (revisit) ๐Ÿš€ (launch) ๐Ÿ”จ (fix) ๐Ÿ‘พ (bug) ๐Ÿญ(in progress)

Release v0.1

  • Custom events on canvas elements ๐Ÿญ (click is working, need to support drag also and hover)
    • check effects to use centered pos when clicked (could be a self property like useCenterPosition=true)
  • keyboard events (https://api.flutter.dev/flutter/widgets/KeyboardListener-class.html)
  • Depth sorting โœ”๏ธ
    • Event honoring depth, so only first is supported โœ”๏ธ
    • Make drag event
  • Tweens ๐Ÿญ
    • Add enumerable properties e.g (x, y) or make it read dot notation
    • Tween working with item Id now (so all items should have an id)
  • Sprite rotation
  • Pooling ๐Ÿšฉ
  • port Arcade physics โ—
    • Simple physics ๐Ÿญ
    • generalize the collision ๐Ÿญ
    • fix collide with bounds โœ”๏ธ
  • create master Sprite class for all game objects to inherit basic properties via mixin โœ”๏ธ
  • Sprite cache โœ”๏ธ
  • loader class for all assets โœ”๏ธ
  • audio (https://pub.dev/packages/just_audio) ๐Ÿญ
    • Basic sound playback, working โœ”๏ธ
    • Need to add repeating background sound ๐Ÿงช
    • Might need some preloading work or cache
    • Add global mute ๐Ÿงช
  • Shapes โœ”๏ธ
  • Group component ๐Ÿญ
  • Plugin template ๐Ÿญ
  • Proper tilemap and culling
  • Autoscroll tile-sprite
  • Particles ๐Ÿญ
  • Camera ๐Ÿญ
    • need to test with scrolling sprite (WIP)
    • need to test moving sprite
  • Get name for library... โ—
    • Arcus โœ”๏ธ

Sample games for v0.1

  • whack a mole
  • auto-runner
  • Bullet-hell
  • Arcanoid