Commit Graph

115 Commits

Author SHA1 Message Date
Michael Bayne 8d30af6db4 Added bundle dumper.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@708 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-11-29 22:10:54 +00:00
Michael Bayne be165a5c12 Added toString().
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@707 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-11-29 22:10:42 +00:00
Michael Bayne fef4803767 Extended the wrong class.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@706 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-11-29 22:10:28 +00:00
Michael Bayne 46b71392aa Moved some stuff into BundleUtil. Added code to support post-parsing
tileset validation.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@700 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-11-29 21:58:15 +00:00
Michael Bayne be5428a2f7 Moved some bundle stuff into BundleUtil. Added methods to support
post-parsing tileset validation.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@699 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-11-29 21:57:31 +00:00
Michael Bayne 4f6e0f7542 Documentation fixes.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@693 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-11-29 20:39:37 +00:00
Michael Bayne 075ea5e9fe Created a persistent tileset name to id broker implementation; wrote an
ANT task for creating tileset bundles.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@659 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-11-29 00:14:11 +00:00
Michael Bayne b7312882f4 Added enumerateTileSetIds().
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@658 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-11-29 00:13:42 +00:00
Michael Bayne 80072f7048 Added methods that take File instances in addition to those that take
String paths.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@657 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-11-29 00:13:20 +00:00
Michael Bayne 38a538a446 Implemented enumerateTileSetIds(); also added sanity check when scanning
the resource bundles at construct time.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@656 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-11-29 00:12:42 +00:00
Michael Bayne 73b952913a Removed some vestigal code.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@652 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-11-27 22:06:39 +00:00
Michael Bayne 629e8cbf74 Added code to parse gapSize and offsetPos.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@651 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-11-27 22:06:19 +00:00
Michael Bayne c1d2c5ab10 Fixed tile count computation.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@643 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-11-27 08:41:01 +00:00
Michael Bayne 36e3b8ff7f checkedGet() need not throw NoSuchTileException.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@642 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-11-27 08:40:34 +00:00
Michael Bayne 7ad2acca11 Bundles! Got all the tileset bundle stuff working and wrote some tests to
inrease my confidence in the use of the word "working".


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@635 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-11-21 02:42:16 +00:00
Michael Bayne 6c1051abed Repackaging now that I know what we want to do with the tools package.
Here's the policy:

Every top-level package has a tools package under which all subpackages
exist with their tools additions. For example:

com.threerings.media.tile.TileSet
com.threerings.media.tools.tile.XMLTileSetRuleSet
com.threerings.miso.scene.MisoScene
com.threerings.miso.tools.scene.EditableMisoScene


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@630 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-11-20 04:15:44 +00:00
Michael Bayne 233b7aca22 Modified TileSetBundle to load resources from a ResourceBundle instead of
a JarFile.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@629 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-11-20 03:48:41 +00:00
Michael Bayne 8ac5e7c9bb Created tileset repository that loads tiles from tileset bundles. It
obtains the bundles from the resource manager using the new resource set
facilities. Oh, it's all so resourceful.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@628 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-11-20 03:47:38 +00:00
Michael Bayne cc21ad8679 Javadoc fixes and cleanups.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@623 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-11-18 04:27:56 +00:00
Michael Bayne ae1052a371 Oh the vast sweeping changes, and they're not even close to complete, but
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
2001-11-18 04:09:23 +00:00
Michael Bayne 42eb80a104 Tile coordinate calculations were booched.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@611 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-11-08 06:58:57 +00:00
Michael Bayne feb2a2633e A bunch of intertwingled changes:
Refactored TileSet into TileSet, UniformTileSet, SwissArmyTileSet and
ObjectTileSet.

Removed dependence on the "root" system property from the
XMLSceneRepository (things either pass in full paths now or input streams
fetched via the resource manager).

Removed MisoUtil.createImageManager() because everyone does that by hand
now (which is good because some non-Miso things were using MisoUtil for
that).

I think that's it, but if there was something else, don't blame me. Blame
the monkeys.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@608 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-11-08 03:04:45 +00:00
Walter Korman 182306a5e4 Commented out verbose logging.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@582 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-11-02 01:09:08 +00:00
Walter Korman 39966726aa More work on character components. Revamped tile sets to allow them
to be constructed and used directly.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@581 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-11-01 01:40:43 +00:00
Walter Korman d102a47f13 Abstracted character-sprite-related activity to the cast package in
preparation for character component compositing and other
character-related antics.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@575 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-10-26 01:17:22 +00:00
Michael Bayne 0b181954df ImageManager was referencing miso.Log rather than media.Log.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@563 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-10-25 22:10:32 +00:00
Michael Bayne 976e219f56 Moved PerformanceMonitor and PerformanceObserver into media.util to remove
dependencies of media on miso.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@562 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-10-25 22:08:29 +00:00
Walter Korman 95d6896ef7 Altered character animations to separate standing image from walking
animation images.  Created and made use of basic single- and
multi-image implementations of the MultiFrameImage interface.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@559 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-10-25 18:06:17 +00:00
Walter Korman 6ff80f8a92 Don't merge dirty rectangles when moving a sprite if the rectangles
don't overlap.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@555 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-10-25 03:01:13 +00:00
Walter Korman 4b1f7af899 Merge any overlapping dirty rectangles before making them available to
outsiders.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@553 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-10-25 01:40:26 +00:00
Walter Korman 1dcad7f6b0 Create only a single dirty rectangle when a sprite moves. Cleaned up
bounds and rendered bounds discrepancies.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@552 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-10-25 01:39:38 +00:00
Walter Korman c839b61548 More polishing work on scene rendering.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@543 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-10-24 00:55:08 +00:00
Walter Korman e4a101cfc2 On path completion, clear the path before observers are notified so
that they can assign a new path to the sprite should they choose to do
so.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@523 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-10-23 01:59:50 +00:00
Walter Korman 841f732174 Pass the dirty rectangle for a dirty item to its paint() method so
that we can join multiple dirty rectangles for an item into a single
larger item but still rely on the dirty item to know how to paint
itself.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@515 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-10-22 18:14:57 +00:00
Walter Korman 7d667778b1 We only need the dimensions for creating the offscreen image.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@514 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-10-22 18:13:51 +00:00
Walter Korman 1c6e066444 Allow sprite sub-classes to modify their render offset more easily.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@513 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-10-22 18:13:09 +00:00
Walter Korman 9b3af10abe Renamed getPoint() for posterity.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@512 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-10-22 18:11:59 +00:00
Walter Korman 97940360dc Removed image from toString().
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@511 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-10-22 18:11:25 +00:00
Walter Korman ef97b42acd Revamped iso scene rendering yet again to remove unnecessary dirty
rectangle propagation and to only render the dirty portions of dirty
objects and sprites.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@509 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-10-19 23:26:31 +00:00
Walter Korman 336d99d0e9 Add sprites and objects to the dirty item list separately since the
latter have a bounds associated with them.  Dirty items can now paint
themselves to simplify scene-specific code.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@476 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-10-17 22:13:53 +00:00
Walter Korman c3229055e2 Basic implementation of an AnimatedView built on top of a JPanel.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@475 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-10-17 22:12:20 +00:00
Walter Korman 00d57dfb92 Added character manager and character descriptions. Allow tile sets
that have no specified layer.  Made the scene editor gracefully handle
the case where there are no valid tile sets for use with the selected
scene layer.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@461 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-10-15 23:53:43 +00:00
Walter Korman 3773da79a6 More work on object tiles. Revamped isometric scene rendering to
gather dirty sprites and objects and render after base and fringe tile
layers.  Add shadow tiles in the footprint of objects to make them
impassable.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@460 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-10-13 01:08:59 +00:00
Walter Korman 9fc38238a6 Tile sets that are specified as object tile sets now always produce
object tiles.  If no dimensions are specified for an object, it
defaults to 1x1 unit tile units.  The media package supports
specification of tilesets as object tile sets via the "layer"
attribute.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@450 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-10-12 16:36:58 +00:00
Walter Korman e8d41b9592 More work on object tiles. Simplified tile set manager as the editor
will now obtain tile set information directly from the tile sets.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@446 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-10-12 00:38:15 +00:00
Walter Korman 1cd07dc217 Notify sprites when a new path is begun. Made time-based animation
work.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@445 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-10-12 00:36:03 +00:00
Walter Korman ad7b64d4a1 Initial work on support for objects whose images span multiple tiles.
Made TileSet an interface.  Throw exceptions for unknown tile or tile
set requests.  General clean-up and documentation.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@427 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-10-11 00:41:27 +00:00
Walter Korman 95ba5ef9cf Separate the notion of tile passability from tile objects since
passability is specific to the miso layer.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@405 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-10-08 21:04:26 +00:00
Michael Bayne c69e46be21 Added getTileId() which returns the fully qualified tile id.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@352 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-09-28 01:24:27 +00:00
Walter Korman da1484a019 Don't attempt to put a tile in the tile cache if we didn't retrieve it
from the tileset manager successfully.  Cleaned up comments.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@350 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-09-28 00:44:31 +00:00