Commit Graph

18 Commits

Author SHA1 Message Date
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
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 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
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
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
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 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
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
Andrzej Kapolka 46616164f4 Use utility method ArrayUtil.copy.
git-svn-id: svn+ssh://src.earth.threerings.net/nenya/trunk@73 ed5b42cb-e716-0410-a449-f6a68f950b19
2006-11-08 03:07:19 +00:00
Andrzej Kapolka 09627624c6 Switch to using JME's serialization mechanism, which promises a degree
of version safety (meaning we won't necessarily have to recompile all 
the models when we add a new field) and should help avoid the frequent 
binary changes to which Java serialization is prone.


git-svn-id: svn+ssh://src.earth.threerings.net/nenya/trunk@71 ed5b42cb-e716-0410-a449-f6a68f950b19
2006-11-07 03:14:35 +00:00
Andrzej Kapolka 1eff736540 Added options for alpha testing.
git-svn-id: svn+ssh://src.earth.threerings.net/nenya/trunk@33 ed5b42cb-e716-0410-a449-f6a68f950b19
2006-08-25 00:39:45 +00:00
Andrzej Kapolka f8c230df6f Added option to depth-sort the triangles in transparent meshes. I tried
to optimize this, and seems reasonably fast, but not fast enough to 
enable it for all transparent meshes.  Hopefully the artists can improve 
performance by merging meshes together, and we can strike a happy 
balance between sorting by mesh and sorting by triangles.


git-svn-id: svn+ssh://src.earth.threerings.net/nenya/trunk@29 ed5b42cb-e716-0410-a449-f6a68f950b19
2006-08-23 23:14:38 +00:00
Andrzej Kapolka a6aab0c177 Added options for specifying the filter and mipmap parameters for model
textures, as well as for using an emissive map.


git-svn-id: svn+ssh://src.earth.threerings.net/nenya/trunk@27 ed5b42cb-e716-0410-a449-f6a68f950b19
2006-08-22 20:23:42 +00:00
Michael Bayne c2117ee86d Behold, Nenya, Ring of Water and repository for our media and animation related
goodies, both Java 2D and LWJGL/JME 3D.


git-svn-id: svn+ssh://src.earth.threerings.net/nenya/trunk@1 ed5b42cb-e716-0410-a449-f6a68f950b19
2006-06-23 18:07:28 +00:00