Commit Graph

61 Commits

Author SHA1 Message Date
Ray Greenwell be2bc4205b Anally removed Comparator.equals() implementations that overrode
Object.equals() with equivalent functionality.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@1799 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-10-15 21:01:39 +00:00
Walter Korman fd71c2a853 Take into account the x-offset of the rectangle within which the image is
being rendered when drawing the right edge of the image.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@1754 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-09-25 21:49:53 +00:00
Ray Greenwell e6d5adfb96 removed unneeded import
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@1730 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-09-20 21:35:32 +00:00
Ray Greenwell 6a64d45eed bugfixes
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@1704 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-09-17 21:58:25 +00:00
Michael Bayne 963dfe16a8 Created an mechanism for more sophisticated sequencing of animation
frames.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@1695 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-09-17 20:07:28 +00:00
Michael Bayne 380fa50610 Moved MultiFrameImage and friends from media.sprite into media.util
because they'll be used for both sprites and animations.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@1692 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-09-17 19:11:13 +00:00
Michael Bayne 88e423bdfa Created a path for moving things along the arc of a circle or ellipse.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@1691 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-09-17 04:00:37 +00:00
Michael Bayne 9ee8dde710 Added Ramanujan's formula for an approximation of the circumference of an
ellipse. I didn't end up using it in the ArcPath, but it will surely come
in handy eventually.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@1690 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-09-17 04:00:09 +00:00
Michael Bayne 90d0503cba Created TimedPath to factor out code common to paths that effect
themselves in a fixed period of time.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@1688 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-09-17 03:59:05 +00:00
Walter Korman 627ee5a1db Javadoc fixes.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@1557 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-07-02 23:15:53 +00:00
Michael Bayne d1b428158a Added getOrientation() as well.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@1547 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-06-26 23:51:06 +00:00
Michael Bayne fd05e9cdbc Added access to the pathable's bounds.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@1507 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-06-20 07:50:02 +00:00
Michael Bayne 7253a68c7c Death, taxes and refactoring: seriously revamped the low-level media code
to handle scrolling in a much cleaner and happier way. There's now a
VirtualMediaPanel which operates in virtual coordinates and can be made to
"view" any location in those virtual coordinates. By changing the view,
the view can be scrolled and the view can be made to center on a pathable
(generally a sprite) which will cause it to scroll around as the pathable
moves around in the virtual coordinate space.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@1475 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-06-18 22:25:33 +00:00
Ray Greenwell 541eb01446 Added a constructor that takes two Points and a direction.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@1455 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-06-12 23:33:03 +00:00
Michael Bayne ad5b77899f We want to truncate rather than round; it's faster and more consistent
with the other math done in the rendering code.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@1443 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-06-12 01:11:55 +00:00
Michael Bayne d7a41e61d8 We need the ability to instruct the path *not* to scroll with the view
(useful when the path is actually operating in virtual coordinates which
are mapped to scrolled view coordinates by the pathable).


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@1441 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-06-12 00:49:15 +00:00
Michael Bayne 544d2382ad Extracted position computation into static method.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@1438 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-06-11 02:39:14 +00:00
Michael Bayne cccd28ea9d Now that paths drive the scrolling of our view, we can go back to the
simple line path calculations that don't suffer from the accumulated
rounding errors that our previous method did.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@1434 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-06-11 00:03:30 +00:00
Michael Bayne 7d9dc465a0 Updated debugging output.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@1417 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-05-31 22:14:44 +00:00
Michael Bayne 2740e670cb Modified LinePath so that separate time stamps are kept for the x and y
directions, otherwise movement in one direction will unnecessarily reset
the "move stamp" for the other direction in which we didn't actually move.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@1415 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-05-31 20:47:32 +00:00
Michael Bayne af28864778 New interface related to repackaged path stuff.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@1414 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-05-31 07:34:45 +00:00
Michael Bayne ccbc47a7de Separated path code from sprite code so that we can have other things
follow a path (specifically, I want to allow the media panel to be
"scrolled" along a path).


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@1409 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-05-31 03:38:03 +00:00
Michael Bayne 325433a763 Created a path that follows a single straight line and does so using the
same math that the scrolling code does to scroll in a straight line.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@1377 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-05-17 21:14:06 +00:00
Michael Bayne 814bd71637 Moved getDirection() into DirectionUtil.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@1376 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-05-17 21:13:26 +00:00
Michael Bayne a8caf98434 Added a version of distance() that takes Point objects.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@1375 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-05-17 21:13:03 +00:00
Michael Bayne db31cedbd8 Removed setVelocity() from the interface. Paths may or may not want to use
the notion of velocity and they can expose that interface to whomever
creates them. We don't need to set the velocity in the abstract.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@1374 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-05-17 21:12:48 +00:00
Michael Bayne 70c8067048 Don't consider modes with higher than 75Hz refresh.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@1358 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-05-09 18:43:56 +00:00
Michael Bayne 7a7309f347 Make the tiler cope if it's given a null source image.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@1348 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-05-07 03:23:46 +00:00
Michael Bayne 04a1b4a38a Created a helper class that can be used to render a tiled background image
that is generated by cutting up a small image into nine sections and using
each appropriately to create the expanded background.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@1347 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-05-07 03:11:17 +00:00
Michael Bayne 47e38b4fa8 Changed MultiFrameImage around so that it retains total control over its
internal images and doesn't necessarily need to decode them into multiple
images or even have actual images at all. This cleans things up and paves
the way for our "trimmed" image support which is forthcoming.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@1335 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-05-04 19:35:31 +00:00
Michael Bayne 7af3e3afdc Was preferring lowest not highest.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@1311 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-04-28 01:30:10 +00:00
Michael Bayne 23d170c83e Added support for pausing a media panel which pauses all sprites and
animations currently operating therein. (It doesn't pause scrolling which
I suppose I'll have to fix at some point if we ever need it.)


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@1292 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-04-25 16:23:31 +00:00
Michael Bayne cc6a9d00ef Major low-level rendering rethink. There will be much follow-on cleanup.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@1286 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-04-23 01:16:28 +00:00
Michael Bayne 6a908b86c6 Added a utility class that encapsulates our display mode jockeying.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@1280 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-04-19 00:38:44 +00:00
Michael Bayne c0a265d284 Removed debug logging.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@1260 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-04-16 20:38:24 +00:00
Michael Bayne 1e5c1bcfe7 Only update the sprite's orientation if we have a valid one.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@1259 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-04-16 18:24:43 +00:00
Michael Bayne 935276fb5d Made addNode() public so that external entites can create line segment
paths one node at a time and add their desired orientation to the nodes.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@1256 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-04-16 17:00:33 +00:00
Michael Bayne f458a84d9e Translation needs to go the other way.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@1255 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-04-16 02:29:05 +00:00
Michael Bayne 834d9099d6 Added viewWillScroll() for letting a path know that the view in which its
sprite was following a path is going to scroll; fixed bug in
getDirection(); added setDuration() which computes the path velocity based
on the time that the sprite should spend following the path.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@1252 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-04-15 23:09:10 +00:00
Walter Korman 8e93dbfc79 Added convenience constructor and cleaned up constant usage.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@1131 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-03-16 03:12:12 +00:00
Michael Bayne 7d079a2bec Switch to new unified direction constants.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@818 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-12-17 03:34:04 +00:00
Michael Bayne 75c9c55dc4 Moved setVelocity() into the Path interface.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@799 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-12-16 08:05:46 +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 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 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 ae5c9ba187 Minor comment edits.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@341 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-09-17 23:55:45 +00:00
Michael Bayne 780e39d4e9 Modified animation manager to provide a timestamp with every tick.
Modified sprite and path code to make use of these timestamps to determine
a sprite's progress along the path. Abstracted the path stuff so that
paths other than line segment paths can be cleanly implemented.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@337 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-09-13 19:10:26 +00:00
Walter Korman 4f92224a8f Minor comment re-formatting.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@327 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-09-05 00:40:33 +00:00
Walter Korman 24df6a0968 Added convenience method to allow adding a node to a path without
specifying a direction.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@326 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-09-05 00:40:17 +00:00