Commit graph

1099 commits

Author SHA1 Message Date
Chris Robinson
c6c67a1bb4 Read NiGravity fields 2013-04-07 18:15:23 -07:00
Chris Robinson
3768e04a0c Merge remote-tracking branch 'zini/master' into nifogre 2013-04-07 17:24:47 -07:00
Chris Robinson
dba7308248 Recognize NiParticleRotation 2013-04-07 17:16:49 -07:00
Chris Robinson
3c633e275e Don't create a controller for empty keyframe data 2013-04-07 15:42:07 -07:00
Chris Robinson
261ea1fe5e Implement a KeyframeController 2013-04-07 14:56:23 -07:00
Chris Robinson
f69a8259e1 Update animation source controller targets 2013-04-07 13:51:04 -07:00
Chris Robinson
44a59e1b87 Fix a couple messages 2013-04-07 13:03:41 -07:00
Chris Robinson
2362e920f3 Use an unconnected object list for animation sources
We'll want the controllers, as the plan is to use their keyframe controllers
to animate the actual skeleton used for the meshes.
2013-04-07 12:41:27 -07:00
Chris Robinson
399394ff10 Don't restrict animations to the keyframe time limits 2013-04-07 10:03:13 -07:00
Chris Robinson
ab5980ae18 Let the default controller function use absolute input
And convert the VisController to use it.
2013-04-07 08:29:56 -07:00
Chris Robinson
fe9a7f12b6 Material fixes 2013-04-07 07:53:01 -07:00
Marc Zinnschlag
e25f5c6dfe added basic region table 2013-04-07 16:32:06 +02:00
Chris Robinson
2e067e95a9 Handle NiWireframeProperty 2013-04-07 07:12:52 -07:00
Chris Robinson
ebff64a7a4 Fix UVController and add warn about unhandled material controllers 2013-04-07 06:56:12 -07:00
Marc Zinnschlag
ff1d908af4 added script table 2013-04-07 15:17:35 +02:00
Chris Robinson
be419bc891 Handle NiCamera nodes 2013-04-07 02:28:15 -07:00
Chris Robinson
2db72ae607 Rename EntityList to ObjectList 2013-04-07 01:52:35 -07:00
Chris Robinson
834a6a1f00 Remove old, unused code 2013-04-07 01:14:26 -07:00
Chris Robinson
d97b341dc6 Rename NIFMeshLoader to NIFObjectLoader 2013-04-07 01:02:21 -07:00
Marc Zinnschlag
ec7a8f1add small fix 2013-04-06 21:58:28 +02:00
Chris Robinson
63cbf7ddeb Specify a default return for failed lookups 2013-04-06 12:41:40 -07:00
Chris Robinson
ca289a317c Separate the UVController function out and make it generic
Also fix a timing bug in it.
2013-04-06 12:26:58 -07:00
Marc Zinnschlag
8bf569d58a added basic sound table 2013-04-06 21:21:10 +02:00
Chris Robinson
6b151be3f4 Create particle systems even when MRK was specified 2013-04-06 11:26:51 -07:00
Chris Robinson
41e410347e Merge remote-tracking branch 'zini/master' into nifogre 2013-04-06 10:35:01 -07:00
Chris Robinson
c283991126 Remove an unneeded method 2013-04-06 10:33:07 -07:00
Marc Zinnschlag
0f34c79d0a Merge branch 'race' 2013-04-06 19:21:38 +02:00
Chris Robinson
ebcb4c66c3 Properly read and use the NIF root record list 2013-04-06 10:17:09 -07:00
Chris Robinson
59f1d4b047 Add support for NiUVController on meshes 2013-04-06 09:44:10 -07:00
Chris Robinson
e0da265972 Use accurate bone lookups for attaching objects
NIFs don't requires nodes to have unique names, which means looking up a
bone by name may get the wrong one. Instead, use a NifIndex:BoneHandle
map to make sure we can get the proper bone from a given Nif::Node.
2013-04-06 08:15:12 -07:00
Chris Robinson
95730cc127 Create entities and particle systems for hidden objects
They're set as (in)visible as appropriate.
2013-04-06 06:53:08 -07:00
Chris Robinson
f764f243d2 Fix the particle quota 2013-04-06 06:44:34 -07:00
Chris Robinson
41ce5464c9 Recognize NiBSAnimationNode as a record type
And don't warn about animated nodes without textkeys
2013-04-06 05:00:19 -07:00
Chris Robinson
99b915e652 Fix some material warnings 2013-04-06 00:54:53 -07:00
Chris Robinson
af756bfa9c Merge remote-tracking branch 'zini/master' into nifogre 2013-04-06 00:22:31 -07:00
Chris Robinson
b5017e0543 Implement NiParticleGrowFade 2013-04-06 00:19:05 -07:00
Chris Robinson
aa9df818a5 Add support for NiVisController 2013-04-05 10:38:27 -07:00
Chris Robinson
0631b28646 Prepare for supporting controller objects 2013-04-05 10:13:54 -07:00
scrawl
75b462b974 If alpha rejection was forced, we also need to force depth_write and depth_check 2013-04-05 18:24:12 +02:00
Chris Robinson
bf0ae3ae72 Read NiVisData info 2013-04-05 06:29:14 -07:00
Chris Robinson
12fada2862 Don't offset the animation time to 0 2013-04-05 05:34:59 -07:00
Chris Robinson
dc9f5f93e7 Use a helper function to get node properties 2013-04-05 05:14:24 -07:00
Marc Zinnschlag
73da794d77 added basic race table 2013-04-04 14:34:39 +02:00
Chris Robinson
b5719e0ec7 Create particle systems for NiAutoNormalParticles and NiRotatingParticles nodes
Very incomplete, but it's something to work with.
2013-04-04 05:10:53 -07:00
Chris Robinson
77ba0fbe73 Prepare for creating particles
This adds a vector of ParticleSystems to the EntityList, and modifies
corresponding code to handle it. It also loads the ParticleFX plugin so
particles can be created (although they aren't yet).
2013-04-04 05:10:52 -07:00
Chris Robinson
ac10c5f05c Even more particle information 2013-04-04 05:10:52 -07:00
Chris Robinson
2f6ae4a915 Read more particle information 2013-04-04 05:10:51 -07:00
Chris Robinson
ee0a20f9ce Read some missing particle data from NIFs 2013-04-04 05:10:50 -07:00
Chris Robinson
97d617d43f Use more appropriate VBO settings
Unskinned meshes don't need dynamic VBOs; they aren't rewritten since their
transformations are handled by the modelview matrix. They also don't need the
local RAM copy (the "shadow buffer") since it's really only useful for skinning
purposes (though this means the VBO has to be readable for static geometry to
work).
2013-04-04 05:10:49 -07:00
Marc Zinnschlag
18e046e628 cleaned up race record struct 2013-04-04 13:50:36 +02:00