Truth be told, I can't take all the credit. The main reason I was able to find any time whatsoever for myself this week was because my mother was visiting and looking after my son while I did what I needed to do. And the design decisions I made were the result of a productive meeting with Professor Steve Santello. Naturally, I must give credit where it's due, so thanks Mom and Steve!
Here are the icons I made:
Here's a picture of them in their original homes based on my brainstorm sketches.
And finally, here is a picture of them in what are likely their final resting places guided by the input of veteran game developer Steve Santello.
Accomplishments
- Created icons for tile palette controls and toolbox buttons.
- Added buttons for palette mode selection.
- Added the toolbox and moved it to a more ergonomic position.
- Worked on file I/O for saving game world metadata and tile maps.
- Made some major design decisions regarding the scrolling problem, toolbox location, and palette mode functionality.
- Scrolling will be accomplished by buttons. The mouse scrolling functionality will be removed.
- The toolbox has been relocated to the bottom left rather than the bottom right to improve workflow productivity.
- The palette modes will be selectable independently of the layer being edited, so that any layer can conceivably contain tiles and actors both. (Not fully committed to this idea yet.)
Known Issues
- Functionality Issues
- If the grid line display is turned on, the lines show up in the full render of the map. The mouse cursor does too. The full render should show just the contents of the map, and not user interface elements.
- Usability Issues
- There is no visible indication of where the view space is positioned in the world. This may get disorienting when working on large maps. It has been advised to add a mini-map showing the location of the view space in the context of the entire map.
- The text boxes on the input dialogs have gotten fat. I'd bet money that it's a side-effect of a performance optimization I made to the MHLabel class a couple of weeks ago.
- Portability Issues
- The Android platform layer doesn't yet have the ability to rotate the captions for the slide-out tabs. 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:
- Add new scroll controls to the editor pane.
- Test the Save and Save As commands to make sure the exported data format is unchanged from that which is read in.
- Add "Actor Mode" to the palette window.
- Finish programming the toolbox buttons.
- Eraser Tool
- Tile Picker Tool
- Tile ID Toggle
- Create a slide-out panel for the layer view controls.
- Create a slide-out panel for the layer edit controls.
- Parameterize the slide-out panels so the position of their tabs can be specified -- top, bottom, left, or right edge of the panel.
- Medium Priority:
- Port the file dialog classes from the old engine into the new one. Make appropriate updates to match the style of the new engine's user and software interfaces.
- Test the tile palette with larger tile sets and different tile sizes.
- Add a rotate method to the MHBitmapImage interface that takes an angle of rotation and returns a copy of the image rotated by the input angle.
- Low Priority:
- Correct the bugs in the full map render view mentioned above.
- Implement the MHBitmapImage.rotate() method for the Android platform.
- Following the rotate example, implement other capabilities like scaling, image filtering, color blending, and alpha composites.
- Implement isometric modes.
No comments:
Post a Comment