Commit Graph

761 Commits

Author SHA1 Message Date
Ray Greenwell c321f7eb33 - added debug logging so that we can see the time elapsed between the
moment that a sound is requested to just before the LineSpooler object
  that it was given to starts writing the data to a line.
- Turned drain() back on, but only if we're not running under linux.
  If we're in linux, we instead sleep for 3 seconds, and gosh darn it, the
  sound should be finished after that.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2019 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-12-04 02:14:12 +00:00
Michael Bayne 1d9de38b61 Make the frames per second info available to callers.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2018 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-12-04 01:25:17 +00:00
Michael Bayne 6cabb846c5 Use a separate runnable for the AWT queue to avoid a call to
EventQueue.isEventDispatchThread() and to make Ray happy.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2017 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-12-03 19:42:21 +00:00
Michael Bayne b2454c59f3 Removed performance monitor stuff because we can track our frame rate
without expensive calls to System.currentTimeMillis().


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2016 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-12-03 19:29:35 +00:00
Michael Bayne 6eed170158 Fixed problem with ticker wherein it was not properly dropping frames when
it should. Added code to track and report desired and obtained frame rate.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2015 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-12-03 19:28:04 +00:00
Michael Bayne 0f0631f318 Do some jiggery poker to make sure that if a path completes as a result of
our call to Path.init() we don't freak out. Also made a note that paths
will be ticked after being init()ed because that's the way it works.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2011 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-12-02 20:11:24 +00:00
Ray Greenwell d5cc64aa87 Went back to only draining when we detect that the line is active.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2007 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-11-29 21:22:46 +00:00
Michael Bayne 8529dd08bf Added support for an orientation offset which will be used to orient the
pathable some number of ticks offset from the "natural" orientation which
would be in the direction it is traveling along the arc.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2002 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-11-27 23:48:24 +00:00
Ray Greenwell 0403db5e73 catch NPE. A song can be the top song on the stack and not be playing
if musicvolume is 0.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2001 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-11-27 21:41:53 +00:00
Walter Korman 709e65f947 Moved sword spark animation here from there, and allowed specifying the
spark duration.  Spark is perhaps a bit of a misnomer as the animation is
really more of a specialized kind of explosion.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2000 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-11-27 01:37:14 +00:00
Ray Greenwell 2895b65909 - always drain again
- increased buffer size to 24k


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@1999 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-11-27 00:12:14 +00:00
Ray Greenwell dd87f55b45 Fuck the windows file separator character.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@1998 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-11-27 00:08:36 +00:00
Ray Greenwell f901cb3041 When testing, allow sounds to be cached if they're locked.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@1997 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-11-26 21:14:11 +00:00
Ray Greenwell 54c486710d When music is stopped because the volume is turned to 0, don't
remove it from the playing music stack.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@1996 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-11-26 18:54:39 +00:00
Walter Korman 875484b252 Note when we're ticking so that we can tick any media that's inserted
during a call to tick() so that if it's subsequently painted we can be
assured that it's been ticked at least once previously.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@1993 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-11-26 02:47:04 +00:00
Ray Greenwell a4923a6151 bugfix
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@1992 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-11-26 02:46:52 +00:00
Ray Greenwell 917ba53c59 - new sound loading jimmy where a package path and key specify a set of
sounds.
- added test sound directory setting.
- mp3 player needs more fixing, but allow some volume adjustment.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@1990 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-11-26 02:39:40 +00:00
Ray Greenwell 7b6f4893a2 cleanup
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@1988 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-11-25 20:02:31 +00:00
Ray Greenwell 963ebdf137 Added note about the drain() bug.
Don't play clips or music if the appropriate volume is zero.
If music is turned off, stop current playback immediately, but also
start it back up if the volume is turned up.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@1987 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-11-23 03:24:26 +00:00
Ray Greenwell ef2c1ccd8b don't play sounds with clips, instead have threads that spool sound
data to open lines. Joy.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@1986 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-11-23 02:09:36 +00:00
Michael Bayne 2c681d7291 A base class for our sound repository classes.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@1985 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-11-22 21:54:49 +00:00
Ray Greenwell f63d7cbe09 cleanup/commenting
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@1984 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-11-22 19:21:12 +00:00
Ray Greenwell 1953e5686c genericized music playing, made transitioning from any music type to any
other clean and good.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@1983 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-11-22 04:23:31 +00:00
Michael Bayne e203c56483 Added code to warn of requests to dirty rectangles that are unseasonably
large.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@1982 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-11-22 01:54:59 +00:00
Michael Bayne dd5ce99781 Added access to getLevel().
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@1981 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-11-22 01:53:53 +00:00
Michael Bayne 699e15e95e Added code to debug tick participants that take excessively long during a
tick() or a paint().


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@1980 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-11-22 01:53:39 +00:00
Ray Greenwell 4c19a90642 Music volume adjusts the mod player.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@1979 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-11-20 23:06:33 +00:00
Michael Bayne 3dbd1c77dd Maintain a view bounds rectangle and make it available to callers.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@1977 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-11-20 22:15:34 +00:00
Michael Bayne c8502d212c Have to initialize our path on the first call to tick() now.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@1976 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-11-20 05:33:20 +00:00
Michael Bayne 58d32302c6 Note in the documentation that tick stamps are no longer comparable to
calls to System.currentTimeMillis().


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@1975 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-11-20 05:32:51 +00:00
Ray Greenwell 2178d75392 mod playing capabilities.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@1974 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-11-20 04:03:09 +00:00
Michael Bayne 10523980c6 Provide ability to get timestamps from a media panel.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@1973 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-11-20 03:11:43 +00:00
Michael Bayne 3bfca1d20a Not to complain if we can't load an image because we'll fall back to the
classpath. Removed getImageSource() as calling through to the resource
manager is simpler.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@1972 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-11-20 03:06:06 +00:00
Ray Greenwell 80c81b77c2 Load clips (just them for now) from a specific resource set.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@1971 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-11-20 02:41:38 +00:00
Michael Bayne e006702bf7 Added a frame manager constructor that uses a 100% pure Java timer by
default.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@1970 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-11-20 02:26:33 +00:00
Michael Bayne c4591a92ef System.currentTimeMillis() begone! We use our own pluggable timer system
now (which uses System.currentTimeMillis() at the moment but eventually
won't).


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@1968 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-11-20 02:18:49 +00:00
Michael Bayne ac3e732f9b A pluggable timer system that will eventually provide a native code-based
high resolution timer.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@1967 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-11-20 02:17:38 +00:00
Michael Bayne 128547b41b Use the resource managers bundle searching lookup instead of doing things
by hand.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@1966 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-11-20 02:15:05 +00:00
Ray Greenwell 7da8317928 mp3 playing capabilities.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@1964 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-11-20 01:33:34 +00:00
Ray Greenwell 20e9ccae57 Went back to not initing midi until the first song is played (and doing it
on the sound manager thread).


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@1963 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-11-19 21:17:35 +00:00
Ray Greenwell b0aabf1478 Added support for attempting to use an alternate device to play midi,
even thought the java sequencer ignores the new Receiver.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@1962 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-11-19 02:24:35 +00:00
Ray Greenwell 01b203fd13 added support for specifying # of loops for a song,
fixed up song stack handling with loop logic.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@1956 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-11-16 03:17:41 +00:00
Michael Bayne d4126e3514 Not to log dropped frames.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@1955 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-11-16 00:15:57 +00:00
Ray Greenwell 125ef04e87 cleanup, figured out what's needed to loop midis consistently. More soon.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@1954 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-11-16 00:13:47 +00:00
Michael Bayne d9838206c1 Use Java's timer to invoke our frame tick. Drop frames instead of queueing
up repeats when the previous tick takes too long.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@1953 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-11-15 23:58:34 +00:00
Ray Greenwell 1d602849f0 - removed verbose logging.
- when stopping a midi, remove the meta listener first so that we
  don't get the event after we've tossed the sequencer.
- changed some variable names for clarity.
- added code to shutdown the midi system when we shutdown the rest.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@1952 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-11-15 21:38:31 +00:00
Ray Greenwell 9e881810a9 - now only two volume levels: music and clips.
- clip types are turned on or off, individually.
- wired up volume for music, and it worked, but then I angered some norse god
  and now it doesn't work anymore despite repeated poking.
- fixed up clip volume formula (copied simplified/better code from Sun example)


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@1951 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-11-15 20:52:31 +00:00
Walter Korman 275d35ce07 Added traceImage(), which will doubtless be further optimized, and it
would sure be nice to have a variant that traces the supplied image rather
than always creating a new one, and more flexibility with respect to the
alpha gradient steps might be nice, but all of that sort of thing will
just have to come later.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@1950 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-11-15 09:29:40 +00:00
Ray Greenwell 0c1c441288 First pass at midi/rmf support. Mostly works, but songs aren't looping more
than twice.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@1949 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-11-15 05:34:43 +00:00
Ray Greenwell 51194278ca Store the largest Clip building blocks we can in the cache (rather than just
the byte[] data) so that subsequent plays can happen faster.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@1948 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-11-15 02:06:41 +00:00