Commit Graph

2527 Commits

Author SHA1 Message Date
Michael Bayne df50d9fb0d Only do the Windows copyArea() workaround on Windows because it crashes
the MacOS JVM (though the MacOS JVM has the same fricking bug, it's just
that the workaround doesn't "work").


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2534 542714f4-19e9-0310-aa3c-eee0fc999fb1
2003-05-02 23:49:57 +00:00
Michael Bayne daa9c8ee0e We can use the raw images here because we eventually splat all fringe
tiles into a composited image which has been prepared for display.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2533 542714f4-19e9-0310-aa3c-eee0fc999fb1
2003-05-02 23:33:30 +00:00
Michael Bayne 55e84b0ae4 We can use the raw image here because we only use its dimensions.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2532 542714f4-19e9-0310-aa3c-eee0fc999fb1
2003-05-02 23:32:56 +00:00
Michael Bayne 1694881ac2 We can use the raw images here because we're just processing them into
other raw images.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2531 542714f4-19e9-0310-aa3c-eee0fc999fb1
2003-05-02 23:32:37 +00:00
Michael Bayne 77cd7f7efe Renamed the methods that return raw tile images and added fat warnings not
to use these unless you're doing low-level image processing and will
eventually stuff the data into a prepared image.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2530 542714f4-19e9-0310-aa3c-eee0fc999fb1
2003-05-02 23:32:10 +00:00
Michael Bayne 6669e39a8e Added other forms of getPreparedImage();
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2529 542714f4-19e9-0310-aa3c-eee0fc999fb1
2003-05-02 23:09:28 +00:00
Michael Bayne c7765a9862 Added getPreparedImage().
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2528 542714f4-19e9-0310-aa3c-eee0fc999fb1
2003-05-02 22:59:20 +00:00
Ray Greenwell af764f57c7 Added a constructor that takes MisoSceneMetrics.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2527 542714f4-19e9-0310-aa3c-eee0fc999fb1
2003-05-02 21:50:22 +00:00
Michael Bayne e9b0df1751 Scratch that, reverse it. We just have to recreate our graphics objects,
not the whole image.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2526 542714f4-19e9-0310-aa3c-eee0fc999fb1
2003-05-02 18:46:42 +00:00
Michael Bayne bd18c4cbb1 If a block finishes resolution after it's already become visible, repaint
its bounds immediately rather than waiting for the remaining queued blocks
to be resolved.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2525 542714f4-19e9-0310-aa3c-eee0fc999fb1
2003-05-02 18:12:34 +00:00
Michael Bayne 57ee4d56c8 Let's have some debug logging so that we can investigate potential block
resolution wackiness.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2524 542714f4-19e9-0310-aa3c-eee0fc999fb1
2003-05-02 18:09:56 +00:00
Michael Bayne 7c7db998ac With this fix, and the new JVM, I think full screen actually works now.
It's a miracle!


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2523 542714f4-19e9-0310-aa3c-eee0fc999fb1
2003-05-02 18:03:17 +00:00
Michael Bayne 02bd2ade00 We just flip flop back and forth on this one: now non-resolved tiles *are*
traversable so that if a sprite claims to have relocated somewhere outside
your resolved scene bounds, we'll just bee line them to their new
location. Since the user can never click outside their resolved view
bounds, we won't ever compute an invalid path for them. Joy.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2522 542714f4-19e9-0310-aa3c-eee0fc999fb1
2003-05-02 15:13:20 +00:00
Michael Bayne e6126a4787 If FPS display is on, dirty it properly when the view scrolls.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2521 542714f4-19e9-0310-aa3c-eee0fc999fb1
2003-05-02 15:11:51 +00:00
Michael Bayne 9454a1e35a Commented out avg. dirty regions per tick display and modified FPS display
to facilitate efficient checking of whether it's activated or not.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2520 542714f4-19e9-0310-aa3c-eee0fc999fb1
2003-05-02 15:11:12 +00:00
Michael Bayne 94697f3e3f If our sleep granularity is zero, yield rather than call sleep() which
would do nothing.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2519 542714f4-19e9-0310-aa3c-eee0fc999fb1
2003-05-02 15:09:57 +00:00
Michael Bayne 31e26c681c Need to take a different approach to get everything to repaint when we
lose our back buffer.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2518 542714f4-19e9-0310-aa3c-eee0fc999fb1
2003-05-01 22:06:52 +00:00
Michael Bayne b2ba9dc9c6 We'll be needin' to use that width and height that are passed in.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2517 542714f4-19e9-0310-aa3c-eee0fc999fb1
2003-05-01 22:04:48 +00:00
Ray Greenwell 098cb693d1 Fixed.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2516 542714f4-19e9-0310-aa3c-eee0fc999fb1
2003-05-01 02:11:22 +00:00
Ray Greenwell 0e8b1dd058 Removed crack pipe.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2515 542714f4-19e9-0310-aa3c-eee0fc999fb1
2003-05-01 02:05:51 +00:00
Michael Bayne 2c94e12490 Regenerated DObject definitions with new policy.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2514 542714f4-19e9-0310-aa3c-eee0fc999fb1
2003-04-30 22:45:57 +00:00
Michael Bayne dd2657db24 Update our local variable *after* we request the attribute change so that
that code can properly obtain the old value for inclusion with the
change/update event.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2513 542714f4-19e9-0310-aa3c-eee0fc999fb1
2003-04-30 22:44:48 +00:00
Ray Greenwell fc6d71cae1 Actually initialize the oldValue to UNSET_OLD_VALUE.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2512 542714f4-19e9-0310-aa3c-eee0fc999fb1
2003-04-30 22:38:49 +00:00
Michael Bayne dc15ffc36f Have to supply the old value now when constructing an
AttributeChangedEvent by hand.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2511 542714f4-19e9-0310-aa3c-eee0fc999fb1
2003-04-30 22:32:20 +00:00
Michael Bayne 43edd884c0 Added the necessary machinations to make getOldValue() and getOldEntry()
work on the server.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2510 542714f4-19e9-0310-aa3c-eee0fc999fb1
2003-04-30 22:32:04 +00:00
Michael Bayne 99fa7fd6ff renderMedia() -> paint().
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2509 542714f4-19e9-0310-aa3c-eee0fc999fb1
2003-04-30 20:48:51 +00:00
Michael Bayne 357e17d7c7 Because we cleverly do nothing in paint() if there are no dirty regions,
we have to go out of our way to let the abstract media managers know when
tick() is all done and paint() *may* be called. This way they can properly
clear out their tick stamps because they know that no more media fooling
around will happen between the call to willPaint() and the call to paint()
(which used to be called renderMedia() but is now paint() to remain in
line with all the other places were we tick() and then paint()).


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2508 542714f4-19e9-0310-aa3c-eee0fc999fb1
2003-04-30 20:48:38 +00:00
Michael Bayne 6cff845a6c Use our own thread to queue up frame ticks rather than the standard Java
Timer which does undesirable things like suffer from 20 ms granularity on
Linux and rapid fire multiple invocations of our timer task if it has
fallen behind.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2507 542714f4-19e9-0310-aa3c-eee0fc999fb1
2003-04-30 06:42:50 +00:00
Michael Bayne 9372df6ff0 Render the additional performance metrics when such are activated.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2506 542714f4-19e9-0310-aa3c-eee0fc999fb1
2003-04-30 06:34:55 +00:00
Michael Bayne 580fdba83b Revamped animation observation.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2505 542714f4-19e9-0310-aa3c-eee0fc999fb1
2003-04-30 00:45:02 +00:00
Michael Bayne 99127e4ce0 Revamped sprite observation and added support for being notified if a path
is cancelled.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2504 542714f4-19e9-0310-aa3c-eee0fc999fb1
2003-04-30 00:44:36 +00:00
Michael Bayne 3cfccff0c6 The revamp that made me nervous about our rendering performance but turned
out to be not at all related.

Out with the wacky system of events that require the observers to
instanceof to the high heavens. Now we just call sensible methods directly
on the observers who care and not on those who don't.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2503 542714f4-19e9-0310-aa3c-eee0fc999fb1
2003-04-30 00:43:54 +00:00
Michael Bayne 83d7506e0f Utility class for tracking trailing averages.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2502 542714f4-19e9-0310-aa3c-eee0fc999fb1
2003-04-30 00:38:35 +00:00
Michael Bayne b2cbd63be2 Display FPS in the media panel where we have tight control over dirtying
and repainting.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2501 542714f4-19e9-0310-aa3c-eee0fc999fb1
2003-04-29 18:15:10 +00:00
Michael Bayne 83cdc0b0fb Canned support for FPS display by the frame manager; it just can't manage
the dirty regions effectively.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2500 542714f4-19e9-0310-aa3c-eee0fc999fb1
2003-04-29 18:14:37 +00:00
Michael Bayne 82d3a89e97 Further tweaks though this time they are functionally equivalent.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2499 542714f4-19e9-0310-aa3c-eee0fc999fb1
2003-04-28 23:33:43 +00:00
Michael Bayne c045a84703 We want to compare the origin of b not its left and right tiles.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2498 542714f4-19e9-0310-aa3c-eee0fc999fb1
2003-04-28 22:21:20 +00:00
Michael Bayne 2a909b772e When we're resized, delay our rethink until the next tick so that the view
bounds are properly updated for the rethink.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2497 542714f4-19e9-0310-aa3c-eee0fc999fb1
2003-04-28 21:46:33 +00:00
Michael Bayne 4d7993b59f Only delay repaint on setBounds() if we end up queueing up blocks as a
result.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2496 542714f4-19e9-0310-aa3c-eee0fc999fb1
2003-04-28 21:10:19 +00:00
Michael Bayne 98d6d2f086 Broke out influential bounds computation into a method that can be
overridden.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2495 542714f4-19e9-0310-aa3c-eee0fc999fb1
2003-04-28 21:02:54 +00:00
Michael Bayne abec16cbc1 Assign an ordering based on y position in the absence of any other
ordering.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2494 542714f4-19e9-0310-aa3c-eee0fc999fb1
2003-04-28 20:53:58 +00:00
Michael Bayne f2c1c7dad5 Updated render sort to reflect arbitrary ordering assigned to non-ordered
objects.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2493 542714f4-19e9-0310-aa3c-eee0fc999fb1
2003-04-28 20:53:24 +00:00
Michael Bayne 0165cca20a Make a note of a potentially non-intuitive return value.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2492 542714f4-19e9-0310-aa3c-eee0fc999fb1
2003-04-28 20:41:13 +00:00
Michael Bayne da3ec5f6e4 Report unexpected visibility more sensibly.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2491 542714f4-19e9-0310-aa3c-eee0fc999fb1
2003-04-28 20:28:45 +00:00
Michael Bayne 120c2643ef Added grow() and a Log class.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2490 542714f4-19e9-0310-aa3c-eee0fc999fb1
2003-04-28 20:27:52 +00:00
Michael Bayne 508e389678 Make the bounds of just our objects available as well.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2489 542714f4-19e9-0310-aa3c-eee0fc999fb1
2003-04-28 20:27:35 +00:00
Michael Bayne 8ce7d7bc69 Slap a big fat random number on the end of our cache directory to avoid
annoyances when we run multiple clients for testing.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2488 542714f4-19e9-0310-aa3c-eee0fc999fb1
2003-04-28 18:21:47 +00:00
Michael Bayne 7c5d0f275e Document that little feller.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2487 542714f4-19e9-0310-aa3c-eee0fc999fb1
2003-04-28 18:12:09 +00:00
Michael Bayne 831539b09d How simple! If our bounds change, delay a repaint until we have all of our
blocks resolved. In the future, we could attempt to resolve the blocks
that are needed to repaint the visible view first and allow repaint as
soon as those blocks are resolved.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2486 542714f4-19e9-0310-aa3c-eee0fc999fb1
2003-04-28 18:08:57 +00:00
Michael Bayne 72768a3a9e More synchronization is needed! The dangers of multithreaded programming.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2485 542714f4-19e9-0310-aa3c-eee0fc999fb1
2003-04-28 17:38:06 +00:00