Sunday, April 20, 2014

LIME Status Report (04/20/2014)

I should have known better than to congratulate myself on being ahead of schedule last month.  Life got in the way, as it often does, and slowed my progress.  Nevertheless, progress was made, and LIME 4 is now at the point where I wanted it to be three weeks ago.  I'm not going to complain, though, because I'm pretty happy with the way it's turning out.  There are bugs to address, testing to do, some refactoring and optimization to consider, and a couple more requirements to implement, but it's gradually turning into the product I envisioned.

For now, my son, my cat, and myself are the actors, but we're good enough to show that it works!



Accomplishments
  • Designed and implemented the Actor palette.
  • Added a toggle button to the View panel for actors.
  • Modified the high-level file I/O classes to support reading and writing of actor lists.
  • Began to reconsider the relationship between the actor lists and the tile maps.  In short, the tile map view only needs the actor list for rendering, and therefore a composition relationship is unnecessary and undesirable.  Instead, the actor list could be passed as a parameter to the tile map view's render function.  This does add one complication though -- how to load the actor file for a game world.
  • Optimized the core game loop by enhancing the game timer and moving some initialization outside of the loop.

Known Issues
  • Functionality Issues
    • The New Map dialog creates the map files in the app root rather than the data directory.
    • Full-screen mode quit working as soon as I started porting functionality from MHF 2 to MHF 3.  Gotta find out why.
  • Usability Issues
    • If the layer currently being edited is hidden, the view panel gets out of sync with the edit panel.
    • The buttons on the New Map screen's cycle controls are occasionally unresponsive.
    • The tile map view's anchor space doesn't always scale correctly when resizing the editor pane.  I've had trouble reproducing this on command, but it happens occasionally.
  • Performance Issues
    • When the tile ID view option is turned on for large tile sets, the frame rate drops sharply to the point of being unusable.
  • Supportability Issues
    • The keyboard event handler for the Android platform doesn't seem to work at all.  Testing and troubleshooting are in order.
    • The Android platform layer doesn't yet have the ability to rotate the captions for the slide-out tabs or dynamically resize a graphics canvas.  Currently a low priority since this tool is intended to be used on a developer's PC, but something that needs to be addressed eventually.
Next Steps
  • High Priority:
    • Automatically populate the tile set selector on the New Map dialog.
    • Fix the dependency between the view panel and the edit panel.
    • Make the New Map dialog save map files to the right location.
  • Medium Priority:
    • Implement isometric modes.
    • Improve performance of tile ID renders.
    • Test, test, test!
  • Low Priority:
    • Fix full-screen exclusive mode for the PC platform.
    • Update and test WallTileTransformer.
    • Do more testing on FloorTileTransformer to make sure the vertices are right.

No comments:

Post a Comment