Chris Robinson
8a086e3afb
Cache the mesh names from the mesh/skeleton pairs
2013-01-04 20:58:35 -08:00
Chris Robinson
3131e8dae6
Don't get the text keys if they're not being requested
2013-01-04 20:33:26 -08:00
Chris Robinson
683ced54a0
Store and retrieve the node text keys in the bones' user object bindings
2013-01-04 19:41:37 -08:00
Chris Robinson
a3d33db415
Store a NiNode's NiTextKeyExtraData in a user object binding on Ogre::Bone
2013-01-04 15:55:47 -08:00
Chris Robinson
1d4d67f811
Avoid underflows if the texture name doesn't include a '.'
2013-01-04 15:03:57 -08:00
Chris Robinson
3f19b13695
Merge remote-tracking branch 'zini/master' into animation2
2013-01-04 14:47:01 -08:00
Nathan Jeffords
2181393518
change texture renaming logic to increase performance
...
ResourceGroupManager::resourceExistsInAnyGroup is slow (at least on
windows) if the tested path does not exist, but is fast if it does (due
to finding it in the index). This change tries the '.dds' version of the
name first, and reverts to the original if the '.dds' version was not
found.
2013-01-04 11:36:22 -08:00
Chris Robinson
61ad8bb3dd
Use a list of mesh names instead of mesh objects
2013-01-04 00:14:41 -08:00
Chris Robinson
019893b5c6
Get rid of some unnecessary case-insensitive compares
2013-01-03 23:44:58 -08:00
Chris Robinson
cd8515396a
Use a multimap to store the text keys
2012-09-28 23:20:15 -07:00
Chris Robinson
9b491edbf8
Small cleanup for loading animation keyframes
2012-09-28 18:53:24 -07:00
scrawl
906d290935
Markers are actually hidden now. Inspecting the markers in NifSkope revealed why it didn't work previously: the flag that is being looked for is not present in any of the markers, nor any other flag or extra data to identify them. However, the root node name always starts with "marker", making it possible to do a string search.
2012-09-12 12:41:12 +02:00
Marc Zinnschlag
e3d893b001
Merge remote-tracking branch 'jhooks/animationsmooth'
2012-09-06 09:09:46 +02:00
scrawl
4f1bcb749f
turned off redundant edge list building
2012-09-02 10:09:41 +02:00
Jason Hooks
5202b11235
just moving a comment
2012-08-18 15:31:54 -04:00
Jason Hooks
4a219404fc
Super smooth animations; 100 PERCENT COMPLETE
2012-08-18 15:21:43 -04:00
Jason Hooks
f21df64808
changing a few things around
2012-08-18 14:48:18 -04:00
Jason Hooks
cc776810e2
smoother animations
2012-08-17 17:10:21 -04:00
Marc Zinnschlag
1da56e2832
removed some unused variables
2012-08-17 15:37:14 +02:00
Jason Hooks
d14cc5a435
update master
2012-08-16 18:20:26 -04:00
scrawl
281e15f58e
consider all material properties for nif material sharing, instead of just the texture
2012-07-26 23:40:55 +02:00
Chris Robinson
4f46c8a8db
Use a functor for the mismatch compare function
2012-07-24 14:59:25 -07:00
Chris Robinson
36be1536d9
Return text keys from NIFs when creating entities
2012-07-23 17:20:47 -07:00
scrawl
f8d6a36196
Merge branch 'master' into nif-cleanup
...
Conflicts:
apps/openmw/mwrender/sky.cpp
apps/openmw/mwrender/sky.hpp
components/nifogre/ogre_nif_loader.cpp
components/nifogre/ogre_nif_loader.hpp
2012-07-23 15:35:31 +02:00
Chris Robinson
4035d7370e
Fix name/filter comparison
2012-07-21 22:04:05 -07:00
Chris Robinson
d8cb685543
Interpolate keyframes when creating them
...
Probably not fully correct, but better than nothing.
2012-07-21 18:03:01 -07:00
Chris Robinson
c5b9098517
Remove an unused field from EntityList
2012-07-21 17:09:16 -07:00
Chris Robinson
4bc93ecd1a
Use the skeleton name for the main animation
2012-07-20 11:09:05 -07:00
Chris Robinson
4210880c06
Load the animation tracks into Ogre
2012-07-19 21:46:16 -07:00
Chris Robinson
0986cd5962
Get the animation controller target names
2012-07-19 20:48:12 -07:00
Chris Robinson
c2acf47d88
Store the list of keyframe controllers when building the bones
2012-07-19 20:30:10 -07:00
Chris Robinson
f6c837468f
Load the proper NIF skeleton
2012-07-19 11:44:08 -07:00
Chris Robinson
e760219953
Use a unique loader for each skeleton resource
2012-07-19 11:36:36 -07:00
Chris Robinson
c9b1f72d81
Use a case-insensitive compare for the part filter
2012-07-18 22:31:07 -07:00
Chris Robinson
bd74ab027a
Mirror left-sided parts
2012-07-18 21:21:49 -07:00
Chris Robinson
4af1bce659
Restore and fix some missing parts
2012-07-18 20:14:23 -07:00
Chris Robinson
d9b64b77ec
Attach skinned parts to the scene node instead of the named bone
2012-07-18 18:38:55 -07:00
Chris Robinson
5154188110
Allow specifying an alternate skeleton for mesh skinning
2012-07-18 18:29:25 -07:00
Chris Robinson
626dcd54dc
Store the skeleton name with the mesh resource loader instead of a flag
2012-07-18 17:26:51 -07:00
Chris Robinson
04b244cf9e
Use the mesh's skeleton to transform shapes into "bind pose" instead of the NIF nodes
2012-07-18 17:18:21 -07:00
Chris Robinson
2890904fb5
Use lowercase names for the mesh and skeleton resources
...
To reduce the risk of duplicates due to different capitalizations.
2012-07-18 15:27:33 -07:00
Chris Robinson
e8ff304562
Fix the initial normal vector for vertex fixups
2012-07-18 12:53:45 -07:00
Chris Robinson
3b29d280b9
Filter out skinned shapes that don't match the bone name
2012-07-18 12:47:16 -07:00
Chris Robinson
db948969c9
Attach NPC parts to the proper bone
2012-07-18 11:14:13 -07:00
Chris Robinson
a32740cf5e
Remove an unused parameter
2012-07-17 22:41:26 -07:00
Chris Robinson
b04c3cbcac
Store the entities' root node in the EntityList
2012-07-17 21:42:47 -07:00
Chris Robinson
92546ca18d
Move the last bits of code to createEntities
2012-07-17 20:23:09 -07:00
Chris Robinson
1c544682d5
Stub handling for NiTextKeyExtraData to suppress some spam
2012-07-17 16:45:01 -07:00
Chris Robinson
496343b714
Use the proper member for the NIF type string
2012-07-17 16:36:43 -07:00
Chris Robinson
3efd2030e2
Create entities when loading NIFs for creatures
2012-07-17 14:11:07 -07:00
Chris Robinson
3dedac5cb1
Create mesh entities for objects when loading the NIF
2012-07-17 13:40:03 -07:00
Chris Robinson
6047dc6a0c
Merge remote branch 'zini/master' into nif-cleanup
...
Conflicts:
apps/openmw/mwrender/animation.cpp
apps/openmw/mwrender/animation.hpp
apps/openmw/mwrender/creatureanimation.cpp
apps/openmw/mwrender/npcanimation.cpp
apps/openmw/mwrender/npcanimation.hpp
components/nifogre/ogre_nif_loader.hpp
2012-07-17 10:57:15 -07:00
scrawl
4434fb640e
Merge branch 'master' into shadersystem
2012-07-17 19:12:02 +02:00
Chris Robinson
93f0043afc
Set the mesh's attach point as the NiTriShape's node
2012-07-17 10:04:21 -07:00
guidoj
0549e949ba
Mostly removal of unnecessary #include's and a little clean up
2012-07-17 09:27:12 +02:00
Chris Robinson
65c20f128f
Build bones for non-NiNode nodes (NiTriShapes, etc)
2012-07-16 21:18:33 -07:00
Chris Robinson
fefbf86531
Use Ogre's matrix ops to transform normals
2012-07-16 14:30:23 -07:00
Chris Robinson
bf26f029f9
Fix some skinning-related transformations
2012-07-16 13:47:19 -07:00
Chris Robinson
df76c324a4
Handle the MRK text string marker
2012-07-16 13:34:56 -07:00
Chris Robinson
12f1785882
Use default bone names for duplicate names
2012-07-16 11:43:16 -07:00
Chris Robinson
75ce10c580
Don't load data for hidden meshes
2012-07-16 11:31:45 -07:00
Chris Robinson
ad75b47472
Build and set up a skeleton for meshes
2012-07-15 19:07:31 -07:00
Chris Robinson
b1f7fd9f7b
Pre-transform the mesh vertices when there's no skinning or skeleton
2012-07-15 17:00:27 -07:00
Chris Robinson
441a5c2da2
Load NiTriShapes into Ogre meshes
2012-07-15 14:12:12 -07:00
Chris Robinson
3029c221ef
Create materials when creating meshes
2012-07-15 12:59:39 -07:00
scrawl
509e9d7034
Merge branch 'master' into shadersystem
2012-07-15 21:58:45 +02:00
Chris Robinson
b4c8375f3c
Merge remote branch 'zini/master' into nif-cleanup
...
Conflicts:
components/bsa/bsa_archive.cpp
2012-07-15 12:04:43 -07:00
Chris Robinson
9028cfe83c
Look for the NiTriShape when the mesh resource wants to load
...
It's still not loaded yet.
2012-07-15 12:02:47 -07:00
Chris Robinson
69ed73399a
Avoid exposing the NIF mesh resource loading class
2012-07-15 11:40:48 -07:00
Chris Robinson
300730a834
Create the skeleton resource from NIFs
...
Note they are not loaded yet.
2012-07-15 11:13:48 -07:00
Chris Robinson
bd68f7bd33
Remove final direct uses of Mangle::Stream
2012-07-15 08:51:51 -07:00
Chris Robinson
6a447c88fb
Create meshes from the NiTriShapes in the NIF.
...
This doesn't actually load them yet. It's also very slow for certain NIFs.
2012-07-15 06:45:21 -07:00
scrawl
d41050fb79
merge
2012-07-14 11:21:40 +02:00
scrawl
7d5b94709d
Merge branch 'master' into shadersystem
...
Conflicts:
components/nifogre/ogre_nif_loader.cpp
2012-07-14 11:16:35 +02:00
Chris Robinson
939d0d2fc5
Return a list of meshes and the skeleton from NIFLoader::load
2012-07-13 20:01:15 -07:00
Chris Robinson
fdfe40a55a
Use a different loader object for each NIF mesh
2012-07-13 13:41:08 -07:00
Chris Robinson
386ac56bda
Remove the NIF loader and code to manually transform the vertices
...
This currently breaks just about everything. They should come back as it's all
reimplemented, though.
2012-07-12 20:12:18 -07:00
Chris Robinson
3f11b6b1ae
Cleanup a couple unneeded misc component references
2012-07-12 12:01:11 -07:00
Chris Robinson
86b37c6c11
Move the velocity out of the transformation object
2012-07-12 11:21:52 -07:00
Chris Robinson
645b507ba0
Return a reference to the RecordPtr from operator[] for consistency
...
RecordListT is supposed to be a list of RecordPtrT objects.
2012-07-12 05:37:56 -07:00
Chris Robinson
348b5fa207
Merge remote branch 'zini/master' into nif-cleanup
...
Conflicts:
components/nifbullet/bullet_nif_loader.cpp
2012-07-10 06:16:16 -07:00
Chris Robinson
ca37706b34
Use Ogre types for Matrix and Vector objects
2012-07-10 02:38:35 -07:00
Chris Robinson
98ae7168b1
Fix double-incrementing a pointer
2012-07-10 00:24:18 -07:00
Chris Robinson
b3aa453f9a
Use Ogre data streams for loading NIFs
2012-07-09 22:02:12 -07:00
Chris Robinson
0143cacd2b
Avoid returning pointers from NIFFile
2012-07-09 21:35:36 -07:00
Chris Robinson
d3a31a24ce
Use proper strings and vectors instead of slice arrays for NIF files
...
Slice arrays use pre-allocated pointers whose memory is managed externally. This is
unnecessary and ultimately detrimental since it prevents any kind of data fixup
(e.g. little endian to big endian, p[adding handling), and it also makes it difficult
to use Ogre data streams.
2012-07-09 21:08:23 -07:00
scrawl
b803d0e949
converted shadow caster shader
2012-07-09 19:46:36 +02:00
scrawl
81d30ff63a
temp commit
2012-07-09 19:20:41 +02:00
gugus
03f7740474
Merge branch 'master' of https://github.com/zinnschlag/openmw.git into objectRotationScaling
...
Conflicts:
apps/openmw/mwclass/npc.cpp
apps/openmw/mwscript/docs/vmformat.txt
apps/openmw/mwworld/worldimp.hpp
2012-07-09 10:39:57 +02:00
scrawl
e517e75d09
update
2012-07-07 01:25:14 +02:00
scrawl
a095572205
fixed some textures, started with sky
2012-07-06 10:31:48 +02:00
scrawl
33c48b9481
update
2012-07-06 04:28:08 +02:00
scrawl
8e683c2e05
vertex colors
2012-07-05 01:38:33 +02:00
scrawl
9bd888d9a1
transparency
2012-07-05 00:39:25 +02:00
scrawl
19ecc7f890
fix performance
2012-07-04 17:28:22 +02:00
scrawl
4ea6530772
hello world.
2012-07-04 00:26:57 +02:00
Marc Zinnschlag
c85aaafac2
more include cleanup (most removing Ogre.h)
2012-07-03 15:32:38 +02:00
Jason Hooks
fbde798968
merge
2012-06-21 19:02:20 -04:00
Jason Hooks
5028f9926d
Bullet scale solution
2012-06-12 18:09:58 -04:00
scrawl
c85c794c86
fixed some cppcheck issues
2012-06-06 20:29:30 +02:00