From 7f706aa063d56331149d0dcc5886dbdba4e4a364 Mon Sep 17 00:00:00 2001 From: Michael Bayne Date: Mon, 13 Jan 2003 22:57:46 +0000 Subject: [PATCH] Updates to reflect new media architecture. git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2123 542714f4-19e9-0310-aa3c-eee0fc999fb1 --- .../com/threerings/cast/CharSpriteViz.java | 8 ++-- .../com/threerings/cast/builder/TestApp.java | 9 ++--- .../BundledComponentRepositoryTest.java | 7 ++-- .../threerings/media/ImageLoadingSpeed.java | 39 +++++++++++++------ .../com/threerings/media/TestIconManager.java | 5 ++- .../threerings/media/sound/SoundTestApp.java | 6 +-- .../bundle/BundledTileSetRepositoryTest.java | 10 ++--- .../com/threerings/media/util/TraceViz.java | 3 +- .../miso/client/ScrollingScene.java | 8 +++- .../miso/client/ScrollingTestApp.java | 14 +++---- .../com/threerings/miso/viewer/ViewerApp.java | 10 ++--- .../miso/viewer/ViewerSceneViewPanel.java | 26 ++++++------- 12 files changed, 82 insertions(+), 63 deletions(-) diff --git a/tests/src/java/com/threerings/cast/CharSpriteViz.java b/tests/src/java/com/threerings/cast/CharSpriteViz.java index 0f92ac37a..248e87c0f 100644 --- a/tests/src/java/com/threerings/cast/CharSpriteViz.java +++ b/tests/src/java/com/threerings/cast/CharSpriteViz.java @@ -1,5 +1,5 @@ // -// $Id: CharSpriteViz.java,v 1.2 2002/07/19 20:13:29 shaper Exp $ +// $Id: CharSpriteViz.java,v 1.3 2003/01/13 22:57:45 mdb Exp $ package com.threerings.cast; @@ -16,7 +16,7 @@ import javax.swing.JPanel; import com.samskivert.swing.util.SwingUtil; -import com.threerings.media.ImageManager; +import com.threerings.media.image.ImageManager; import com.threerings.resource.ResourceManager; import com.threerings.util.DirectionCodes; import com.threerings.util.DirectionUtil; @@ -40,7 +40,7 @@ public class CharSpriteViz extends JPanel // put the sprite in the appropriate action mode _sprite.setRestingAction(action); _sprite.setFollowingPathAction(action); - _sprite.setActionSequence(action); + _sprite.setActionSequence(action, false); addMouseMotionListener(this); } @@ -107,7 +107,7 @@ public class CharSpriteViz extends JPanel ImageManager imgr = new ImageManager(rmgr, frame); ComponentRepository crepo = new BundledComponentRepository(rmgr, imgr, "components"); - CharacterManager charmgr = new CharacterManager(crepo); + CharacterManager charmgr = new CharacterManager(imgr, crepo); CharacterComponent ccomp = crepo.getComponent(args[0], args[1]); frame.getContentPane().add( diff --git a/tests/src/java/com/threerings/cast/builder/TestApp.java b/tests/src/java/com/threerings/cast/builder/TestApp.java index 8cf7228f6..10811b883 100644 --- a/tests/src/java/com/threerings/cast/builder/TestApp.java +++ b/tests/src/java/com/threerings/cast/builder/TestApp.java @@ -1,5 +1,5 @@ // -// $Id: TestApp.java,v 1.15 2002/07/19 20:13:29 shaper Exp $ +// $Id: TestApp.java,v 1.16 2003/01/13 22:57:45 mdb Exp $ package com.threerings.cast.builder; @@ -8,7 +8,7 @@ import javax.swing.JFrame; import com.samskivert.swing.util.SwingUtil; -import com.threerings.media.ImageManager; +import com.threerings.media.image.ImageManager; import com.threerings.resource.ResourceManager; import com.threerings.cast.Log; @@ -16,8 +16,6 @@ import com.threerings.cast.CharacterManager; import com.threerings.cast.ComponentRepository; import com.threerings.cast.bundle.BundledComponentRepository; -import com.threerings.miso.scene.MisoCharacterSprite; - public class TestApp { public TestApp (String[] args) @@ -33,8 +31,7 @@ public class TestApp ComponentRepository crepo = new BundledComponentRepository(rmgr, imgr, "components"); - CharacterManager charmgr = new CharacterManager(crepo); - charmgr.setCharacterClass(MisoCharacterSprite.class); + CharacterManager charmgr = new CharacterManager(imgr, crepo); // initialize the frame ((TestFrame)_frame).init(charmgr, crepo); diff --git a/tests/src/java/com/threerings/cast/bundle/BundledComponentRepositoryTest.java b/tests/src/java/com/threerings/cast/bundle/BundledComponentRepositoryTest.java index 9a8fa7685..59c8be79b 100644 --- a/tests/src/java/com/threerings/cast/bundle/BundledComponentRepositoryTest.java +++ b/tests/src/java/com/threerings/cast/bundle/BundledComponentRepositoryTest.java @@ -1,13 +1,14 @@ // -// $Id: BundledComponentRepositoryTest.java,v 1.7 2002/07/19 20:13:29 shaper Exp $ +// $Id: BundledComponentRepositoryTest.java,v 1.8 2003/01/13 22:57:45 mdb Exp $ package com.threerings.cast.bundle; import java.util.Iterator; import com.samskivert.util.StringUtil; -import com.threerings.resource.ResourceManager; -import com.threerings.media.ImageManager; + import com.threerings.cast.ComponentClass; +import com.threerings.media.image.ImageManager; +import com.threerings.resource.ResourceManager; import junit.framework.Test; import junit.framework.TestCase; diff --git a/tests/src/java/com/threerings/media/ImageLoadingSpeed.java b/tests/src/java/com/threerings/media/ImageLoadingSpeed.java index ee0f8213f..90ecbe554 100644 --- a/tests/src/java/com/threerings/media/ImageLoadingSpeed.java +++ b/tests/src/java/com/threerings/media/ImageLoadingSpeed.java @@ -1,11 +1,13 @@ // -// $Id: ImageLoadingSpeed.java,v 1.1 2002/12/23 20:32:28 mdb Exp $ +// $Id: ImageLoadingSpeed.java,v 1.2 2003/01/13 22:57:45 mdb Exp $ package com.threerings.media; import java.awt.Image; import java.io.*; + import com.threerings.resource.ResourceManager; +import com.threerings.media.image.ImageManager; /** * Tests our image loading speed. @@ -36,17 +38,30 @@ public class ImageLoadingSpeed // System.exit(-1); // } - for (int iter = 0; iter < IMAGE_LOAD_ITERS; iter++) { + int iter = 0; + while (true) { +// for (int iter = 0; iter < IMAGE_LOAD_ITERS; iter++) { String path = args[iter%args.length]; if (path.startsWith("rsrc/")) { path = path.substring(5); } Image image = null; - try { - image = imgr.loadImage(path); - } catch (IOException ioe) { - ioe.printStackTrace(System.err); - System.exit(-1); +// image = imgr.getImage(path); + image = imgr.getImage("components", path); + + if (++iter == 100) { + long now = System.currentTimeMillis(); + long elapsed = now - start; + System.err.println("Loaded " + args.length + + " images a total of " + iter + + " times in " + elapsed + "ms."); + System.err.println("An average of " + (elapsed/iter) + + "ms per image."); + start = now; + iter = 0; + + System.gc(); + try { Thread.sleep(5000); } catch (Throwable t) {} } } @@ -66,12 +81,12 @@ public class ImageLoadingSpeed // System.exit(-1); // } - long elapsed = System.currentTimeMillis() - start; +// long elapsed = System.currentTimeMillis() - start; - System.err.println("Loaded " + args.length + " images a total of " + - IMAGE_LOAD_ITERS + " times in " + elapsed + "ms."); - System.err.println("An average of " + (elapsed/IMAGE_LOAD_ITERS) + - "ms per image."); +// System.err.println("Loaded " + args.length + " images a total of " + +// IMAGE_LOAD_ITERS + " times in " + elapsed + "ms."); +// System.err.println("An average of " + (elapsed/IMAGE_LOAD_ITERS) + +// "ms per image."); } protected static final int IMAGE_LOAD_ITERS = 100; diff --git a/tests/src/java/com/threerings/media/TestIconManager.java b/tests/src/java/com/threerings/media/TestIconManager.java index cc05f2f13..56abc57c8 100644 --- a/tests/src/java/com/threerings/media/TestIconManager.java +++ b/tests/src/java/com/threerings/media/TestIconManager.java @@ -1,5 +1,5 @@ // -// $Id: TestIconManager.java,v 1.2 2002/07/19 20:13:29 shaper Exp $ +// $Id: TestIconManager.java,v 1.3 2003/01/13 22:57:45 mdb Exp $ package com.threerings.media; @@ -9,8 +9,9 @@ import javax.swing.*; import com.samskivert.swing.HGroupLayout; import com.samskivert.swing.util.SwingUtil; -import com.threerings.resource.ResourceManager; +import com.threerings.media.image.ImageManager; import com.threerings.media.tile.TileManager; +import com.threerings.resource.ResourceManager; /** * Does something extraordinary. diff --git a/tests/src/java/com/threerings/media/sound/SoundTestApp.java b/tests/src/java/com/threerings/media/sound/SoundTestApp.java index 7867c62d8..a596f7f39 100644 --- a/tests/src/java/com/threerings/media/sound/SoundTestApp.java +++ b/tests/src/java/com/threerings/media/sound/SoundTestApp.java @@ -1,7 +1,7 @@ // -// $Id: SoundTestApp.java,v 1.3 2002/12/10 21:36:53 mdb Exp $ +// $Id: SoundTestApp.java,v 1.4 2003/01/13 22:57:45 mdb Exp $ -package com.threerings.media; +package com.threerings.media.sound; import com.samskivert.util.StringUtil; import com.threerings.resource.ResourceManager; @@ -27,7 +27,7 @@ public class SoundTestApp for (int ii = 0; ii < _keys.length; ii++) { System.out.println("Playing " + _keys[ii] + "."); _soundmgr.play(SoundManager.DEFAULT, - "com/threerings/media/", _keys[ii]); + "com/threerings/media/sound/", _keys[ii]); } _soundmgr.shutdown(); diff --git a/tests/src/java/com/threerings/media/tile/bundle/BundledTileSetRepositoryTest.java b/tests/src/java/com/threerings/media/tile/bundle/BundledTileSetRepositoryTest.java index 177aa3794..dc94b3eb3 100644 --- a/tests/src/java/com/threerings/media/tile/bundle/BundledTileSetRepositoryTest.java +++ b/tests/src/java/com/threerings/media/tile/bundle/BundledTileSetRepositoryTest.java @@ -1,11 +1,12 @@ // -// $Id: BundledTileSetRepositoryTest.java,v 1.7 2002/07/19 20:13:30 shaper Exp $ +// $Id: BundledTileSetRepositoryTest.java,v 1.8 2003/01/13 22:57:45 mdb Exp $ package com.threerings.media.tile.bundle; import java.util.Iterator; + +import com.threerings.media.image.ImageManager; import com.threerings.resource.ResourceManager; -import com.threerings.media.ImageManager; import junit.framework.Test; import junit.framework.TestCase; @@ -22,9 +23,8 @@ public class BundledTileSetRepositoryTest extends TestCase try { ResourceManager rmgr = new ResourceManager("rsrc"); rmgr.initBundles(null, "config/resource/manager.properties", null); - ImageManager imgr = new ImageManager(rmgr, null); - BundledTileSetRepository repo = - new BundledTileSetRepository(rmgr, imgr, "tilesets"); + BundledTileSetRepository repo = new BundledTileSetRepository( + rmgr, new ImageManager(rmgr, null), "tilesets"); Iterator sets = repo.enumerateTileSets(); while (sets.hasNext()) { sets.next(); diff --git a/tests/src/java/com/threerings/media/util/TraceViz.java b/tests/src/java/com/threerings/media/util/TraceViz.java index 4e71dbc18..61aacbd65 100644 --- a/tests/src/java/com/threerings/media/util/TraceViz.java +++ b/tests/src/java/com/threerings/media/util/TraceViz.java @@ -1,5 +1,5 @@ // -// $Id: TraceViz.java,v 1.1 2002/11/15 09:29:40 shaper Exp $ +// $Id: TraceViz.java,v 1.2 2003/01/13 22:57:45 mdb Exp $ package com.threerings.media.util; @@ -22,6 +22,7 @@ import com.samskivert.swing.VGroupLayout; import com.samskivert.swing.util.SwingUtil; import com.threerings.media.Log; +import com.threerings.media.image.ImageUtil; /** * Simple application for testing image trace functionality. diff --git a/tests/src/java/com/threerings/miso/client/ScrollingScene.java b/tests/src/java/com/threerings/miso/client/ScrollingScene.java index 563f96695..0aee7c192 100644 --- a/tests/src/java/com/threerings/miso/client/ScrollingScene.java +++ b/tests/src/java/com/threerings/miso/client/ScrollingScene.java @@ -1,5 +1,5 @@ // -// $Id: ScrollingScene.java,v 1.9 2002/10/01 04:44:23 shaper Exp $ +// $Id: ScrollingScene.java,v 1.10 2003/01/13 22:57:45 mdb Exp $ package com.threerings.miso.scene; @@ -77,6 +77,12 @@ public class ScrollingScene implements DisplayMisoScene // nothing for now } + // documentation inherited from interface + public boolean canTraverse (Object trav, int x, int y) + { + return true; + } + protected BaseTile[] _tiles; protected Random _rand = new Random(); diff --git a/tests/src/java/com/threerings/miso/client/ScrollingTestApp.java b/tests/src/java/com/threerings/miso/client/ScrollingTestApp.java index 4b235079e..d5e35d3d2 100644 --- a/tests/src/java/com/threerings/miso/client/ScrollingTestApp.java +++ b/tests/src/java/com/threerings/miso/client/ScrollingTestApp.java @@ -1,5 +1,5 @@ // -// $Id: ScrollingTestApp.java,v 1.17 2002/09/17 19:11:13 mdb Exp $ +// $Id: ScrollingTestApp.java,v 1.18 2003/01/13 22:57:45 mdb Exp $ package com.threerings.miso.scene; @@ -19,7 +19,7 @@ import com.samskivert.util.Config; import com.threerings.resource.ResourceManager; import com.threerings.media.FrameManager; -import com.threerings.media.ImageManager; +import com.threerings.media.image.ImageManager; import com.threerings.media.util.LinePath; import com.threerings.media.util.MultiFrameImage; import com.threerings.media.util.MultiFrameImageImpl; @@ -34,6 +34,7 @@ import com.threerings.media.tile.bundle.BundledTileSetRepository; import com.threerings.cast.CharacterComponent; import com.threerings.cast.CharacterDescriptor; import com.threerings.cast.CharacterManager; +import com.threerings.cast.CharacterSprite; import com.threerings.cast.NoSuchComponentException; import com.threerings.cast.bundle.BundledComponentRepository; @@ -94,8 +95,7 @@ public class ScrollingTestApp // create the various managers BundledComponentRepository crepo = new BundledComponentRepository(rmgr, imgr, "components"); - CharacterManager charmgr = new CharacterManager(crepo); - charmgr.setCharacterClass(MisoCharacterSprite.class); + CharacterManager charmgr = new CharacterManager(imgr, crepo); // create our scene view panel _panel = new SceneViewPanel(_framemgr, new IsoSceneViewModel()); @@ -109,11 +109,11 @@ public class ScrollingTestApp new int[] { ccomp.componentId }, null); // now create the actual sprite and stick 'em in the scene - _ship = (MisoCharacterSprite)charmgr.getCharacter(desc); + _ship = charmgr.getCharacter(desc); if (_ship != null) { _ship.setFollowingPathAction("sailing"); _ship.setRestingAction("sailing"); - _ship.setActionSequence("sailing"); + _ship.setActionSequence("sailing", true); _ship.setLocation(_panel.getModel().bounds.width/2, _panel.getModel().bounds.height/2); _panel.addSprite(_ship); @@ -219,5 +219,5 @@ public class ScrollingTestApp protected SceneViewPanel _panel; /** The ship in the center of our screen. */ - protected MisoCharacterSprite _ship; + protected CharacterSprite _ship; } diff --git a/tests/src/java/com/threerings/miso/viewer/ViewerApp.java b/tests/src/java/com/threerings/miso/viewer/ViewerApp.java index c7ae5aacb..94bea17f9 100644 --- a/tests/src/java/com/threerings/miso/viewer/ViewerApp.java +++ b/tests/src/java/com/threerings/miso/viewer/ViewerApp.java @@ -1,5 +1,5 @@ // -// $Id: ViewerApp.java,v 1.34 2002/07/19 20:13:30 shaper Exp $ +// $Id: ViewerApp.java,v 1.35 2003/01/13 22:57:46 mdb Exp $ package com.threerings.miso.viewer; @@ -12,9 +12,9 @@ import java.io.IOException; import com.samskivert.swing.util.SwingUtil; import com.threerings.resource.ResourceManager; -import com.threerings.media.FrameManager; -import com.threerings.media.ImageManager; +import com.threerings.media.FrameManager; +import com.threerings.media.image.ImageManager; import com.threerings.media.tile.bundle.BundledTileSetRepository; import com.threerings.cast.CharacterManager; @@ -22,7 +22,6 @@ import com.threerings.cast.bundle.BundledComponentRepository; import com.threerings.miso.Log; import com.threerings.miso.scene.DisplayMisoSceneImpl; -import com.threerings.miso.scene.MisoCharacterSprite; import com.threerings.miso.scene.MisoSceneModel; import com.threerings.miso.scene.tools.xml.MisoSceneParser; import com.threerings.miso.tile.MisoTileManager; @@ -81,8 +80,7 @@ public class ViewerApp // create the various managers BundledComponentRepository crepo = new BundledComponentRepository(rmgr, imgr, "components"); - CharacterManager charmgr = new CharacterManager(crepo); - charmgr.setCharacterClass(MisoCharacterSprite.class); + CharacterManager charmgr = new CharacterManager(imgr, crepo); // create our scene view panel _panel = new ViewerSceneViewPanel(ctx, _framemgr, charmgr, crepo); diff --git a/tests/src/java/com/threerings/miso/viewer/ViewerSceneViewPanel.java b/tests/src/java/com/threerings/miso/viewer/ViewerSceneViewPanel.java index 94fd96eb1..a1d7614b2 100644 --- a/tests/src/java/com/threerings/miso/viewer/ViewerSceneViewPanel.java +++ b/tests/src/java/com/threerings/miso/viewer/ViewerSceneViewPanel.java @@ -1,5 +1,5 @@ // -// $Id: ViewerSceneViewPanel.java,v 1.52 2002/12/05 23:06:30 mdb Exp $ +// $Id: ViewerSceneViewPanel.java,v 1.53 2003/01/13 22:57:46 mdb Exp $ package com.threerings.miso.viewer; @@ -14,6 +14,7 @@ import com.threerings.media.FrameManager; import com.threerings.cast.CharacterDescriptor; import com.threerings.cast.CharacterManager; +import com.threerings.cast.CharacterSprite; import com.threerings.cast.ComponentRepository; import com.threerings.cast.util.CastUtil; @@ -30,7 +31,6 @@ import com.threerings.miso.Log; import com.threerings.miso.scene.DisplayMisoScene; import com.threerings.miso.scene.IsoSceneView; import com.threerings.miso.scene.IsoSceneViewModel; -import com.threerings.miso.scene.MisoCharacterSprite; import com.threerings.miso.scene.SceneViewPanel; import com.threerings.miso.scene.util.IsoUtil; import com.threerings.miso.util.MisoContext; @@ -85,15 +85,14 @@ public class ViewerSceneViewPanel extends SceneViewPanel /** * Creates a new sprite. */ - protected MisoCharacterSprite createSprite ( + protected CharacterSprite createSprite ( SpriteManager spritemgr, CharacterManager charmgr, CharacterDescriptor desc) { - MisoCharacterSprite s = - (MisoCharacterSprite)charmgr.getCharacter(desc); + CharacterSprite s = charmgr.getCharacter(desc); if (s != null) { // start 'em out standing - s.setActionSequence(MisoCharacterSprite.STANDING); + s.setActionSequence(CharacterSprite.STANDING, false); s.setLocation(300, 300); s.addSpriteObserver(this); spritemgr.addSprite(s); @@ -108,7 +107,7 @@ public class ViewerSceneViewPanel extends SceneViewPanel protected void createDecoys ( SpriteManager spritemgr, CharacterManager charmgr) { - _decoys = new MisoCharacterSprite[NUM_DECOYS]; + _decoys = new CharacterSprite[NUM_DECOYS]; for (int ii = 0; ii < NUM_DECOYS; ii++) { _decoys[ii] = createSprite(spritemgr, charmgr, _descDecoy); } @@ -162,7 +161,7 @@ public class ViewerSceneViewPanel extends SceneViewPanel * screen coordinates. Returns whether a path was successfully * assigned. */ - protected boolean createPath (MisoCharacterSprite s, int x, int y) + protected boolean createPath (CharacterSprite s, int x, int y) { // get the path from here to there LineSegmentPath path = (LineSegmentPath)_view.getPath(s, x, y); @@ -174,13 +173,14 @@ public class ViewerSceneViewPanel extends SceneViewPanel // start the sprite moving along the path path.setVelocity(100f/1000f); s.move(path); + System.out.println("moving " + s + " on " + path); return true; } /** * Assigns a new random path to the given sprite. */ - protected void createRandomPath (MisoCharacterSprite s) + protected void createRandomPath (CharacterSprite s) { Dimension d = _viewmodel.bounds.getSize(); @@ -195,7 +195,7 @@ public class ViewerSceneViewPanel extends SceneViewPanel public void handleEvent (SpriteEvent event) { if (event instanceof PathCompletedEvent) { - MisoCharacterSprite s = (MisoCharacterSprite)event.getSprite(); + CharacterSprite s = (CharacterSprite)event.getSprite(); if (s != _sprite) { // move the sprite to a new random location @@ -205,7 +205,7 @@ public class ViewerSceneViewPanel extends SceneViewPanel } /** The number of decoy characters milling about. */ - protected static final int NUM_DECOYS = 10; + protected static final int NUM_DECOYS = 0; /** The character descriptor for the user character. */ protected CharacterDescriptor _descUser; @@ -214,8 +214,8 @@ public class ViewerSceneViewPanel extends SceneViewPanel protected CharacterDescriptor _descDecoy; /** The sprite we're manipulating within the view. */ - protected MisoCharacterSprite _sprite; + protected CharacterSprite _sprite; /** The test sprites that meander about aimlessly. */ - protected MisoCharacterSprite _decoys[]; + protected CharacterSprite _decoys[]; }