Commit Graph

442 Commits (openmw-36)

Author SHA1 Message Date
Rohit Nirmal 997347b01e Silence -Wreorder warnings. 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
dteviot 45b6538820 fixed MSVC 2013 warning C4800
forcing value to bool 'true' or 'false'
10 years ago
dteviot 407cd50890 fixed warning C4099:
type name first seen using 'class' now seen using 'struct'
10 years ago
scrawl f11ec653d0 Add setting for showing MRK nodes to NIF loaders
This makes marker objects show up in OpenCS.
10 years ago
scrawl 883f7ec7ce Move workaround for hiding markers from NIF loader to Scene 10 years ago
scrawl de23ad5c8d Change dynamic_cast to static_cast to make coverity happy 10 years ago
scrawl afc961d19c Workaround for random AABB assertion due to zero-sized particles (Fixes #1663) 10 years ago
scrawl 59f21c6105 Use "hair" as filter for PRT_Hair parts (Fixes #2218) 10 years ago
scrawl f931ba2efc Fix some static analysis issues (coverity) 10 years ago
scrawl 84b0dcf2e3 Work around particles not being rendered in the first frame 10 years ago
scrawl 8f29f2667e Fix rotation order for XYZ rotation keys (Fixes #1067) 10 years ago
scrawl 5a25649076 Implement XYZ rotation keys support (Fixes #1067) 10 years ago
scrawl 65536f0857 Load initial particle system state from NIF files (Fixes #2178) 10 years ago
scrawl b650338d69 Implement drawMode of NiStencilProperty (Feature #1057) 10 years ago
scrawl e6c59f5585 Revert "Allow NIF rotation matrices that include scale values"
This reverts commit f57ddec6a2.

Conflicts:
	components/nif/nifstream.hpp

(Fixes #2168)
10 years ago
scrawl 59cde9b431 Don't use transparency override if there's no transparency (rug fix for Bug #2050) 10 years ago
scrawl 077c619611 Implement Clamp mode for NiTexturingProperty (Fixes #2050) 10 years ago
scrawl c1e6b8608b Always create a skeleton if there's an "ArrowBone" node (Fixes #2117) 10 years ago
scrawl f57ddec6a2 Allow NIF rotation matrices that include scale values (Fixes #2052) 10 years ago
scrawl 6d7f4085a5 Add shader implementation of alpha test 10 years ago
scrawl 7252cb63a6 Fix cppcheck issues 10 years ago
scrawl 4d6ebfb496 Allow KeyFrameControllers on the RootCollisionNode and its children (Bug #1934) 10 years ago
scrawl f3f869e99a Don't produce NaN's for 0-length controllers in NifOgre::DefaultFunction 10 years ago
Rohit Nirmal e315a72582 Remove extra semicolons at the end of some lines. 10 years ago
scrawl 819234cdfe Use rbegin() instead of --end() 10 years ago
scrawl 9809748eba Store NIF keys mapped by time and use lower_bound for searches 10 years ago
scrawl c2a91148f3 Implement multiple emitter nodes for NiBSPArrayController
The particles for the flame, frost and storm atronachs work correctly now.
10 years ago
scrawl 1a8acac40a Share keyframe data in NIF resource (Fixes #908) 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
scrawl 83037a1a91 Move fast-forward of particle systems outside of OgreNifLoader (Fixes #1830)
Particle systems were being fast-forwarded before the skeleton base was attached, so particles without the LocalSpace flag would spawn at an incorrect position.
11 years ago
scrawl 6c6b3bd890 Remove extra setVisibilityFlags on SkelBase
SkelBase is already contained in mEntities.
11 years ago
MiroslavR 4d403ed747 Rename and move functions for texture path correction 11 years ago
MiroslavR 4873c4bd31 Generalize function for texture path correction (Fixes #1779) 11 years ago
Marc Zinnschlag 1e6d557089 Merge branch 'visibility' 11 years ago
Marc Zinnschlag a25758c3b1 fixed visibility flags setting 11 years ago
scrawl 7dfb624ee2 Support loading text keys for objects without a skeleton
This means we can no longer map them to bone IDs, but they are unused anyway.

Required to load text keys from the default head models (such as Talk: Start/Stop and Blink: Start/Stop)
11 years ago
scrawl 1320ac6983 Ensure non-negative particle life time, add size assertion 11 years ago
scrawl 4949aa1fbb Add hack required for unnamed animated collision shapes (in_dagoth_bridge00.nif) 11 years ago
scrawl ee098de0a6 Don't ignore lighting values of particles not attached to a character 11 years ago
scrawl e274314548 Ignore alpha modifier for particle materials
This makes the tx_ash_flake.dds particles from ashcloud.nif appear.
11 years ago
scrawl 30be59c029 Implement auto-adjusting of particle emit rate
This makes ashcloud.nif and blightcloud.nif work properly.
11 years ago
scrawl c69a311ad8 Disable lighting for particles
Fixes magic cast visuals being too dark depending on the environment.
11 years ago
scrawl e51300989c Handle NiBSPArrayController as alias for NiParticleSystemController
The differences (if any) are unknown.

NiBSPArrayController is used by the Atronach_Fire.nif model. Its particles are now visible, but they don't look right yet. Need to handle NiAutoNormalParticlesData?
11 years ago
scrawl 6929e541dd Fix texture name issue with Vality's Bitter Coast Mod 11 years ago
megaton 50af9bc0d3 General perfomance optimizations. 11 years ago
scrawl edb5a54092 Include some more required Ogre headers explicitely. 11 years ago
scrawl 2c0d46525b Fast-forward particle systems to make cell loads less obvious. 11 years ago
scrawl cf3812188f Fix bounding box assertions due to negative particle life time
Other parts of the code could not deal with negative life times and produced negative particle sizes as a result (which Ogre could not handle)
11 years ago
scrawl bbd15b185d Skip inactive controllers. Fixes those bloody bone boots again. 11 years ago