scrawl
455ec0996d
Shaders & textures are now loaded upon loading the NIF, instead of when the object becomes visible in the camera frustum. Should improve responsiveness.
12 years ago
eduard
2dc0064cc2
more string lowercase
12 years ago
Chris Robinson
c4c8295e0b
Rename NIFLoader to Loader, and update some comments
12 years ago
Chris Robinson
4b7cc1372f
Some cleanup
12 years ago
Chris Robinson
a9bcbfd8d3
Use Node::_getFullTransform instead of building the matrix manually
12 years ago
Chris Robinson
015bb0bf1f
Use the calculated max time for the "all" animation
12 years ago
Chris Robinson
465fd9c8af
Offset animation times to start at 0
12 years ago
Chris Robinson
4054934f16
Store text keys for each animation
12 years ago
Chris Robinson
bb98542c5a
Build separate animations for each group
12 years ago
Chris Robinson
e44729cd43
Make the text keys lower-case when extracting them
...
I think it's safe to assume all text keys are treated in a case-insensitive
manner. So far the only known NiTextKeyExtraData records are for animation
keys, which effectively are.
12 years ago
Chris Robinson
14d814d1d3
Avoid creating bones for NiTriShape nodes
...
The offset specified for them can be just as easilly handled by the tag point
they get connected to, and as such it's just needless extra nodes.
12 years ago
Chris Robinson
7ba09ff025
Catch errors from buildBones
12 years ago
Chris Robinson
8ebf49a35b
Only lower-case the model name
...
The skeleton name will already be lower-case
12 years ago
Chris Robinson
18389c7b04
Set non-bone nodes as manually controlled
12 years ago
Chris Robinson
e5ce55b6a4
Remove a hack
12 years ago
Chris Robinson
58d35dbfcf
Have createEntities' caller retrieve the text keys as needed
12 years ago
Chris Robinson
761914bdaa
Use a separate method to build the animation
12 years ago
Chris Robinson
8a086e3afb
Cache the mesh names from the mesh/skeleton pairs
12 years ago
Chris Robinson
3131e8dae6
Don't get the text keys if they're not being requested
12 years ago
Chris Robinson
683ced54a0
Store and retrieve the node text keys in the bones' user object bindings
12 years ago
Chris Robinson
a3d33db415
Store a NiNode's NiTextKeyExtraData in a user object binding on Ogre::Bone
12 years ago
Chris Robinson
1d4d67f811
Avoid underflows if the texture name doesn't include a '.'
12 years ago
Chris Robinson
3f19b13695
Merge remote-tracking branch 'zini/master' into animation2
12 years ago
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.
12 years ago
Chris Robinson
61ad8bb3dd
Use a list of mesh names instead of mesh objects
12 years ago
Chris Robinson
019893b5c6
Get rid of some unnecessary case-insensitive compares
12 years ago
Chris Robinson
cd8515396a
Use a multimap to store the text keys
12 years ago
Chris Robinson
9b491edbf8
Small cleanup for loading animation keyframes
12 years ago
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.
12 years ago
Marc Zinnschlag
e3d893b001
Merge remote-tracking branch 'jhooks/animationsmooth'
13 years ago
scrawl
4f1bcb749f
turned off redundant edge list building
13 years ago
Jason Hooks
5202b11235
just moving a comment
13 years ago
Jason Hooks
4a219404fc
Super smooth animations; 100 PERCENT COMPLETE
13 years ago
Jason Hooks
f21df64808
changing a few things around
13 years ago
Jason Hooks
cc776810e2
smoother animations
13 years ago
Marc Zinnschlag
1da56e2832
removed some unused variables
13 years ago
Jason Hooks
d14cc5a435
update master
13 years ago
scrawl
281e15f58e
consider all material properties for nif material sharing, instead of just the texture
13 years ago
Chris Robinson
4f46c8a8db
Use a functor for the mismatch compare function
13 years ago
Chris Robinson
36be1536d9
Return text keys from NIFs when creating entities
13 years ago
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
13 years ago
Chris Robinson
4035d7370e
Fix name/filter comparison
13 years ago
Chris Robinson
d8cb685543
Interpolate keyframes when creating them
...
Probably not fully correct, but better than nothing.
13 years ago
Chris Robinson
c5b9098517
Remove an unused field from EntityList
13 years ago
Chris Robinson
4bc93ecd1a
Use the skeleton name for the main animation
13 years ago
Chris Robinson
4210880c06
Load the animation tracks into Ogre
13 years ago
Chris Robinson
0986cd5962
Get the animation controller target names
13 years ago
Chris Robinson
c2acf47d88
Store the list of keyframe controllers when building the bones
13 years ago
Chris Robinson
f6c837468f
Load the proper NIF skeleton
13 years ago
Chris Robinson
e760219953
Use a unique loader for each skeleton resource
13 years ago
Chris Robinson
c9b1f72d81
Use a case-insensitive compare for the part filter
13 years ago
Chris Robinson
bd74ab027a
Mirror left-sided parts
13 years ago
Chris Robinson
4af1bce659
Restore and fix some missing parts
13 years ago
Chris Robinson
d9b64b77ec
Attach skinned parts to the scene node instead of the named bone
13 years ago
Chris Robinson
5154188110
Allow specifying an alternate skeleton for mesh skinning
13 years ago
Chris Robinson
626dcd54dc
Store the skeleton name with the mesh resource loader instead of a flag
13 years ago
Chris Robinson
04b244cf9e
Use the mesh's skeleton to transform shapes into "bind pose" instead of the NIF nodes
13 years ago
Chris Robinson
2890904fb5
Use lowercase names for the mesh and skeleton resources
...
To reduce the risk of duplicates due to different capitalizations.
13 years ago
Chris Robinson
e8ff304562
Fix the initial normal vector for vertex fixups
13 years ago
Chris Robinson
3b29d280b9
Filter out skinned shapes that don't match the bone name
13 years ago
Chris Robinson
db948969c9
Attach NPC parts to the proper bone
13 years ago
Chris Robinson
a32740cf5e
Remove an unused parameter
13 years ago
Chris Robinson
b04c3cbcac
Store the entities' root node in the EntityList
13 years ago
Chris Robinson
92546ca18d
Move the last bits of code to createEntities
13 years ago
Chris Robinson
1c544682d5
Stub handling for NiTextKeyExtraData to suppress some spam
13 years ago
Chris Robinson
496343b714
Use the proper member for the NIF type string
13 years ago
Chris Robinson
3efd2030e2
Create entities when loading NIFs for creatures
13 years ago
Chris Robinson
3dedac5cb1
Create mesh entities for objects when loading the NIF
13 years ago
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
13 years ago
scrawl
4434fb640e
Merge branch 'master' into shadersystem
13 years ago
Chris Robinson
93f0043afc
Set the mesh's attach point as the NiTriShape's node
13 years ago
guidoj
0549e949ba
Mostly removal of unnecessary #include's and a little clean up
13 years ago
Chris Robinson
65c20f128f
Build bones for non-NiNode nodes (NiTriShapes, etc)
13 years ago
Chris Robinson
fefbf86531
Use Ogre's matrix ops to transform normals
13 years ago
Chris Robinson
bf26f029f9
Fix some skinning-related transformations
13 years ago
Chris Robinson
df76c324a4
Handle the MRK text string marker
13 years ago
Chris Robinson
12f1785882
Use default bone names for duplicate names
13 years ago
Chris Robinson
75ce10c580
Don't load data for hidden meshes
13 years ago
Chris Robinson
ad75b47472
Build and set up a skeleton for meshes
13 years ago
Chris Robinson
b1f7fd9f7b
Pre-transform the mesh vertices when there's no skinning or skeleton
13 years ago
Chris Robinson
441a5c2da2
Load NiTriShapes into Ogre meshes
13 years ago
Chris Robinson
3029c221ef
Create materials when creating meshes
13 years ago
scrawl
509e9d7034
Merge branch 'master' into shadersystem
13 years ago
Chris Robinson
b4c8375f3c
Merge remote branch 'zini/master' into nif-cleanup
...
Conflicts:
components/bsa/bsa_archive.cpp
13 years ago
Chris Robinson
9028cfe83c
Look for the NiTriShape when the mesh resource wants to load
...
It's still not loaded yet.
13 years ago
Chris Robinson
69ed73399a
Avoid exposing the NIF mesh resource loading class
13 years ago
Chris Robinson
300730a834
Create the skeleton resource from NIFs
...
Note they are not loaded yet.
13 years ago
Chris Robinson
bd68f7bd33
Remove final direct uses of Mangle::Stream
13 years ago
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.
13 years ago
scrawl
d41050fb79
merge
13 years ago
scrawl
7d5b94709d
Merge branch 'master' into shadersystem
...
Conflicts:
components/nifogre/ogre_nif_loader.cpp
13 years ago
Chris Robinson
939d0d2fc5
Return a list of meshes and the skeleton from NIFLoader::load
13 years ago
Chris Robinson
fdfe40a55a
Use a different loader object for each NIF mesh
13 years ago
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.
13 years ago
Chris Robinson
3f11b6b1ae
Cleanup a couple unneeded misc component references
13 years ago
Chris Robinson
86b37c6c11
Move the velocity out of the transformation object
13 years ago
Chris Robinson
645b507ba0
Return a reference to the RecordPtr from operator[] for consistency
...
RecordListT is supposed to be a list of RecordPtrT objects.
13 years ago
Chris Robinson
348b5fa207
Merge remote branch 'zini/master' into nif-cleanup
...
Conflicts:
components/nifbullet/bullet_nif_loader.cpp
13 years ago
Chris Robinson
ca37706b34
Use Ogre types for Matrix and Vector objects
13 years ago
Chris Robinson
98ae7168b1
Fix double-incrementing a pointer
13 years ago
Chris Robinson
b3aa453f9a
Use Ogre data streams for loading NIFs
13 years ago
Chris Robinson
0143cacd2b
Avoid returning pointers from NIFFile
13 years ago
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.
13 years ago
scrawl
b803d0e949
converted shadow caster shader
13 years ago
scrawl
81d30ff63a
temp commit
13 years ago
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
13 years ago
scrawl
e517e75d09
update
13 years ago
scrawl
a095572205
fixed some textures, started with sky
13 years ago
scrawl
33c48b9481
update
13 years ago
scrawl
8e683c2e05
vertex colors
13 years ago
scrawl
9bd888d9a1
transparency
13 years ago
scrawl
19ecc7f890
fix performance
13 years ago
scrawl
4ea6530772
hello world.
13 years ago
Marc Zinnschlag
c85aaafac2
more include cleanup (most removing Ogre.h)
13 years ago
Jason Hooks
fbde798968
merge
13 years ago
Jason Hooks
5028f9926d
Bullet scale solution
13 years ago
scrawl
c85c794c86
fixed some cppcheck issues
13 years ago
scrawl
ddb0a91994
addition to last commit
13 years ago
Marc Zinnschlag
afa859a6a6
Merge remote branch 'jhooks/clothingarmor'
...
Conflicts:
apps/openmw/mwrender/npcanimation.cpp
13 years ago
scrawl
95f87a8abf
more or less complete list for morrowind.bsa (thanks to artorius)
13 years ago
scrawl
a727bcd4a4
override nif transparency settings (part 1)
13 years ago
scrawl
2a4fcf42a3
basic shadows
13 years ago
Jason Hooks
74deb5588d
Post merge
13 years ago
scrawl
cdea19206c
Revert "more accurate fog, TODO: apply this to the terrain"
...
This reverts commit 96c37d3e7c
.
13 years ago
scrawl
96911ada95
restored render queue of transparent objects, they are now part of the mrt textures
...
this fixes some issues with transparent objects not visible in the refraction
13 years ago
scrawl
96c37d3e7c
more accurate fog, TODO: apply this to the terrain
13 years ago
scrawl
622fb568cf
removed MRT setting and figure it out automatically
13 years ago
scrawl
006970fd79
add MRT code to shaders
13 years ago
Jason Hooks
57299571d5
Preparing for clothes/armor
13 years ago
scrawl
6091a0504d
first settings test (config file has to be created manually)
13 years ago
Alexander "Ace" Olofsson
4a9a416d46
Can find files even if no .bsa file exists now
13 years ago
Lukasz Gromanowski
f8afc22f04
Issue #225 : Corrected wrong delete operator introduced by one of previous commit.
13 years ago
Lukasz Gromanowski
2b9845a5b6
Issue #225 : Free memory allocated for sending into HardwareVertexBuffer.
...
Free memory allocated for sending into HardwareVertexBuffer in NIFLoader class.
13 years ago
scrawl
118250171d
Merge branch 'master' of https://github.com/zinnschlag/openmw into shaders
...
Conflicts:
apps/openmw/mwrender/objects.cpp
13 years ago
Marc Zinnschlag
3d1cbcd4e7
Merge remote branch 'jhooks/animperform'
13 years ago
Jason Hooks
9848b67174
Fixing errors
13 years ago
scrawl
f7b706d24e
use the vertex colours that morrowind supplies for a lot of meshes
13 years ago
scrawl
ff8f95fcca
fix batch lighting, removed the "bumping number of lights" hack
13 years ago
scrawl
332671b43d
lighting fix
13 years ago
scrawl
b2109a1302
make the vertex colours only affect diffuse, this caused some areas to
...
be darker than they should be
13 years ago
scrawl
8910b0d471
use shaders for all NIF materials. this has numerous advantages:
...
- vertex colours are now working as they should (and they have a huge impact on the look)
- the lighting is per pixel and looks a lot better
- by using shaders, we can use more lights at a time (fixed function has max of 8)
13 years ago
Jason Hooks
8d7a5f469b
a few changes
13 years ago
Jason Hooks
38a0d1d1c5
Merging in master
13 years ago
Jason Hooks
e58f2f5363
Eliminating unnecessary data from skeletons and shape saving
13 years ago
Jason Hooks
2217847c57
Fixing a crash
13 years ago
Marc Zinnschlag
1a6a49b9b8
Merge remote branch 'lgro/fix_warnings'
13 years ago
Lukasz Gromanowski
8829d46bda
Clean up compilation warnings.
...
Clan up compilation warnings like "variable ... set but not used" introduced
in some older and recent commits.
Signed-off-by: Lukasz Gromanowski <lgromanowski@gmail.com>
13 years ago
Marc Zinnschlag
273eac12a1
Merge remote branch 'jhooks/animation2' into animation2
...
Conflicts:
apps/openmw/mwrender/npcanimation.cpp
components/nifogre/ogre_nif_loader.cpp
13 years ago
Jason Hooks
1da519a914
Some cleanup
13 years ago
Jason Hooks
6de0847b86
Slightly better performance on animation
13 years ago
Nikolay Kasyanov
ec6243dd77
fixed compilation problem with llvm clang: constant type explicitly set to float
13 years ago
Jason Hooks
bcf3e45ff6
Proper buffer designation
13 years ago
Marc Zinnschlag
9b910dda94
clean up
13 years ago
Jason Hooks
d1793bc4bd
Animation files in the correct directory
13 years ago
Jason Hooks
0712bba49b
Changing a few things around with handleshapes
13 years ago
Jason Hooks
eab69f18ac
File output switch
13 years ago
Jason Hooks
295eb27c2d
Better Text Indices; Better file output
13 years ago
Jason Hooks
859ac1153e
Basic Text Indices Working
13 years ago
Jason Hooks
0715f9b6ab
Preparing to use text indices
13 years ago
Jason Hooks
595d0b1192
Cleanup; warnings
13 years ago
Jason Hooks
45c57721ff
Turning off hardware skinning2
13 years ago
Jason Hooks
762727308e
Hardware skinning working (YESgit add components --allgit add components --allgit add components --allgit add components --allgit add components --allgit add components --allgit add components --allgit add components --allgit add components --allgit add components --allgit add components --all)
13 years ago
Jason Hooks
baa3f51886
Trying to fix errors
13 years ago
Jason Hooks
cef2f5e927
Trying to get code to conform with older c++
13 years ago
Jason Hooks
d855bb4fc6
physics reenabled
13 years ago
Jason Hooks
6d10c76b06
Unique Identifiers for Creatures and NPC Free Parts
13 years ago
Jason Hooks
d51dfebde1
NPCs fully rendered
13 years ago
Jason Hooks
47112ad7f9
Changing a lot of things
13 years ago
Jason Hooks
0902a3db89
Filled out NpcAnimation and CreatureAnimation classes
13 years ago
Jason Hooks
39338f4be1
NPC bounded parts
13 years ago
Jason Hooks
5c48d8fc1e
more stuff
13 years ago
Jason Hooks
835c3f2603
Working towards npc rendering
13 years ago
Jason Hooks
7bd911b401
Problems with handles
13 years ago
Jason Hooks
e8ec9093f8
More NIFLoader code
13 years ago
Jason Hooks
828a3904a5
BSAArchive done and some change to NIFLoader
13 years ago
Marc Zinnschlag
8446619ac4
Merge branch 'components_namespaces' into next
...
Conflicts:
apps/openmw/mwrender/interior.cpp
components/bsa/bsa_archive.cpp
14 years ago
Lukasz Gromanowski
e9ff9a446b
Mantis: #18 - Move components from global namespace into their own namespace.
...
Moving classes from components/nifogre into NifOgre namespace.
Signed-off-by: Lukasz Gromanowski <lgromanowski@gmail.com>
14 years ago
Lukasz Gromanowski
90985e849e
Mantis: #18 - Move components from global namespace into their own namespace.
...
Moving classes from components/misc into Misc namespace.
Note: Misc namespace introduced conflict with ESM::Misc and MWClass::Misc
classes, so both of them are renamed to ESM::Miscellaneous
and MWClass::Miscellaneous.
Signed-off-by: Lukasz Gromanowski <lgromanowski@gmail.com>
14 years ago
Marc Zinnschlag
bc92b7b1fa
Merge branch 'directories' into next
...
Conflicts:
components/files/multidircollection.hpp
components/nifogre/ogre_nif_loader.hpp
14 years ago
Marc Zinnschlag
0f2df4e2b8
more cleanup
14 years ago
Jason Hooks
a719a6b468
Getting rid of animation code in nif loader
14 years ago
gugus
0d9dde0fcf
experimental: each material with the same texture is loaded only once. Problem: it doesn't take into account other material properties (which seems to be always the same anyway)
14 years ago
Jason Hooks
2ac1cc8aee
Trying to animate creatures
14 years ago
Jason Hooks
d035441876
Reintroducing animation
14 years ago
Jan-Peter Nilsson
229a91a625
Remove unused code/dependencies
14 years ago
Jan-Peter Nilsson
d68141d203
Remove unused variables
14 years ago
Jan-Peter Nilsson
9ee83caaa2
Avoid crash when no bones are available
14 years ago
Jan-Peter Nilsson
696861349e
Rename skel to mSkel
14 years ago
Pieter van der Kloet
dd4d022301
Converted all tabs to four spaces
14 years ago
Jason Hooks
11406ae6f3
cleanupandupdate
14 years ago
Jason Hooks
60601682cd
Beast races fixed
14 years ago
Jason Hooks
1896a6a2e8
Preliminary npcs4
14 years ago
Jason Hooks
467988455c
Preliminary npcs3
14 years ago
Nicolay Korslund
d32563063b
Alternative fix to mesh crash bug
15 years ago
Armin Preiml
27166b4ee4
added bone assignment, skeleton is disabled for meshes
...
Skeleton isn't assigned to the meshes for now, because it crashes on some.
15 years ago
Armin Preiml
47a28fe02b
If nif has a skeleton vertices are placed on the right position.
15 years ago
Armin Preiml
d8f8bd12d3
Disabled loading skins.nif. NifLoader builds now a skeleton (if available)
15 years ago
Armin Preiml
181b538e4a
restructured ogre nif code (struct -> class with singleton), formated code
15 years ago
Marc Zinnschlag
e4f85cb3e6
directory structure reorganisation (still missing the mangle stuff)
15 years ago