Commit Graph

836 Commits

Author SHA1 Message Date
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
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 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 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
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 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
Michael Bayne 5c03adbb72 Added support for temporarily disabling image and tile cache flushing.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2483 542714f4-19e9-0310-aa3c-eee0fc999fb1
2003-04-27 07:33:15 +00:00
Michael Bayne 21889f5a9e Trimmed tilesets are all fast. This should ensure that it's possible to
save the tileset image in fast format before doing so because the set of
formats for which we support trimming is slightly larger than those for
which we support saving in fast format. We don't use such formats
presently, so I'll temporarily punt.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2480 542714f4-19e9-0310-aa3c-eee0fc999fb1
2003-04-27 06:38:15 +00:00
Michael Bayne b84f62e35d If our image has been converted to fast format; load it up fast and propah!
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2478 542714f4-19e9-0310-aa3c-eee0fc999fb1
2003-04-27 06:35:09 +00:00
Michael Bayne cab6cfb131 Convert images to "fast" images if possible. Also fixed a bug where it
wasn't cleaning up properly if it failed to generate a bundle. Plus the
error reporting is all much better.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2477 542714f4-19e9-0310-aa3c-eee0fc999fb1
2003-04-27 06:34:43 +00:00
Michael Bayne 65106d8815 Generate better error messages if we fail.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2476 542714f4-19e9-0310-aa3c-eee0fc999fb1
2003-04-27 06:33:40 +00:00
Michael Bayne 8973ca0d8c Make ImageDataProvider responsible for loading the actual image instead of
returning an ImageInputStream.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2475 542714f4-19e9-0310-aa3c-eee0fc999fb1
2003-04-27 06:33:11 +00:00
Michael Bayne a4e09831c5 The amazing fast image loading extravaganza. Images load in 1/4th the time
and generate almost zero garbage during the loading process (unlike the
ImageIO loaders which practically generate an entire image worth of
garbage during the load).


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2474 542714f4-19e9-0310-aa3c-eee0fc999fb1
2003-04-27 06:32:15 +00:00
Michael Bayne 661d7598ed Commented out verbose logging.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2469 542714f4-19e9-0310-aa3c-eee0fc999fb1
2003-04-27 01:30:25 +00:00
Michael Bayne 055bd6a642 Factored out the flip-buffer versus volatile image back-buffer code into
start-time selectable implementations. Modified back buffer to use
BufferCapabilities.FlipContents.COPIED which should do what we need in
terms of providing us with the current frame's contents on which to paint.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2468 542714f4-19e9-0310-aa3c-eee0fc999fb1
2003-04-26 17:56:26 +00:00
Michael Bayne 8bab0bd281 Added useful debug logging.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2463 542714f4-19e9-0310-aa3c-eee0fc999fb1
2003-04-25 22:12:14 +00:00
Michael Bayne 2051770c91 Synchronize access to the tile cache so that we can load tiles on other
threads.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2460 542714f4-19e9-0310-aa3c-eee0fc999fb1
2003-04-25 18:21:49 +00:00
Michael Bayne 90391aa69d Synchronize access to the image cache so that we can load images on other
threads.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2459 542714f4-19e9-0310-aa3c-eee0fc999fb1
2003-04-25 18:21:28 +00:00
Michael Bayne 2f80c9b057 Removed obsolete image loaders.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2456 542714f4-19e9-0310-aa3c-eee0fc999fb1
2003-04-25 15:51:49 +00:00
Michael Bayne ae0376d4ec Removed a bunch of obsolete stuff.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2455 542714f4-19e9-0310-aa3c-eee0fc999fb1
2003-04-25 15:51:34 +00:00
Michael Bayne 1274fbb7c0 Let's inform the derived classes of the delta rather than the new _vbounds
upper left which is something they're already much more likely to be
making use of directly.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2443 542714f4-19e9-0310-aa3c-eee0fc999fb1
2003-04-22 18:12:40 +00:00
Michael Bayne 1fc693523d Add constructor that takes bounds. We love the bounds.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2438 542714f4-19e9-0310-aa3c-eee0fc999fb1
2003-04-20 04:52:33 +00:00
Michael Bayne 1cb3d1edb5 Added floorDiv().
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2432 542714f4-19e9-0310-aa3c-eee0fc999fb1
2003-04-19 22:28:28 +00:00
Michael Bayne e6a1ebbd80 We need to recreate our back buffer if our frame's bounds change.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2426 542714f4-19e9-0310-aa3c-eee0fc999fb1
2003-04-19 01:04:29 +00:00
Michael Bayne d5701962a3 The big fat bernie revamp! Er, big fat miso revamp rather:
- Combined SceneViewPanel and IsoSceneView into one happy panel.
- Ditched the DisplayMisoScene notion; the new MisoScenePanel now manages
  resolved scene information (like base, object and fringe tiles) itself
  so that it can...
- ...support scrolling scenes by keeping blocks of resolved base, fringe
  and object information loaded only for what is potentially visible
  rather than for the whole scene.

Other things were surely cleaned up or broken in the process to keep a
keen eye out.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2413 542714f4-19e9-0310-aa3c-eee0fc999fb1
2003-04-17 19:21:17 +00:00
Michael Bayne 025cb91668 Ensure that any media inserted between the call to tick() and the call to
renderAllMedia() is ticked in all circumstances and ticked exactly once.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2411 542714f4-19e9-0310-aa3c-eee0fc999fb1
2003-04-15 21:27:22 +00:00
Michael Bayne 7aeae0d4c3 Change removeAnimation() to abortAnimation(); that's what is happening.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2410 542714f4-19e9-0310-aa3c-eee0fc999fb1
2003-04-15 00:39:20 +00:00
Ray Greenwell 3bdeed559f - Do time math with the last timestamp rather then precomputing the next
timestamp so that we can switch frame rate on the fly.
- added setLength() to use a subset of the sequence
- added setResetOnInit() so that the sequencer can be swapped into a new
  animation without being reset if desired.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2409 542714f4-19e9-0310-aa3c-eee0fc999fb1
2003-04-14 20:36:16 +00:00
Ray Greenwell c0f4ed2777 progress towards duty feedbackers
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2408 542714f4-19e9-0310-aa3c-eee0fc999fb1
2003-04-14 17:16:23 +00:00
Michael Bayne 98e48001dc Added bound().
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2405 542714f4-19e9-0310-aa3c-eee0fc999fb1
2003-04-12 02:06:35 +00:00
Michael Bayne a8c6d62913 Immediately update our scene location when we are requested to track a
pathable.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2404 542714f4-19e9-0310-aa3c-eee0fc999fb1
2003-04-12 01:26:29 +00:00
Michael Bayne fca168018e Don't freak out if we can't load our source image.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2400 542714f4-19e9-0310-aa3c-eee0fc999fb1
2003-04-11 18:48:05 +00:00
Michael Bayne 9c113eb8dc Not to choke if we get passed a null image.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2394 542714f4-19e9-0310-aa3c-eee0fc999fb1
2003-04-09 22:02:20 +00:00
Michael Bayne 6ea4264eb4 If we fail to load an image, create a blank one in its stead.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2393 542714f4-19e9-0310-aa3c-eee0fc999fb1
2003-04-09 22:02:05 +00:00
Ray Greenwell 46b8aace97 Don't log a bunch of crap for sounds that are missing during a LOCK
unless verbose logging is turned on.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2392 542714f4-19e9-0310-aa3c-eee0fc999fb1
2003-04-08 20:30:44 +00:00
Ray Greenwell 77633366cc Handle not finding a music player for a song gracefully.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2389 542714f4-19e9-0310-aa3c-eee0fc999fb1
2003-04-08 01:46:16 +00:00
Michael Bayne 8663535d5a Exclude the experimental music players.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2382 542714f4-19e9-0310-aa3c-eee0fc999fb1
2003-04-06 04:36:01 +00:00
Ray Greenwell 728ddcf575 only log that the queue is full (and the full damn contents of the queue)
when verbose logging is on.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2381 542714f4-19e9-0310-aa3c-eee0fc999fb1
2003-04-05 20:48:04 +00:00