Commit Graph

567 Commits (5d37cb3b74b1e47fef78fdabaedb791091018dc6)

Author SHA1 Message Date
uramer 68963538ae Lua UI API 3 years ago
psi29a 41bd20e358 Merge branch 'bullet_shape_hash' into 'master'
Store BulletShape source file name and content hash

See merge request OpenMW/openmw!1379
3 years ago
elsid d7041613ef
Store BulletShape source file name and content hash 3 years ago
Alexei Dobrohotov 5571099147 Load NiCollisionObject and bhkCollisionObject 3 years ago
elsid 9f808fbe3a
Move findPath-like navigator functions into a separate header 3 years ago
Petr Mikheev 9adc190209 Redesign LuaUtil::ScriptsContainer to work with ScriptsConfiguration 3 years ago
Fanael Linithien 07d505563e Remove non-existent file from CMakeLists 3 years ago
elsid e5413c0664
Add functions to compress/decompress vector of bytes 3 years ago
AnyOldName3 9be606a40d Finish removing old Escape classes 3 years ago
elsid 046b5f83ee
Add ESM data loader
A component to load ESM content files with limited support for record types and
selection which of them to load. Supported record types are:
ACTI, CELL, CONT, DOOR, GMST, LAND, STAT.
3 years ago
elsid c88367b6a6
Add sqlite3 helpers 3 years ago
AnyOldName3 1b83b08d80 Merge remote-tracking branch 'upstream/master' into detain-hash
Tests which no longer work are commented out.
Some of these don't work because they're effectively testing for the
presence of bugs in the old implementation.
Others don't work because we're no longer accidentally disabling the
boost::program_options feature where it generates an error if only part
of a token gets consumed.
These will be fixed by later commits.
3 years ago
AnyOldName3 e382f71aea Add implementation of config file parser lifted from Boost 3 years ago
elsid b9825afb8a
Fix build with system static OpenSceneGraph
* Add dependency to libraries required by OSG but missing when linking with OSG
  system library.
* Use find_package for already defined dependencies.
3 years ago
pi03k e4eeb9cce9 Remove 'no relevant classes' moc warning 3 years ago
elsid 605cb8db7c
Make sync terrain preloading sleep free
This reduces average time spent on in. 5 milliseconds as a base precision is
quite a lot considering that for 60 FPS frame time is 1000/16 = ~16.67 ms
when it's a cell loading frame and there is more important work to do rather
than sleeping.
3 years ago
elsid b0f772af40
Define dependency to OSG plugins in one place
Each binary depending on components library requires OSG plugins to be linked.
Duplicating dependecies for each binary does not give benefits and brings
problems when new binary is added.
3 years ago
elsid e9b8933b2f
Do no link binaries with Qt where it's not used
Define components_qt static library with all qt dependent components that also
depends on other components. Link only cs, wizard and launcher with qt
dependent components.
3 years ago
madsbuvi 41c08b1c3b Stereo friendly StateSetUpdater
(cherry picked from commit 496b3aef88b8fd867dcdd23a6ca43144573b1b2f)

Stereo friendly water

(cherry picked from commit 0e22c55e48a7f965367d3d430c1bef5357b22748)

Option to disable per view mapping.

Include memory header

De-hardcode settings and buffers.

formatting error

Update water.cpp (whitespace)

Update water.cpp (more whitespace)

include render order

c array -> c++ array
3 years ago
elsid beeb882ea8
Do not use off mesh connections as a part of navmesh cache key
To reduce cache size and make it more flexible.

Adding off mesh connections to the navmesh is the last step of navmesh
generation and it's very fast comparing to other steps (microseconds vs
milliseconds). Having less cache size makes get and set operations almost 2x
times faster that also have an order of microseconds. So in total there is
no performance impact.
4 years ago
Petr Mikheev 702eb19271 Fixes and refactoring 4 years ago
Petr Mikheev b53667d555 Queries. Data structures and lua bindings. 4 years ago
Petr Mikheev 479856f812 Add components/lua/scriptscontainer and components/esm/luascripts 4 years ago
Petr Mikheev 8dbaf6022c Add components/lua/serilalization 4 years ago
Petr Mikheev 4b068b27ca Add components/lua/luastate and components/lua/utilpackage 4 years ago
elsid 33aa4d0822
Move WriteScreenshotToFileOperation to components 4 years ago
elsid 81e569c3d9
Move OffMeshConnectionsManager implementation into cpp 4 years ago
AnyOldName3 081650a2e5 Integrate Base64 library with build 4 years ago
elsid ec87b3f8f7
Remove redundant ChunkyTriMesh
This AABB tree required when need to filter out input mesh that has not
influence navmesh tile output. This filtering is already done before. Each
recast mesh corresponds to a single navmesh tile and has appropriate bounds.
4 years ago
Gleb Mazovetskiy e3a6cb1695 Remove OsIdentity.cmake
Removes the OsIdentity.cmake file and uses a cross-compilation friendly
and OS-independent method of detecting system double-precision bullet
instead.
4 years ago
fredzio 6fd04cb8f6 Remove support for single-precision Bullet, fail during configuration instead of during linking. 4 years ago
elsid 3e67f5ffa5
Detect and ignore updates for oscillating objects
To avoid triggering NavMesh update when RecastMesh change should not change
NavMesh.

Based on the following assumption:
Given a set of transformations and a bounding shape for all these
tranformations, a new object transformation that does not change this
bounding shape also should not change navmesh if for all of this object
transformations resulting navmesh tiles are equivalent

The idea is to report back to RecastMeshManager all changes of NavMesh if there
are any assiciated with RecastMesh version. So we know the last time when
RecastMesh change resulted into the NavMesh change. When later report shows
that there was no NavMesh change for a new RecastMesh version we can assume
that any object transformation within the same bounding box should not change
NavMesh.
4 years ago
elsid 62f32f4543
Do not replace equivalent navmesh tiles 4 years ago
elsid ab8d1c02d4
Set idle priority for navmesh generation thread
Support Linux, Windows, FreeBSD.
4 years ago
psi29a cc6f08930b Merge branch 'alpha-meddling' into 'master'
Replace deprecated alpha test in shader visitor

Closes #4899

See merge request OpenMW/openmw!473
4 years ago
AnyOldName3 450b971bb0 Merge branch 'gl4es-patch' into 'master'
gl4es: Delay feature detection until a context exists

See merge request OpenMW/openmw!626
4 years ago
Gleb Mazovetskiy 455be9dbbb Fix linking with `-DOPENMW_USE_SYSTEM_OSG=ON -DOSG_STATIC=ON`
1. CMake's built-in OSG finder does not use pkgconfig, so we have to
   manually ensure the order is correct for inter-library dependencies.

   https://gitlab.kitware.com/cmake/cmake/-/issues/21701

2. OSG plugin pkgconfig files are missing dependencies on the underlying
   libraries (e.g. freetype, png, jpeg), so we have to link them manually.

   https://github.com/openscenegraph/OpenSceneGraph/issues/1052
4 years ago
Gleb Mazovetskiy 044e784072 gl4es: Delay feature detection until a context exists
gl4es feature detection does not work reliably with EGL.

If a context already exists, gl4es can instead reliably detect
the underlying GLES features from the context itself.

This requires gl4es to be configured with:

    -DNOEGL=ON -DNO_LOADER=ON -DNO_INIT_CONSTRUCTOR=ON

This also requires gl4es to have this fix: https://github.com/ptitSeb/gl4es/pull/271
4 years ago
psi29a 937549c99e Merge branch 'fix_still_actors' into 'master'
Make actor flee from a combat when cannot reach a target (#5851)

See merge request OpenMW/openmw!601
4 years ago
AnyOldName3 4f510d85ba Merge remote-tracking branch 'upstream/master' into alpha-meddling 4 years ago
elsid 8dba61f7ae
Use navmesh raycast to find reachable position around target 4 years ago
Gleb Mazovetskiy 99ba45a308 Optional static builds of OSG, MyGUI, Bullet 4 years ago
wareya 18ef32ca82 values for this higher than sGroundOffset cause jittering on some surface; use safe-seeming value slightly less than sGroundOffset 4 years ago
AnyOldName3 5e004356a2 Merge remote-tracking branch 'upstream/master' into alpha-meddling 4 years ago
AnyOldName3 ce2bcba5d4 Replace deprecated alpha test in shader visitor 4 years ago
CedricMocquillon 73afc55462 Fork the current process to monitor exe, generate minidump on crash 4 years ago
Nelsson Huotari 6e77ad1f6a OSG-Collada animation support 4 years ago
AnyOldName3 f7dddb8857 Merge branch '3' of https://gitlab.com/bzzt/openmw into shadows-bin
This won't actually work.
4 years ago
Bret Curtis 82431b752d removed unnessary bits that cmake should be doing for us; replace Misc::gcd with std::gcd 4 years ago
Alexei Dobrohotov 1492ba4a53 Link against LZ4::LZ4 4 years ago
Alexei Dobrohotov 66d2b9c195 Add Skyrim SE BSA version support
Fix embedded file name loading
4 years ago
fredzio 4ea07639b8 Unbreak build with cmake < 3.12
This reverts commit 3cadc16f88.
4 years ago
fredzio 3cadc16f88 Convert components to an OBJECT library. It saves space in the object
directory (about 1G on an optimized build on Windows and BSD).
Build should run somewhat fast as well.
4 years ago
AnyOldName3 441c09578a Merge remote-tracking branch 'origin/khr_debug' into khr_debug 4 years ago
Capostrophic a61267f57d Replace NodeUserData with a custom transform node 5 years ago
Bret Curtis f47d2bb8af make sure we use case-sensative BULLET_ prefix 5 years ago
Bret Curtis 61a5c6125d #5480: Drop Qt4 support and require Qt 5.12 or later. 5 years ago
psi29a 1724099d34 Merge branch 'mingw' into 'master'
Fix mingw Windows build

See merge request OpenMW/openmw!213
5 years ago
elsid d35ccc39c6
Fix build tests with double precision bullet 5 years ago
laikh d6e4fbe085 Fix mingw Windows build 5 years ago
Alexei Dobrohotov a68a4338a0
Merge pull request #2841 from Assumeru/consistent-refs
Script reference consistency
5 years ago
Andrei Kortunov add42830d9 Add a flag to use double-precision functions from Bullet 5 years ago
Evil Eye f0e2ee45fa reuse ImplicitRef and ExplicitRef for enable, disable, getdisabled, startscript; move scriptrunning and stopscript 5 years ago
Andrei Kortunov b33c4c920c Move all OICS handling to the separate file 5 years ago
Bret Curtis 8a8107e837 as it says; revert vismask and uncomplicate openmw 5 years ago
fredzio 0630cc482c Compile helpviewer in components only when USE_QT is defined
It fixes build of OpenMW alone (wihtout launcher or OpenCS)
5 years ago
Frederic Chardon 513ac8986d Add link to opencs documentation on readthedocs, available through
context menu.
The documentation opens in default browser.

There are 3 contexts:
- global: opens the OpenMW CS User Manual main page
- when a record is selected: opens the "Tables" page
- when the filter field is selected: opens the "Record Filters" page

There is also a link to the OpenCS tutorial in the help menu.
5 years ago
elsid 7ae7cb181d
Support recast mesh rendering 5 years ago
Andrei Kortunov 84979fa8b7 Move VisMask to components 5 years ago
elsid 1e106013a0
Use navmesh to find wander destination outside pathgrid for ground based actors
Use dtNavMeshQuery::findRandomPointAroundCircle from recastnavigation
5 years ago
Andrei Kortunov cb1a8ec518 Do not link the Boost threads library 5 years ago
bzzt d340224c95 shadowsbin for gl state reduction 5 years ago
elsid a7930073e8
Move settings parser declaration to separate header 5 years ago
Andrei Kortunov bf5f68a4d8 Replace boost GCD to the homebrew implementation 6 years ago
AnyOldName3 ac18983f37 Finish gldebug location move 6 years ago
AnyOldName3 3d917fcbad Add basic OpenGL debug callback 6 years ago
Chris Djali cb5a57e41b
Merge pull request #1547 from AnyOldName3/osgshadow-test-vdsm
Shadows
6 years ago
elsid 1d3668cd22
Add Navigator interface 6 years ago
elsid c68e64a2a7
Make navigator from settings manager setting in separate function 6 years ago
AnyOldName3 8482236a82 Merge remote-tracking branch 'upstream/master' into osgshadow-test-vdsm 6 years ago
Azdul 6aa6b2dc89 Removed TES4 from file names. Correct Git file history / attribution. 6 years ago
Azdul c6fd979c42 Spaces instead of tabs in CMakeLists.txt 6 years ago
Azdul 96d19e07ca Fix Linux build 6 years ago
Azdul 25650e65bf Read any BSA file - detection based on version in BSA header 6 years ago
AnyOldName3 d0c254bc7e Merge remote-tracking branch 'upstream/master' into osgshadow-test-vdsm 6 years ago
elsid 792a0585c0 Add recastnavigation as subdirectory 6 years ago
AnyOldName3 3785ba6aa0 Merge upstream/master 6 years ago
elsid ed73d130f9
Cache navmesh tiles
Use LRU modification to hold currently used items. Use RecastMesh binary
data for item key.

Store original pointer of btCollisionShape in user pointer to make available
it as an identifier within all duplicates. Use pointer to heights data array
for btHeightfieldTerrainShape.
6 years ago
elsid dc09674362
Add command and settings option to enable actors paths render 6 years ago
elsid 144e1a063b
Support animated objects 6 years ago
elsid d2fd9abd51
Split RecastMesh into tiles 6 years ago
elsid 70a369f70e
Add command to enable NavMesh render
togglenavmesh or tnm
6 years ago
elsid fafba8ea0c
Use recastnavigation to find path 6 years ago
AnyOldName3 0124be5713 Merge upstream/master 6 years ago
Andrei Kortunov 43c7438e8e Move WeakCache to components/misc 6 years ago
Kyle Cooley 031502b2ab Reorganize ActorAdapter data, use weak cache for sharing 6 years ago
Kyle Cooley e2ac392a40 Move common stuff to scene util, fix errors with 1st person meshes 6 years ago
Kyle Cooley 8444ee9981 Start rendering npc's 6 years ago
Andrei Kortunov 70ed8fd1a9 Use constants instead of widely used magic numbers (task #4645) 6 years ago
Andrei Kortunov adbaeb7cca Improve GUI scaling (bug #3288) 6 years ago
AnyOldName3 80082308f0 Merge upstream (shadermanager log system revamp) 6 years ago
Bret Curtis 61b34124e2
Merge pull request #1847 from akortunov/extended_logging
Improve console logging
6 years ago
Andrei Kortunov 7d6e3673e0 Implement advanced logging system (feature #4581) 6 years ago
elsid 6afc1dc3a0
Support build with coverage for components and test suite 6 years ago
AnyOldName3 a2b54714d4 Merge remote-tracking branch 'upstream/master' into osgshadow-test-vdsm 6 years ago
Andrei Kortunov ac98797999 Add missing file 7 years ago
AnyOldName3 cc23a968d1 Merge upstream/master 7 years ago
Doc West 467989cdd5 Moved crashcatcher to a component and also use it in CS
Reworked debugger detection (failed on gdb 7.11), it now uses /proc to detect the debugger
7 years ago
AnyOldName3 553094669b Merge upstream/master (& fix merge conflicts) 7 years ago
Miloslav Číž c3d7ee5a9e Resolve merge conflicts 7 years ago
Miloslav Číž db8aaa74d6 Start cell border debug drawing 7 years ago
AnyOldName3 44b2cf2b7f Merge upstream. 7 years ago
Andreas Sturmlechner 2c9d46a60b
Fix build with Qt 5.11_beta3 (dropping qt5_use_modules) 7 years ago
bret curtis 4890ecd357 remove native GLESv* support, as it never worked; make things less complicated as result, fixed lighting.glsl to work with gl2es thanks to ptitSeb 7 years ago
AnyOldName3 273914aba8 Add osgShadow ViewDependentShadowMaps as they can be found in OSG's GitHub Repository 7 years ago
AnyOldName3 6e0b61d084 Add missing libraries to components target 7 years ago
AnyOldName3 e201e359a9 Move Shadow to Components 7 years ago
AnyOldName3 c1a871ff1f Make indentation consistent. 7 years ago
AnyOldName3 daf7d8451c Switch to a more reliable method of passing the git-version targt the data it needs 7 years ago
AnyOldName3 e3142b9643 Add missing variables to those forwarded to the git-version target 7 years ago
AnyOldName3 c9e86a8ebc Remove superfluous argument 7 years ago
AnyOldName3 f9a3562ccd Remove duplicate macro definition and fix warning 7 years ago
AnyOldName3 2652a89df4 Fix mismatched indentation that apparently the .editorconfig file doesn't handle automatically 7 years ago
AnyOldName3 f8fe992dc0 Adjust CMake's run-time resource handling such that the Windows CI script does not have to copy these files 7 years ago
scrawl 5d524a6a10 Add custom version of MorphGeometry replacing osgAnimation
Double buffering, custom bounding box and the update in the cull visitor (instead of update) are now all handled internally rather than needing hacks and/or callbacks.
7 years ago
scrawl e36bdb490e Add view data structure for efficient collection of LOD nodes to use for a given camera/intersection 8 years ago
scrawl ce8c4ad4f5 Add quad tree implementation (no rendering yet) 8 years ago
scrawl b1d4bb5708 Add CompositeMapRenderer
Temporarily render all terrain using composite maps for testing purposes
8 years ago
scrawl 35d53acc65 Factor out terrain chunk loading/caching into a new resource manager 8 years ago
scrawl 804f873649 terrain: factor out texture caching into a separate class 8 years ago
scrawl eef63a880a terrain: use a custom drawable for multi-pass render instead of osgFX::Effect
osgFX::Effect is awkward to use because of the lazy-definition of passes, no support for compileGLObjects, useless 'Technique' abstraction and having to define silly methods like 'effectAuthor()'

Handling the multi-pass rendering inside the Drawable also avoids redundant culling tests against the same bounding box for each pass.
8 years ago
scrawl e33829d493 Add fork of osgUtil::Optimizer with backported fixes that have not been released yet
Remove optimizers that won't be used.
8 years ago
scrawl 8f79fa3d72 Add resource statistics panel opened with F4 8 years ago
scrawl 34deb6e7b1 Add 'showSceneGraph' command to export the scene or a particular object to .osgt for debugging purposes 8 years ago
Phillip Andrews c18fc113e5 Changed missing library dependencies to simple fix 8 years ago
MiroslavR 301dd77efb Save controls state (Fixes #3598) 8 years ago
scrawl a44ba0e461 Merge pull request #966 from kpp/find_mygui
Find mygui
9 years ago
Roman Proskuryakov 4cffdb67d8 Uses case-sensitive MyGUI_* variables 9 years ago
Marc Zinnschlag aa1ed9b172 Merge remote-tracking branch 'aesylwinn/RenderWater' 9 years ago
Aesylwinn 5753f52b47 Move water mesh + simple state generation to components library. 9 years ago
MiroslavR b65f379b7f Save scripted animation state (Fixes #1931, #2150, #3393) 9 years ago
AnyOldName3 20f73f4a32 Relocate escape-related code to new files escape.hpp and escape.cpp. 9 years ago
MiroslavR f6f3f71db5 Improve format specifiers for message boxes 9 years ago
Roman Proskuryakov 3bcd23022a Rewrites FindBullet using LibFindMacros handling version properly 9 years ago
Aesylwinn d141672b53 Pathgrid geometry creator 9 years ago
scrawl a9ad1b09e2 Introduce ShaderManager & ShaderVisitor
Actual shaders still to be written.
9 years ago
scrawl e28dc3e72f Preload instances in SceneManager 9 years ago
scrawl d11c2864df Introduce UnrefQueue to handle the deleting of no longer needed objects in the background thread 9 years ago
scrawl 6f9ca0f68f Add basic cell preloader class
Not properly in use yet, but seems to be working.
9 years ago
scrawl df57d4bfba Use a common base class for resource managers
Implement updateCache to delete unreferenced cached objects when they have not been referenced for a while.
9 years ago
scrawl f99f403dda Rename TextureManager to ImageManager 9 years ago
scrawl 438b30d6f0 Move configureLight to a separate file 9 years ago
scrawl 6546c05428 Move Fallback map to components/ 9 years ago
scrawl 64424e7262 Move keyframe loading out of SceneManager to new KeyframeManager 9 years ago
sandstranger 7d374b36fd change cmake variables 9 years ago
sandstranger 238a5824be add custom new variable fot Qt 9 years ago
sandstranger bd5057aa3c enable opengl es1 9 years ago
scrawl d3fa8a8602 Add osgDB::ObjectCache to the repository to work around it not being available in OSG 3.2 9 years ago
scrawl 3d12b2ca9d Add NifFileManager to avoid duplicate parsing of the NIFFile in SceneManager and BulletShapeManager. 9 years ago
scrawl f962ce0bbe Don't link against unnecessary OSG libraries 9 years ago
scrawl 62169a7039 Use a single-precision PositionAttitudeTransform in speed critical places 9 years ago
scrawl 8cf57ef6ac Move BulletShapeManager and BulletShape to resource/ 9 years ago
scrawl 59aee04ddb Implement ScalingLayer, for layouting of widgets in screen-relative coordinates 9 years ago
scrawl 51f3a8fec6 osgMyGUI: move Platform methods to the .cpp file 9 years ago
Alexander "Ace" Olofsson 7d4125d97f Fixes for building with unity build 9 years ago
scrawl 3a7d0d8dc8 Remove a file that isn't in use yet from build 10 years ago
Koncord 7924ecef3e Fix definition conflict 10 years ago
scrawl f09e4620b6 Move OpenMW version information to a textfile instead of compiling it in
Now we don't need to recompile 3 .cpp files and re-link whenever the current git HEAD changes.
10 years ago
Koncord 73731d27e9 Add ${MYGUI_LIBRARIES} to components/CMakeLists.txt 10 years ago
scrawl f70250a296 Merge branch 'master' of https://github.com/OpenMW/openmw into osg
Conflicts:
	apps/launcher/CMakeLists.txt
	apps/opencs/CMakeLists.txt
	apps/opencs/view/render/worldspacewidget.cpp
	apps/openmw/CMakeLists.txt
	components/CMakeLists.txt
	extern/osg-ffmpeg-videoplayer/CMakeLists.txt
10 years ago
scrawl 89c2a7e26b Fix for possibly missing library on windows 10 years ago
scrawl e13a938896 Add support to build with Qt5 (Task #2665)
Known issue: the render view doesn't work in Qt5. With the switch to OSG around the corner, this isn't worth fixing.
10 years ago
scrawl cf95d3fc35 Refactor cmake scripts, reducing the amount of find_package(Boost) 10 years ago
scrawl fc5176dc38 Refactor cmake scripts, reducing the amount of find_package(Qt4) 10 years ago
scrawl cc71e894e1 Add WorkQueue class 10 years ago
scrawl 4bb3cbf0fb Remove last remains of Ogre 10 years ago
scrawl 974fda5bde Merge branch 'master' of https://github.com/OpenMW/openmw into osg
Conflicts:
	extern/sdl4ogre/sdlwindowhelper.cpp
10 years ago
scrawl cdd0623009 Terrain rendering 10 years ago
scrawl 025a1a7866 Restore savegame screenshot display 10 years ago
scrawl 5442bf23a6 Apply video mode & gamma setting changes 10 years ago
scrawl 9ea416b852 Readded HW cursor manager (no image rotation yet) 10 years ago
scrawl 39fb46601a Readded input & event handling 10 years ago
scrawl 0498e6e5f0 Readded window icon 10 years ago
scrawl 375b736e74 Use SDL to create the window
No input nor event loop handling yet, so the window will "stop responding" after a few seconds.

Thanks to KittyCat for the GraphicsWindowSDL2 code.
10 years ago
scrawl 47758c11cd Readded collision objects and movement physics 10 years ago
scrawl c31b416ba1 Move physicssystem to a new mwphysics module 10 years ago
scrawl c843cfc8e2 Physics stub in preparation for rewrite 10 years ago
scrawl cac288d5be Remove OgreInit 10 years ago
scrawl d9d84bd7b2 Remove bullet raycasting shapes, to be replaced with OSG ray casts 10 years ago
scrawl 9f74be8fcb Add back the custom MyGUI log facility for utf8 paths on windows 10 years ago
scrawl a59940a2c7 Move MyGUI platform to components 10 years ago
k1ll 8e094d6fa5 Add static bullet to components 10 years ago
k1ll b194af4ab2 Add static qt to components 10 years ago
k1ll 00b7712a59 Fix shlwapi include case and add the lib for linking when building for windows 10 years ago
scrawl 372a54bbc7 Dead code removal 10 years ago
scrawl 8c810e3620 Move rng to components 10 years ago
scrawl 04accb7652 Add LightController 10 years ago
scrawl eaa4316ff8 Move skinning code to SceneUtil 10 years ago
scrawl 4ea6d4aa01 Rewrite of skinning code
Goals:
- get rid of the mesh pre-transform (this requires supporting different bind matrices for each mesh)
- bounding box should be relative to the bone the mesh is attached to, ideally we can then get rid of the expensive skeleton-based bounding boxes
- update bone matrices in CullCallback instead of UpdateCallback

Works OK, though the bounding boxes are not correct yet.
10 years ago
scrawl c516e897ee Move Controller base classes to SceneUtil, add visitor to assign ControllerSources 10 years ago
scrawl 5dd1ab24fe More efficient StateSetController, beginnings of sky rendering 10 years ago
scrawl 591a35b8d7 *very* early version of the LightManager 10 years ago
scrawl 4e69e7cc0f OpenMW compiles and runs w/o render window 10 years ago
scrawl a7272b73d0 Add utility for assembling body parts / equipment 10 years ago
scrawl bb32c761df *very* early texture manager, need a lot more thought to design this properly 10 years ago
scrawl 236d628884 Merge branch 'master' of https://github.com/OpenMW/openmw into osg
Conflicts:
	apps/opencs/model/doc/document.cpp
	apps/opencs/model/doc/documentmanager.cpp
	components/CMakeLists.txt
	components/bsa/resources.cpp
	components/nif/data.hpp
	components/nif/node.cpp
	components/nifogre/mesh.hpp
	components/nifogre/ogrenifloader.cpp
	components/nifogre/particles.cpp
10 years ago
scrawl 99e1720980 Add SceneManager and clone utility 10 years ago
scrawl 1affa497d5 Delete the old nifogre loader 10 years ago
scrawl 2db5df77f0 Change rotation/scale workaround in preparation for loading .kf controllers 10 years ago
scrawl 40fc097722 OpenCS: use the new VFS, restored resource tables 10 years ago
scrawl 49c2da27b3 OpenCS compiles and runs again (no rendering) 10 years ago
scrawl f8422c3ed4 Particles mostly completed, still need to attach emitters to the correct node and handle NiBSPArrayController 10 years ago
scrawl 510375aa63 Add virtual file system (VFS) replacing the low level parts of the old resource system 10 years ago
dteviot 3f28634d1f consolidate random number logic
Note, I suspect Rng::rollClosedProbability() is not needed.  The only difference between it and rollProbability() is that one time in 37k (on Windows), it will give an output of 1.0.
On some versions of Linux, the value of 1.0 will occur about 1 time in 4 billion.
10 years ago
scrawl e30f240ba2 Add travel service support for creatures (Fixes #2432) 10 years ago
scrawl 8e01d8cb19 Add OSG nifloader, currently supports geometry, materials, basic texturing, skinning, morphing, and most controllers. 10 years ago
scrawl da690c91b3 Delete the old Ogre DataStream class 10 years ago
scrawl 8c10d4badb NIF reader compiles without Ogre 10 years ago
scrawl d4dff6ed55 Port BSAFile to istream, remove OGRE bsa resource system 10 years ago
slothlife cfe81bafe8 Remove setting CMAKE_BUILD_TYPE to Debug
Setting was causing single-target configurations (ninja, make) to
incorrectly link vs debug runtimes on Windows.
10 years ago
scrawl bea88c3643 Stolen item tracking overhaul part 2 (Fixes #2338) 10 years ago
scrawl 9d3f0b2ed5 Remove some unused code, include cleanup 10 years ago
scrawl 4921c6ef9e Split window caption bars so that the caption can be transparent (Fixes #531)
Fix transparent window background not applying to the header bar (Fixes #2294)
10 years ago
scrawl 8e1eeccbe1 ESSImport: container state 10 years ago
scrawl 235683e449 Remove LightState from openmw save format to streamline inventory loading 10 years ago
scrawl f9cf31fcd5 ESSImport: convert custom map markers, not working for interiors yet 10 years ago
dteviot 9d6efcecff Merge remote-tracking branch 'OpenMW/master' into FixLoadOrderReset
Fixed Conflict:
	components/contentselector/model/contentmodel.cpp
10 years ago
Marc Zinnschlag 83e454e493 Merge remote-tracking branch 'marcoschulze/git-version-retrieval-fix' 10 years ago
scrawl 01652bbcc5 Store original actor position in AiWander package (Fixes #2200) 10 years ago
dteviot dfbd470613 Adjust plug-in order to match profile loading.
Also marks plug-ins with load order problems in red and changes tool tip to describe error.
10 years ago
Marco Schulze 3024c67995 Regenerate components/version/version.hpp as HEAD moves on a git checkout
Pull request #416 introduced a common bug where version.hpp wouldn't be
regenerated every build, poteantially leading to stale version data. This
commit adds a custom build target, git-version, which updates version.hpp
before the components library is built.
10 years ago
Marc Zinnschlag b951251572 handle junk in argument lists (Fixes #2206) 10 years ago
scrawl 9a1b7cbe52 Add SharedStateButton, used in spell window and controls box to apply mouseover effect to all buttons within one row (Fixes #1986) 10 years ago
scrawl 4fa303d7c4 Merge branch 'master' into HEAD
Conflicts:
	CMakeLists.txt
	apps/launcher/CMakeLists.txt
10 years ago
Arthur Moore 4583dc05db Move NIFStream functions into a cpp file where they belong 10 years ago
Arthur Moore 38bcff2622 Moved base NIF classes into a separate file.
This resolves the dependency mess, and makes things more readable.
The dependency tree for nif records now looks like this:
Record.hpp
--base.hpp
----controlled.hpp
----controller.hpp
----data.hpp
----effect.hpp
----extra.hpp
----node.hpp

Node.hpp has many extra dependencies because nifogre only includes it instead of each of these files.
That should be fixed.
10 years ago
scrawl 0bc840aadd Add NumericEditBox widget 10 years ago
scrawl 6b65502557 Add properties for new widget classes to MyGUI plugin 10 years ago
scrawl 1afcc7adb5 Add imported font colors from openmw.cfg to MyGUI plugin 10 years ago
eroen 0738e862cb Make GLOBAL_CONFIG_PATH, GLOBAL_DATA_PATH configurable 10 years ago
Sebastian Wick 41094a8641 the global config path is not always $prefix/etc, so just define the whole path in the build system 10 years ago
Sebastian Wick 2ae8158ee9 SYSCONFDIR and LinuxPath should work with different install prefixs 10 years ago
Marc Zinnschlag d1d861e1be Merge branch 'run'
Conflicts:
	apps/opencs/model/world/columns.cpp
	apps/opencs/model/world/columns.hpp
	apps/opencs/model/world/data.cpp
	components/CMakeLists.txt
10 years ago
scrawl c6bcd75058 Add various custom widgets used in OpenMW to the MyGUI plugin 10 years ago
scrawl ee3b1e800c Add FontLoader and transparent BG texture to the MyGUI plugin 10 years ago
scrawl ecfc2ff5d0 Add a MyGUI plugin to register OpenMW resources, to use with MyGUI's standalone tools 10 years ago
Arthur Moore 8be6aefd95 Moved functions from niffile.cpp to where they belong.
Also cleaned up some #includes

Removed a few asserts.  Vector already throws an out_of_range error.
11 years ago
scrawl 2b407a9995 Refactor NIF cache
- Remove broken cache locking mechanism

This was supposed to unload NIFFiles after a cell transition completes, but it was never working due to a mistake on the line if (--sLockLevel), should have been if (--sLockLevel == 0). Repairing this would increase load times (NIF files would have to be reloaded more frequently), so just removed it for now.

 - Decouple cache from NIFFile (now a new nifcache component)

 - Add API for future background loading

 - Provide a reliable way (SharedPtr) to hold on to loaded NIFFiles. This will be useful to avoid deep copies of keyframe and text key data, which is currently a performance bottleneck.
11 years ago
Marc Zinnschlag 232c6c9ad3 Merge branch 'scriptedit' into run 11 years ago
scrawl 360c7f863c Store magic effect Base values in savegame (Fixes #1489) 11 years ago