- Reworked colorization repository such that we now have arbitrary named
"colorization classes" which can be used by various and sundry entities
to colorize themselves.
- Added support for individual object colorizations as well as "spots"
that go along with objects (will be used to automatically create portals
into buildings and automatically position users properly when at a
"station").
- Repackaged things in miso to more closely mimic what we do everywhere
else (no more miso.scene, now we have miso.data and miso.client).
- Fixed up miso scene XML representation so that objects can more easily
be expanded to have yet more stuff if we think of more stuff that they
might aught to have in the future. Structured the miso scene model so
that "uninteresting" objects (those that simply sit somewhere and don't
do anything) take up a lot less memory than "interesting" objects (those
that have action strings, "spots", colorizations and the works). I may
want to roll colorizations into the "uninteresting" realm, but that
remains to be seen.
- Made it possible for object tilesets to specify default render
priorities for objects in that tileset. This will hopefully allow us to
get by without any "custom" render priorities that are specified on
scene objects, instead relying on the default priorities to resolve
common conflicts.
There are surely other cleanups in there, but I think that was the major
thrust of it.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2228 542714f4-19e9-0310-aa3c-eee0fc999fb1
It no longer stores base tiles that are not visable in the view,
in fact it stores the base tiles in an array almost half the size as the
fully expanded scene array, and this new smaller array is used everywhere:
when saving the scene, serializing it to the user, or saving it in
the database.
We must now use the getBaseTile() and setBaseTile() methods to access the
base tiles because they are stored in this compressed format.
Also removed the fringe layer completely from the MisoSceneModel.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@1369 542714f4-19e9-0310-aa3c-eee0fc999fb1
model where it resides happily with existing toggles for showing
coordinates and sprite paths; did some other cosmetic cleanup.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@1008 542714f4-19e9-0310-aa3c-eee0fc999fb1
external entity instruct us to do so. We always want them and they're not
that expensive to calculate.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@1005 542714f4-19e9-0310-aa3c-eee0fc999fb1
things compile and most things run so this is a good time to checkpoint.
Let me recall:
- Refactored the whole scene deal.
- Revamped the XML parser stuff (now uses Digester).
- Rethought the tile management.
- Started tile bundle stuff.
- Wrote some tests.
- Did a bit of Mike-ification.
Onward and moreward.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@621 542714f4-19e9-0310-aa3c-eee0fc999fb1
scene view model more elegantly. Updated editor and scene view panel
to make use of said listener.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@499 542714f4-19e9-0310-aa3c-eee0fc999fb1
coordinates when editing a scene are valid before forging ahead with
scene modifications.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@436 542714f4-19e9-0310-aa3c-eee0fc999fb1
Standardized config key member data names to match those used in the
cocktail code.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@318 542714f4-19e9-0310-aa3c-eee0fc999fb1
conversion routines for fine and full coordinates, and moved
iso-related utility functions to IsoUtil.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@167 542714f4-19e9-0310-aa3c-eee0fc999fb1
should be. Made tile coordinate painting be centered within tile and
spaced based on actual font dimensions.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@146 542714f4-19e9-0310-aa3c-eee0fc999fb1