Commit Graph

164 Commits

Author SHA1 Message Date
Dave Hoover 717dc79c02 Tabs -> spaces
git-svn-id: svn+ssh://src.earth.threerings.net/nenya/trunk@268 ed5b42cb-e716-0410-a449-f6a68f950b19
2007-06-26 00:07:47 +00:00
Michael Bayne 7a65a62927 Widening.
git-svn-id: svn+ssh://src.earth.threerings.net/nenya/trunk@262 ed5b42cb-e716-0410-a449-f6a68f950b19
2007-06-14 17:42:52 +00:00
Dave Hoover 7ca448a91e Let us optionally not auto-reposition TransformedMirages; it was being smart
for things like scales and rotates so 0,0 still meant the same place, but that 
meant I couldn't just reposition something, since it would promptly undo the
transform I passed in.


git-svn-id: svn+ssh://src.earth.threerings.net/nenya/trunk@256 ed5b42cb-e716-0410-a449-f6a68f950b19
2007-06-01 18:08:34 +00:00
Michael Bayne 97f6eb7c85 Switch to Java's logging facilities.
git-svn-id: svn+ssh://src.earth.threerings.net/nenya/trunk@254 ed5b42cb-e716-0410-a449-f6a68f950b19
2007-05-30 01:18:06 +00:00
Michael Bayne 91c45db381 Let's do this in a way that allows more than a single value to be used in the
natural comparison.


git-svn-id: svn+ssh://src.earth.threerings.net/nenya/trunk@249 ed5b42cb-e716-0410-a449-f6a68f950b19
2007-05-15 17:50:16 +00:00
Michael Bayne acea29604d Make AbstractMedia implement Comparable instead of using a comparator. Added
naturalOrder() which allows media to use a more consistent "same render order"
order resolution value than Object.hashCode().


git-svn-id: svn+ssh://src.earth.threerings.net/nenya/trunk@248 ed5b42cb-e716-0410-a449-f6a68f950b19
2007-05-15 17:45:18 +00:00
Michael Bayne f7dfe51a9c Oh yeah, we need to call that method.
git-svn-id: svn+ssh://src.earth.threerings.net/nenya/trunk@247 ed5b42cb-e716-0410-a449-f6a68f950b19
2007-05-15 17:05:04 +00:00
Michael Bayne 9a30debf42 Type safety and widening.
git-svn-id: svn+ssh://src.earth.threerings.net/nenya/trunk@246 ed5b42cb-e716-0410-a449-f6a68f950b19
2007-05-15 16:59:58 +00:00
Andrzej Kapolka c755fd626a To reduce shader state changes and compilations, just use the
four-bone-per-vertex configuration for all skinned meshes.  Depending on 
the models we have, it may be worth compiling a separate one for two 
bones per vertex.  Added a hook to customize the material color (for 
per-vertex colors, e.g.)


git-svn-id: svn+ssh://src.earth.threerings.net/nenya/trunk@245 ed5b42cb-e716-0410-a449-f6a68f950b19
2007-05-15 00:55:19 +00:00
Andrzej Kapolka 124af1e0b1 Use a fragment shader as well as a vertex shader for the skinned meshes.
I tracked the ATI slowdown down to using a vertex shader in combination 
with fixed function fog.  Also cleaned up ShaderConfig a little.


git-svn-id: svn+ssh://src.earth.threerings.net/nenya/trunk@244 ed5b42cb-e716-0410-a449-f6a68f950b19
2007-05-14 20:13:39 +00:00
Andrzej Kapolka 6b07087c31 32 matrices is just a feeeeew two many for ATI cards, but of course
their drivers can't do anything useful like report an error; they just 
silently screw up.  Limiting it to 31 makes it work, but there's still a 
strange slowdown issue (and it's not that the shaders are being run in 
software, but it's worth checking for that anyway).


git-svn-id: svn+ssh://src.earth.threerings.net/nenya/trunk@243 ed5b42cb-e716-0410-a449-f6a68f950b19
2007-05-12 00:57:35 +00:00
Michael Bayne 12e17a9e33 Remove debug logging.
git-svn-id: svn+ssh://src.earth.threerings.net/nenya/trunk@242 ed5b42cb-e716-0410-a449-f6a68f950b19
2007-05-11 23:28:00 +00:00
Andrzej Kapolka 82ba950111 Go back to using byte buffers; that wasn't the problem.
git-svn-id: svn+ssh://src.earth.threerings.net/nenya/trunk@241 ed5b42cb-e716-0410-a449-f6a68f950b19
2007-05-11 18:30:51 +00:00
Andrzej Kapolka fd192268c3 Try using shorts rather than bytes for bone indices.
git-svn-id: svn+ssh://src.earth.threerings.net/nenya/trunk@238 ed5b42cb-e716-0410-a449-f6a68f950b19
2007-05-10 23:21:15 +00:00
Andrzej Kapolka 8a0168760f Much work to reconfigure shaders automatically based on the model's
current JME state set.


git-svn-id: svn+ssh://src.earth.threerings.net/nenya/trunk@237 ed5b42cb-e716-0410-a449-f6a68f950b19
2007-05-10 20:35:27 +00:00
Andrzej Kapolka 1d8f04c43a Prepend the #version directive before compiling the shader.
git-svn-id: svn+ssh://src.earth.threerings.net/nenya/trunk@236 ed5b42cb-e716-0410-a449-f6a68f950b19
2007-05-10 01:31:42 +00:00
Andrzej Kapolka e5db96b963 Ignore cull mode when we're generating frames to morph between.
git-svn-id: svn+ssh://src.earth.threerings.net/nenya/trunk@235 ed5b42cb-e716-0410-a449-f6a68f950b19
2007-05-10 01:07:54 +00:00
Michael Bayne 2e0678877b Use the hacky PerfTimer if available and fall back to the NanoTimer if we're
running in a sandbox.


git-svn-id: svn+ssh://src.earth.threerings.net/nenya/trunk@234 ed5b42cb-e716-0410-a449-f6a68f950b19
2007-05-09 21:53:42 +00:00
Andrzej Kapolka 45df6d814b Use VBOs for vertices, indices when using shaders; multiply vertices by
weights even if we only have one weight per vertex.


git-svn-id: svn+ssh://src.earth.threerings.net/nenya/trunk@232 ed5b42cb-e716-0410-a449-f6a68f950b19
2007-05-09 19:51:32 +00:00
Michael Bayne 0024a02067 Wow, the media framework gets into a bad way if it's forced to use the
inaccurate System.currentTimeMillis() timer. Fortuately Sun introduced
System.nanoTime() in 1.5 which provides civilized timing information, so we can
use that instead of sun.misc.Perf which is unavailable in an applet sandbox. We
will need to go in and try to cope as best we can with currentTimeMillis() if
we want to support unsigned play in JDK 1.4 or earlier. We'll do that later.


git-svn-id: svn+ssh://src.earth.threerings.net/nenya/trunk@231 ed5b42cb-e716-0410-a449-f6a68f950b19
2007-05-09 19:22:10 +00:00
Andrzej Kapolka ef35b37648 We need to create a new array when we're *not* using shaders.
git-svn-id: svn+ssh://src.earth.threerings.net/nenya/trunk@230 ed5b42cb-e716-0410-a449-f6a68f950b19
2007-05-08 01:56:53 +00:00
Andrzej Kapolka 742dc30f9e Basic support for skinning with GLSL shaders. Still need to work out
how to handle different lighting arrangements and complex materials 
(e.g., the metal effect for the Iron Plate).


git-svn-id: svn+ssh://src.earth.threerings.net/nenya/trunk@229 ed5b42cb-e716-0410-a449-f6a68f950b19
2007-05-08 01:50:07 +00:00
Mike Thomas 8a2e67831e Also need to cope with non-component _root in BackFrameManager
git-svn-id: svn+ssh://src.earth.threerings.net/nenya/trunk@228 ed5b42cb-e716-0410-a449-f6a68f950b19
2007-05-04 23:14:26 +00:00
Michael Bayne 2c6fdf5d94 Cope if our ManagedRoot is not a component.
git-svn-id: svn+ssh://src.earth.threerings.net/nenya/trunk@227 ed5b42cb-e716-0410-a449-f6a68f950b19
2007-05-04 23:08:08 +00:00
Andrzej Kapolka 3401bbf3bf Don't skin what you can't see.
git-svn-id: svn+ssh://src.earth.threerings.net/nenya/trunk@226 ed5b42cb-e716-0410-a449-f6a68f950b19
2007-05-04 01:25:40 +00:00
Andrzej Kapolka bb54ec1888 Optimize vertex order for cache usage and use a better data structure to
(re)index vertices.


git-svn-id: svn+ssh://src.earth.threerings.net/nenya/trunk@224 ed5b42cb-e716-0410-a449-f6a68f950b19
2007-05-04 00:39:54 +00:00
Michael Bayne 095c718244 Render to the applet instead of its parent window since that doesn't work.
git-svn-id: svn+ssh://src.earth.threerings.net/nenya/trunk@223 ed5b42cb-e716-0410-a449-f6a68f950b19
2007-05-03 22:56:29 +00:00
Michael Bayne ab6252cee7 Widened. Added getMirage(String).
git-svn-id: svn+ssh://src.earth.threerings.net/nenya/trunk@222 ed5b42cb-e716-0410-a449-f6a68f950b19
2007-05-03 21:13:32 +00:00
Andrzej Kapolka 277b62bd52 Don't merge meshes where, in any animation, one is visible and the other
isn't.


git-svn-id: svn+ssh://src.earth.threerings.net/nenya/trunk@221 ed5b42cb-e716-0410-a449-f6a68f950b19
2007-05-02 18:19:09 +00:00
Andrzej Kapolka 072926f814 Merge meshes in animated models by finding ones that maintain the same
relative position throughout all animations.  Also, don't include 
transforms in the animations for nodes that never move.


git-svn-id: svn+ssh://src.earth.threerings.net/nenya/trunk@218 ed5b42cb-e716-0410-a449-f6a68f950b19
2007-05-01 23:36:23 +00:00
Andrzej Kapolka 250670e699 Default to using S3TC texture compression.
git-svn-id: svn+ssh://src.earth.threerings.net/nenya/trunk@215 ed5b42cb-e716-0410-a449-f6a68f950b19
2007-04-27 20:48:48 +00:00
Andrzej Kapolka 488d47262b Where possible, merge meshes with identical attributes.
git-svn-id: svn+ssh://src.earth.threerings.net/nenya/trunk@201 ed5b42cb-e716-0410-a449-f6a68f950b19
2007-04-18 21:06:08 +00:00
Dave Hoover 4b933b4379 Keyword substition.
git-svn-id: svn+ssh://src.earth.threerings.net/nenya/trunk@188 ed5b42cb-e716-0410-a449-f6a68f950b19
2007-04-07 00:22:24 +00:00
Jonathan Le Plastrier a6fca4c25e Kill off the .cvsignore files.
git-svn-id: svn+ssh://src.earth.threerings.net/nenya/trunk@187 ed5b42cb-e716-0410-a449-f6a68f950b19
2007-04-06 23:09:28 +00:00
Mike Thomas 3320ab34cd We specify an Arcing path in terms of a start position and various parameters. It's useful to be able to ask the resulting path where that path ended, especially if we want to create another path starting from that new end point.
git-svn-id: svn+ssh://src.earth.threerings.net/nenya/trunk@185 ed5b42cb-e716-0410-a449-f6a68f950b19
2007-04-05 20:24:47 +00:00
Andrzej Kapolka 33c0d7f8a5 Added a visitor for geometry batches.
git-svn-id: svn+ssh://src.earth.threerings.net/nenya/trunk@180 ed5b42cb-e716-0410-a449-f6a68f950b19
2007-03-22 20:55:51 +00:00
Andrzej Kapolka 89e7c41c2e Check for successful shader linkage, returning null if there was an
error.


git-svn-id: svn+ssh://src.earth.threerings.net/nenya/trunk@178 ed5b42cb-e716-0410-a449-f6a68f950b19
2007-03-21 21:15:53 +00:00
Mark Johnson 9ed8c648ac Allow createDisplay to throw a JmeException
git-svn-id: svn+ssh://src.earth.threerings.net/nenya/trunk@177 ed5b42cb-e716-0410-a449-f6a68f950b19
2007-03-21 18:26:02 +00:00
Mark Johnson a75658d7b0 Small change to make it possible to intercept window closing actions (in
case we want to do something other than close the application at that 
time).


git-svn-id: svn+ssh://src.earth.threerings.net/nenya/trunk@173 ed5b42cb-e716-0410-a449-f6a68f950b19
2007-03-19 23:11:56 +00:00
Ray Greenwell 7d2c156174 Don't steal focus from components implementing yon new interface.
git-svn-id: svn+ssh://src.earth.threerings.net/nenya/trunk@169 ed5b42cb-e716-0410-a449-f6a68f950b19
2007-03-13 18:49:42 +00:00
Mike Thomas 0777cc7591 JComboBoxes shouldn't have their focus stolen either, you can type into those to set the value.
git-svn-id: svn+ssh://src.earth.threerings.net/nenya/trunk@168 ed5b42cb-e716-0410-a449-f6a68f950b19
2007-03-13 18:20:16 +00:00
Mike Thomas 7bfc08c0b8 Tweak recolor tool to sort recolored images by color IDs.
git-svn-id: svn+ssh://src.earth.threerings.net/nenya/trunk@167 ed5b42cb-e716-0410-a449-f6a68f950b19
2007-03-13 04:54:33 +00:00
Andrzej Kapolka 6e7b1741ff Added the ability to add translations on a per-component-instance basis.
git-svn-id: svn+ssh://src.earth.threerings.net/nenya/trunk@160 ed5b42cb-e716-0410-a449-f6a68f950b19
2007-02-28 21:51:47 +00:00
Andrzej Kapolka dc4b721198 Added a method to create a shader state using Files and preprocessor
definitions.


git-svn-id: svn+ssh://src.earth.threerings.net/nenya/trunk@159 ed5b42cb-e716-0410-a449-f6a68f950b19
2007-02-26 19:33:01 +00:00
Michael Bayne b6f5317ad2 More header patrol.
git-svn-id: svn+ssh://src.earth.threerings.net/nenya/trunk@158 ed5b42cb-e716-0410-a449-f6a68f950b19
2007-02-24 00:38:17 +00:00
Mark Johnson 9e30c0be4b When unpacking, tell the observer we've started so that the client can display something to
the user at the start, rather then after the first bundle has completed.


git-svn-id: svn+ssh://src.earth.threerings.net/nenya/trunk@157 ed5b42cb-e716-0410-a449-f6a68f950b19
2007-02-19 18:26:57 +00:00
Andrzej Kapolka a09600c969 Disable fog on meshes using additive blending.
git-svn-id: svn+ssh://src.earth.threerings.net/nenya/trunk@156 ed5b42cb-e716-0410-a449-f6a68f950b19
2007-02-17 00:10:03 +00:00
Andrzej Kapolka 1af5a69266 Moved the code for registering extensions and creating instances to
StreamDecoder.


git-svn-id: svn+ssh://src.earth.threerings.net/nenya/trunk@154 ed5b42cb-e716-0410-a449-f6a68f950b19
2007-02-09 23:18:40 +00:00
Andrzej Kapolka fc5459fb7d Fixed mp3 playing, refactored to avoid duplicating code.
git-svn-id: svn+ssh://src.earth.threerings.net/nenya/trunk@153 ed5b42cb-e716-0410-a449-f6a68f950b19
2007-02-09 02:10:32 +00:00
Michael Bayne ea9f4d481e Non-functional MP3 playing support.
git-svn-id: svn+ssh://src.earth.threerings.net/nenya/trunk@152 ed5b42cb-e716-0410-a449-f6a68f950b19
2007-02-08 19:04:59 +00:00