Commit Graph

26681 Commits (ed5a4e195b1e4bb55c89444eaa5546d3dd5edc35)
 

Author SHA1 Message Date
elsid ed5a4e195b
Use unique_ptr to avoid possible memory leak 3 years ago
elsid 8e71c246bf
Remove redundant BulletShape getters 3 years ago
elsid fc9a405dc5
Make BulletShape::makeInstance free function 3 years ago
elsid b905dd17c3
Use unique_ptr to store btCollisionShape in BulletShape 3 years ago
elsid 80e3623d9a
Avoid dynamic cast in duplicateCollisionShape 3 years ago
elsid ca8584f6f6
Move functions independent from BulletShape into anonymous namespace 3 years ago
elsid 29a772c33f
Rename Resource::BulletShape::CollisionBox fields according to styleguide 3 years ago
psi29a e3cfe5d35a Merge branch 'backproj' into 'master'
Move the projectile simulation to the background thread

See merge request OpenMW/openmw!1276
3 years ago
psi29a b189282ba1 Merge branch 'compile_no_evil' into 'master'
Remove dead code

See merge request OpenMW/openmw!1327
3 years ago
psi29a 34b63bf142 Merge branch 'omwscripts' into 'master'
Change format of "*.omwscripts" files

See merge request OpenMW/openmw!1271
3 years ago
Evil Eye 9b565c4cf9 Remove dead code 3 years ago
Bret Curtis 00356e4683
Merge pull request #3187 from OpenMW/silence_deprecated_opengl_on_mac_we_know
Silence all opengl deprecation warnings for MacOS
3 years ago
Bret Curtis fa5581942e
Update CMakeLists.txt 3 years ago
Bret Curtis 1a51c6eb5d
Update CMakeLists.txt 3 years ago
psi29a b3f84df43c Merge branch 'sky_shaders' into 'master'
Sky shaders

See merge request OpenMW/openmw!1057
3 years ago
fredzio 3750eb9cd8 Move Projectile simulation to the background thread. 3 years ago
fredzio a245981e4e Make interpolateMovement works with PtrHolder instead of Actor 3 years ago
fredzio ad7a810a62 Unify interface for Actor and Projectile 3 years ago
Frederic Chardon 5009b66ef5 Use std::variant in the physics simulation for the different types of objects. For now only support only for actors. 3 years ago
psi29a fb3675d523 Merge branch 'improved_toggleworld' into 'master'
Improved toggle world (#6364)

See merge request OpenMW/openmw!1320
3 years ago
glassmancody.info e436147c10 improved toggle world 3 years ago
Bret Curtis cd358ce1f9
Update CMakeLists.txt 3 years ago
Bret Curtis 299f8c3fe7
Merge pull request #3198 from akortunov/master
Early out from LOS check when source and target is the same
3 years ago
Andrei Kortunov 3ee6657768 Early out from LOS check when source and target is the same (bug 5913) 3 years ago
Petr Mikheev dd96eba2b0 Update OpenMW Lua docs 3 years ago
Petr Mikheev 95faeaa9c1 Fix: after reloadlua call onActive for all active scripts 3 years ago
Petr Mikheev 19a0fde278 Filter saves by the first esm/omwgame rather than by the first content file (that can be a universal omwaddon/omwscripts) 3 years ago
Petr Mikheev 47c89567fb Load LuaScriptsCfg from both *.omwscripts and *.omwaddon files. 3 years ago
Petr Mikheev 4ec7f0625e Store Lua timers in std::map rather than in sol::table. 3 years ago
Petr Mikheev 9adc190209 Redesign LuaUtil::ScriptsContainer to work with ScriptsConfiguration 3 years ago
Petr Mikheev 33d71be81f Add LuaUtil::ScriptsConfiguration 3 years ago
Petr Mikheev 6aab246879 Add ESM records that are needed to store Lua scripts configuration;
Use ptr.getType() (i.e. esm record names) instead of typeid(ptr.getClass()) in apps/openmw/mwlua.
3 years ago
psi29a 3006c496fc Merge branch 'morrowland_scripting' into 'master'
Morrowland scripting

Closes #6363

See merge request OpenMW/openmw!1318
3 years ago
psi29a c0dca5371b Merge branch 'recalc_mana' into 'master'
Don't wait a frame to recalculate magicka

Closes #3792

See merge request OpenMW/openmw!1323
3 years ago
psi29a 2765bcee5e Merge branch 'serialization' into 'master'
Add helpers for binary serialization

See merge request OpenMW/openmw!1319
3 years ago
glassmancody.info ba4f1921ab overrides 3 years ago
glassmancody.info 07e32c0fa6 remove object shader path 3 years ago
Evil Eye 289e1544d2 Don't wait a frame to recalculate magicka 3 years ago
psi29a e9f065222c Merge branch 'mac1015fix' into 'master'
Workaround MacOS failure for 10.15 by setting it to `allow_failure: true`

See merge request OpenMW/openmw!1322
3 years ago
Bret Curtis 3d0da9b9b2
Merge pull request #3191 from akortunov/warnfix
Fix some MSVC warnings
3 years ago
Bret Curtis ac02753da7
Merge pull request #3190 from akortunov/master
Fix showscenegraph warnings
3 years ago
psi29a 13b84ce798 Fix MacOS failure for 10.15 by setting it to `allow_failure: true` 3 years ago
Bo Svensson 1ff8318a52
refactors premultiplied alpha (#3189)
With this PR we refactor a `premultiplied alpha` user string set by `characterpreview.cpp` into a more flexible mechanism allowing us to assign any state to GUI textures. We can consider these changes more future proof than the previous approach.
3 years ago
Bo Svensson 7f9beac3a7
refactors a case insensitive map (#3184)
This PR aims to spark the retirement of a questionable pattern I have found all over our code base. I will illustrate how this pattern encourages code duplication, lacks type safety, requires documentation and can be prone to bugs.
```
std::map<std::string, Object> mMap; // Stored in all lowercase for a case-insensitive lookup

std::string lowerKey = Misc::StringUtils::lowerCase(key);
mMap.emplace(lowerKey, object);

std::string lowerKey = Misc::StringUtils::lowerCase(key);
mMap.find(lowerKey);

mMap.find(key); // Not found. Oops!
```
An alternative approach produces no such issues.
```
std::unordered_map<std::string, Object, Misc::StringUtils::CiHash, Misc::StringUtils::CiEqual> mMap;

mMap.emplace(key, object);

mMap.find(key);
```
Of course, such an alternative will work for a `map` as well, but an `unordered_map` is generally preferable over a `map` with these changes because we have moved `lowerCase` into the comparison operator. 

In this PR I have refactored `Animation::mNodeMap` accordingly. I have reviewed and adapted all direct and indirect usage of `Animation::mNodeMap` to ensure we do not change behaviour with this PR.
3 years ago
Bo Svensson 6fb376f1cf
templatise ptr.hpp (#3185)
With this PR we consolidate identical logic for Ptr and ConstPtr with the help of a template.
3 years ago
glassmancody.info 9cbbd2fff5 better transitions 3 years ago
Evil Eye fef902617a Parse integer format arguments as variable names 3 years ago
Andrei Kortunov 0f3c0cb0a0 Fix argument types mismatch 3 years ago
Andrei Kortunov 107a9ecb17 Fix variables hiding 3 years ago
elsid a58f1a94e3
Add helpers for binary serialization
To construct serializer from given entities:
* Data source/destination - any value that has to be serialized/deserialized,
  usually already existing type.
* Format - functional object to define high level serialization logic to
  define specific format and data schema. Like order of fields, allocation.
* Visitor - functional object to define low level serialization logic to
  operator on given data part.
  * BinaryWriter - copies given value into provided buffer.
  * BinaryReader - copies value into given destination from provided buffer.
  * SizeAccumulator - calculates required buffer size for given data.
3 years ago