Chris Robinson
d836b3d0ff
Don't try to create animations if there's no text keys and nonaccum node.
...
Such meshes apparently use NiBSAnimationNode, a Bethesda-specific extension
which has animation-related info in its flags (values currently unknown).
12 years ago
Chris Robinson
6905bd18ba
Filter out the group name from the text keys
...
It's already in the animation name, and the text keys are animation-specific
anyway.
12 years ago
Chris Robinson
8e8900e422
Use the first bone with text keys as the nonaccum root.
12 years ago
Chris Robinson
536f8104e6
Do not create an 'all' animation.
12 years ago
Mark Siewert
713d324eeb
- Minor code cleanup
12 years ago
Mark Siewert
a8e02779b2
- Add support for multiple plugins trying to modify the same reference
...
- Fix a small signed/unsigned warning
12 years ago
Chris Robinson
1ce8eaf52c
Merge remote-tracking branch 'zini/master' into animation2
...
Conflicts:
apps/openmw/mwrender/actors.cpp
apps/openmw/mwrender/actors.hpp
12 years ago
Chris Robinson
94e30199d1
Merge remote-tracking branch 'zini/master' into animation2
...
Conflicts:
components/nifogre/ogre_nif_loader.cpp
12 years ago
Chris Robinson
e5f040a06f
Improve filename pattern matching
12 years ago
Chris Robinson
b23fcb260c
Use the record index for finding the NiTriShape instead of the name
12 years ago
Chris Robinson
660d73fd88
Store the NIF index in the Record object
12 years ago
scrawl
31e6d28b19
Close NIF file resource after loading it into memory
12 years ago
Marc Zinnschlag
db48017c36
Merge remote-tracking branch 'blunted2night/nif_cache_v6'
12 years ago
Michal Sciubidlo
85bdb49d1b
Mix debug and release if necessary under non Windows systems.
12 years ago
Nathan Jeffords
d5ebd6654d
cache loaded NIF files to eliminate reloads
...
Created a NIF file caching mechanism to prevent the system from
reloading a NIF during a startup and cell changes.
12 years ago
Nathan Jeffords
0989b44b41
spread some const around NIF loading
12 years ago
Nathan Jeffords
9d4f8c6722
changed bullet_nif_loader to not modifiy NIF file
...
The code in bullet_nif_loader was modifing the loaded NIF file as part of
processing. Currently this is OK since the NIF file will be thrown away
immediately, but it causes problems when trying to share loaded NIF files.
12 years ago
Chris Robinson
23ac1c2de5
Merge remote-tracking branch 'zini/master' into animation2
...
Conflicts:
components/nifogre/ogre_nif_loader.cpp
12 years ago
Marc Zinnschlag
4defb1a476
Merge remote-tracking branch 'trombonecot/lowerstring'
...
Conflicts:
apps/openmw/mwgui/loadingscreen.cpp
12 years ago
eduard
2dc0064cc2
more string lowercase
12 years ago
Chris Robinson
a14132b5a0
Merge remote-tracking branch 'zini/master' into animation2
12 years ago
Chris Robinson
c4c8295e0b
Rename NIFLoader to Loader, and update some comments
12 years ago
Nathan Jeffords
44031ec3d7
fleshed out BSAArchive and DirArchive.
...
Implemented both lists & finds, with pattern matching.
Conflicts:
components/bsa/bsa_archive.cpp
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
Marc Zinnschlag
d1e51ebf42
silenced some warnings
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
Nathan Jeffords
67491f6c49
reworked DirArchive to improve performance
...
Replaced old file index with a simple map. The map works by storing the
file's relative path with path seperators normalized, and in lower case if
not in strict mode. Incoming searches are normalized in the same way then
the name is searched in the map. The value in the map is the original full
path to the file which is then used to created a ConstrainedDataStream. In
addition to changing the index, the commonly used Archive methods are
implemented so that they don't fall back on the default FileSystemArchive
implementations.
12 years ago
Nathan Jeffords
43cd88a24e
include members of BSAArchives in Ogres resource indices
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
921ae76ea9
Merge remote-tracking branch 'zini/master' into animation2
12 years ago
Chris Robinson
7ba09ff025
Catch errors from buildBones
12 years ago
Marc Zinnschlag
e31cd1c805
Merge remote-tracking branch 'corristo/master'
12 years ago
Nikolay Kasyanov
1d3f3bcce3
clang build fix
12 years ago
Marc Zinnschlag
25815ab8f7
Merge remote-tracking branch 'potatoesmaster/to_utf8-rewrite'
12 years ago
Emanuel Guevel
0b7d11d38d
to_utf8 test: fix Utf8Encoder constructor
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
Emanuel Guevel
63f09462fd
to_utf8, Utf8Encoder: pass encoding as constructor parameter
...
Edit other files accordingly.
12 years ago
Chris Robinson
e5ce55b6a4
Remove a hack
12 years ago
Marc Zinnschlag
043e6c09fe
Merge remote-tracking branch 'chris/animation2'
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
Jordan Milne
3ed77ca189
Include C++ header instead
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
Jordan Milne
b52904a6ea
Include headers necessary for compilation under VS2010
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
Marc Zinnschlag
215b43cc7b
Merge remote-tracking branch 'blunted2night/texname_fix'
12 years ago
Marc Zinnschlag
b4d63814cc
post merge fix
12 years ago
Nathan Jeffords
fec9a59237
changed EMSLoader to use ConstrainedDataStream
...
Changed the EMSLoader class to use the ConstrainedDataStream so that
future changes may benifit from its increased performance.
12 years ago
Nathan Jeffords
278337116b
increased performance of ConstrainedDataStream
...
Reimplemented ConstrainedDataStream to use low-level IO calls and a
custom buffering scheme to avoid using C++ iostreams.
12 years ago
Nathan Jeffords
5c7f1bd497
moved ConstrainedDataStream into its own file
...
moved the ConstrainedDataStream into its own source file and changed
BSAFile to use it though the exposed factory function. This is in
preperation foreimplementing it based on feedback from profiling that
(at least on windows) the C++ iostreams library is quite slow.
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
Emanuel Guevel
cc792da858
Fix to_utf8 test: add test data directory and remove unused include
12 years ago
Emanuel Guevel
c947d87ab9
Add a test for to_utf8 component
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
Emanuel Guevel
0bdf52a071
components/to_utf8: keep only Utf8Encoder
12 years ago
Emanuel Guevel
02bf02f288
ESMReader, ESMWriter: use Utf8Encoder
12 years ago
Emanuel Guevel
9906c3051d
components/translation: use Utf8Encoder
12 years ago
Emanuel Guevel
740e2b5769
components/to_utf8: add class Utf8Encoder
12 years ago
Mark Siewert
d6377fb2e3
- Support deleting references from a plugin
...
- Add preliminary support for loading some unique fields appearing only in savegames
- Add a few lines required for supporting respawning references. Incomplete.
12 years ago
Marc Zinnschlag
80a0be3264
Merge remote-tracking branch 'blunted2night/msvcbuild'
12 years ago
Nathan Jeffords
08fa9dcd3e
replaced std::string concatenation with std::ostringstream
...
Changed a block of code that was performing a series of string
concatenations to use an ostringstream instead. This allowed the removal
of calls to std::to_string (not C++03 compliant) and fixes an compile
error in MSVC 2010 (ambigous overload when calling std::to_string).
12 years ago
Nathan Jeffords
7228f5d696
added missing reference to <cctype>
...
added missing reference to <cctype> that was causing Visual Studio 2010
to fail to compile stringops.hpp
12 years ago
lazydev
7cd1e87fe8
Merge branch 'master' of git://github.com/zinnschlag/openmw
...
Conflicts:
apps/openmw/mwdialogue/dialoguemanagerimp.cpp
12 years ago
lazydev
cd5d95ed22
1. Dialogs in Russian version now works.
...
2. Destination names it travel window are now translated
12 years ago
eduard
69d9d22579
comparestring
12 years ago
eduard
98103e15eb
conflict resolution
12 years ago
eduard
c85400b809
Merge https://github.com/zinnschlag/openmw into comparestring
...
Conflicts:
apps/openmw/mwdialogue/dialoguemanagerimp.cpp
apps/openmw/mwworld/worldimp.cpp
components/esm_store/reclists.hpp
components/misc/stringops.hpp
12 years ago
Marc Zinnschlag
334588bf1c
Merge branch 'editor2'
12 years ago
eduard
c75a5ae212
string compare and tolower
12 years ago
eduard
8545667bbd
string compare and tolower
12 years ago
Mark Siewert
2cef65a056
- Remove some files that are no longer in upstream/master
12 years ago
Tom Mason
a14b7e4a0f
small fixes on text defines
12 years ago
Marc Zinnschlag
e9ba7339f3
improved error handling
12 years ago
Marc Zinnschlag
afc2e840ae
renamed namespace TranslationData to Translation
12 years ago
Marc Zinnschlag
206c613b52
moved translation storage from GUI manager to engine
12 years ago
Marc Zinnschlag
2d468fec02
made previous commits naming standard compliant
12 years ago
Marc Zinnschlag
4c28f3211b
Merge remote-tracking branch 'lazydev/master'
12 years ago
Mark Siewert
049b0e66e0
- Restore ability to generate references in the same cell from multiple plugins
...
- Disable some code related to deleting entries in the store so that it builds again
12 years ago
lazydev
1f71395660
renaming of translation component; removing of C++11 features
12 years ago
lazydev
74ae479780
Cell names localization fix
12 years ago
Tom Mason
8ac8fdff47
implemented all text defines except a few for keybindings that don't exist yet
12 years ago
Tom Mason
f2c6907244
Added in text escape sequences for dialogue, messageboxes and books. builtins are placeholders, global variables work
12 years ago
Thoronador
5a7a8629b6
remove unnecessary include directive
12 years ago
Thoronador
32f051d61d
Remove 'GMST fixing' for dirty GMST records
...
The 'fixing' for so-called dirty GMSTs does not work properly in its
current state anyway, so it should be removed. Fixing the 'GMST fixing'
might not be possible, because whether or not a GMST is 'dirty' depends
on the language version of MW. Therefore different 'fixing' algorithms
would be required for the different MW localisations, and I do not see
a good reason why GMST values should be hard-coded in the GMST load
procedure. In my opinion, it only clutters the code.
Last but not least, I believe that it is not the task of the engine to
clean ESM files from dirty entries. That is a job for the modders, who
should only release clean ESM/ESP files in the first place. The engine
should not need to worry about whether a file is 'dirty' or not.
That is why I believe a feature for cleaning ESM/ESP files shall not be
part of the engine.
12 years ago
Marc Zinnschlag
5cd2fe00ab
initialise blank global records
12 years ago
Marc Zinnschlag
8a09e03d5c
global variable editing (no undo support yet)
12 years ago
Marc Zinnschlag
ef9575498f
basic (non-editable) subview for global variables
12 years ago
Mark Siewert
b103426cf0
- Partially reimplement deleting objects defined in a parent esX file.
...
- Try to reimplement multiple esX files dropping references in the same file.
NOTE: None of these features works. Maybe the code itself does not build. Anyway, after 12 hours of hacking, I am just tired and want to get a snapshot of the code out.
12 years ago
Mark Siewert
896ab44d1e
- Add some updated files missing from last commit.
...
- Move plugin dependency test from esmreader.cpp to esmstpre.cpp; fixes crash in omwlauncher.
12 years ago