agb/examples
Corwin 68e981f3c8
Objects, again, again (#402)
* A redesign of objects giving the option of a more managed and an
unmanaged system.
* Managed system features
    * Z ordering (should be efficient, based on a doubly linked list).
* More than 128 objects if some are disabled (not currently efficient).
* Unmanaged
    * Same sprite system as before.
    * You control how objects get put in to OAM with the unmanaged OAM.
    
TODO before this is mergable:
* [x] Docs pass, aim for everything to have docs as before.
* [x] Tests, some of these needs some run time testing.
* [x] Affine matrices, I'm not leaving this to die this time.
* [x] Some API redo, so the names make sense / are similar to before.

Future work:
* The Sprite loader should keep most recently used sprites around and
upon allocation of a new sprite try unloading the least recently used
sprite. (Performance wise this would be a disaster as it would be doing
dealloc and alloc in vblank, so really we want to "learn" how much
buffer we should maintain and try to get that during GC).

- [x] Changelog updated
2023-04-25 21:14:49 +01:00
..
amplitude use fancy way of getting and setting slots 2023-04-25 21:07:31 +01:00
combo Objects, again, again (#402) 2023-04-25 21:14:49 +01:00
hyperspace-roll Objects, again, again (#402) 2023-04-25 21:14:49 +01:00
the-hat-chooses-the-wizard Objects, again, again (#402) 2023-04-25 21:14:49 +01:00
the-purple-night Objects, again, again (#402) 2023-04-25 21:14:49 +01:00