Fabian Woltermann
770fce8de5
Bitset flags -- take 2 ( #775 )
...
This introduces a new mechanism for handling bit flags. Instead of using an int (or two, or three) to write bits into, this uses the std::bitset in a wrapper class that accepts an enum class as input. This means that certain classes of errors we've had a few of in the engine, where a coder used the wrong set of flags or checked them against the wrong variable (SF_STEALTH vs SIF_STEALTH, for example) can now be detected at a compiler level rather than not at all.
2016-08-12 16:13:50 -07:00
m!m
22c0255277
Fix a bunch of 64-bit MSVC warnings ( #709 )
...
* Fix a bunch of 64-bit warnings
* Fix Linux compilation error
* Fix Mac error
* Fix some issues
* Fix more GCC warnings
* Remote unwanted change
* Remove accidentally readded file
* Fix wrong limit check
* Use BEAM_INDEX macro for getting beam object index
* Fix 32-bit warning
* Use BEAM_INDEX instead of pointer arithmetic
2016-08-09 11:08:54 -07:00
asarium
bbeaaa1565
Add a new particle effect system
...
This is similar to the script I wrote a few years ago but unlike that
one, this solution doesn't kill the performance.
2016-08-04 11:08:39 +02:00
asarium
1bcd5400d3
Move build system to CMake
2016-07-22 12:07:19 +02:00
SamuelCho
1ef7688fa1
Strip out unused rendering code.
2016-07-10 19:29:11 -07:00
niffiwan
87770aad8f
Add total_time output param to bm_load_animation
...
Also convert int to bool, and replace NULL with nullptr
2016-05-10 19:42:20 +10:00
Peter Mitsis
180674154c
trig: Use floating point versions of trig functions
...
Replaces calls to double-precision floating point trig functions with
calls to single-precision floating point trig functions as follows:
cos() -> cosf()
sin() -> sinf()
tan() -> tanf()
acos() -> acosf()
asin() -> asinf()
atan() -> atanf()
This allows the compiler to avoid generating unnecessary instructions
that convert a float to a double and then a double back to a float.
Signed-off-by: Peter Mitsis <[email protected] >
2016-04-24 21:56:06 -04:00
Goober5000
ddd3a7d6fe
resolve Travis warning
2016-02-11 00:50:20 -05:00
Goober5000
e302f0e456
convert the rest of the model instance functions to have model_instance_num parameters instead of object parameters
2016-02-10 23:23:44 -05:00
Goober5000
da812f9433
modify the actual function calls
2016-02-06 18:05:33 -05:00
Goober5000
df41bbe172
refactor of dumb_rotation to intrinsic_rotation
...
This is a renaming of the Dumb_rotation infrastructure, which is now called Intrinsic_rotation. Intrinsic rotations are automatically applied to submodels without the need for an associated subsystem. Dumb rotations are now a type of intrinsic rotation, and look_at rotations will be added in a future PR. The same code will handle both; the only difference is in how the intrinsic rotation is calculated. (In the case of dumb-rotation, it is calculated the same way as normal rotation; in the case of look-at, it will be calculated using submodel_look_at.)
2016-02-05 12:40:55 -05:00
Goober5000
165124267a
Add model_instance handling for weapons, asteroids, and skyboxes
2016-01-24 21:28:43 -05:00
asarium
29afbe8ef5
Use new macro for size_t printf arguments
2015-08-19 11:26:25 +02:00
Goober5000
bd3cd7eb18
Merge pull request #195 from Echelon9/fix/sort-uniq-includes
...
Review and refactor #include's
2015-08-19 00:05:02 -04:00
Echelon9
c15e7ec28c
Fix: warning: format not a string literal and no format arguments [-Wformat-security]
2015-08-05 21:07:05 +10:00
Echelon9
d686d28053
Ensure sufficient format string specifier.
2015-08-05 19:48:58 +10:00
Echelon9
aa7bd5bf2c
Fix: asteroid/asteroid.cpp:1614:99: warning: declaration of ‘ship_obj’ shadows a global declaration [-Wshadow]
2015-07-06 23:32:36 +10:00
Echelon9
ca2cd63a95
Fix: asteroid/asteroid.cpp:949:10: warning: declaration of ‘ship_obj’ shadows a global declaration [-Wshadow]
2015-07-06 23:30:55 +10:00
Echelon9
2586198e0e
Fix: asteroid/asteroid.cpp:1653:68: warning: declaration of ‘asteroid_obj’ shadows a global declaration [-Wshadow]
2015-07-06 23:14:38 +10:00
Echelon9
b7e76de184
Fix: asteroid/asteroid.cpp:1614:98: warning: declaration of ‘asteroid_obj’ shadows a global declaration [-Wshadow]
2015-07-06 23:12:27 +10:00
Echelon9
f656232030
Fix: asteroid/asteroid.cpp:1477:50: warning: declaration of ‘asteroid_obj’ shadows a global declaration [-Wshadow]
2015-07-06 23:10:02 +10:00
Echelon9
e4e3064bea
Fix: asteroid/asteroid.cpp:1363:92: warning: declaration of ‘asteroid_obj’ shadows a global declaration [-Wshadow]
2015-07-06 23:07:37 +10:00
Echelon9
b7bc60708c
Fix: asteroid/asteroid.cpp:953:10: warning: declaration of ‘light’ shadows a global declaration [-Wshadow]
2015-07-06 22:29:04 +10:00
Echelon9
0810ae08de
Clean up definition of asteroid_process_pre().
2015-07-01 23:07:16 +10:00
Echelon9
366d409da4
Clean up definition of asteroid_process_post().
2015-07-01 23:07:16 +10:00
Echelon9
c5493bb480
Scripted sort and uniq on (internal) project includes. Improves search time and as a by product removed a number of duplicative includes.
2015-06-22 20:24:30 +10:00
Swifty
c620372357
Soft shadows, deferred lighting, and various major graphics optimizations.
2015-05-02 14:35:37 -07:00
asarium
9aed627ce7
Replace longjmp with exceptions
...
Also added a EditorConfig file
2015-04-24 15:03:59 +02:00
Goober5000
bffdef1ce5
from xt branch: add some hysteresis to asteroid fields to prevent "popping" when an asteroid exceeds the bounds
...
git-svn-id: svn://svn.icculus.org/fs2open/trunk/fs2_open@11118 387891d4-d844-0410-90c0-e4c51a9137d3
2014-10-12 06:22:25 +10:00
Goober5000
2fe0ec8ef0
Yarn's patch for Mantis #3049 (character remapping in tstrings.tbl)
...
git-svn-id: svn://svn.icculus.org/fs2open/trunk/fs2_open@10894 387891d4-d844-0410-90c0-e4c51a9137d3
2014-07-14 19:02:31 +10:00
The_E
53e78033c6
Fix unintended linebreak removal from 10880
...
git-svn-id: svn://svn.icculus.org/fs2open/trunk/fs2_open@10882 387891d4-d844-0410-90c0-e4c51a9137d3
2014-07-14 19:02:30 +10:00
The_E
0d9cc00ba8
From MageKing17: Removes redundant function call
...
git-svn-id: svn://svn.icculus.org/fs2open/trunk/fs2_open@10880 387891d4-d844-0410-90c0-e4c51a9137d3
2014-07-14 19:02:30 +10:00
z64555
8d5fbab768
z64555's debug console. Take 2. Includes changes to most (not Xcode) project files to include the added files of r10621
...
git-svn-id: svn://svn.icculus.org/fs2open/trunk/fs2_open@10622 387891d4-d844-0410-90c0-e4c51a9137d3
2014-05-08 19:18:37 +10:00
The_E
98355da7d5
Revert 10619: Missing files
...
git-svn-id: svn://svn.icculus.org/fs2open/trunk/fs2_open@10620 387891d4-d844-0410-90c0-e4c51a9137d3
2014-05-08 19:18:36 +10:00
z64555
2b2ba832f8
z64555's debug console.
...
git-svn-id: svn://svn.icculus.org/fs2open/trunk/fs2_open@10619 387891d4-d844-0410-90c0-e4c51a9137d3
2014-05-08 19:18:36 +10:00
Goober5000
7e5b2aee52
turn mc_info into a plain data struct, part 2
...
git-svn-id: svn://svn.icculus.org/fs2open/trunk/fs2_open@9822 387891d4-d844-0410-90c0-e4c51a9137d3
2013-09-26 18:51:36 +10:00
Goober5000
9cb9e349ac
FUBAR's changes for Mantis #2775 , plus the addition of the asteroid model
2013-01-13 00:05:21 +00:00
FUBAR-BDHR
c2eb2e0840
Log but don't warn about LOD mismatches when running a standalone server.
2012-11-21 18:49:13 +00:00
Goober5000
0a7d226d5f
fix for Mantis #2726 -- proper handling of mismatch of LOD levels
2012-11-15 07:52:45 +00:00
Echelon9
65adaf51a9
GCC warning: variable set but not used (within AI code)
2012-06-12 16:45:36 +00:00
Goober5000
e704974a1b
remove small warning
2012-05-14 06:32:58 +00:00
Echelon9
5b7190ea39
Fix Assert and Assertion for non-MSVC compilers, due to changes in r8692; Fix use of C++11 cbegin/cend() STL operators as these are not going to be supported widely yet, due to changes in r8693
2012-04-29 11:10:29 +00:00
IssMneur
cc521fcaa4
Make the asteroid.tbl parser generate a more useful error messages.
...
- Converts asteroid_info into the class that it is.
- Changes the asteroid.tbl parser to parse the table as specified
- Also removes the attempts at being clever from the asteroid.tbl parser.
2012-04-29 04:10:58 +00:00
Echelon9
21c2449f0b
Documentation: Changes such that the Doxygen log reports clean, in anticipation of 3.6.14 release
2011-11-28 13:03:38 +00:00
Goober5000
977ea25a6d
approximate the standard function for MSVC6 compatibility purposes
2011-11-23 04:25:50 +00:00
niffiwan
e5ebb22d49
Fix for 7977 - explicitly include <algorithm> so gcc will compile
2011-11-14 03:55:08 +00:00
Zacam
8c8974b215
From zookeeper: customizable asteroid death explosions and radius
...
http://www.hard-light.net/forums/index.php?topic=78762.0
2011-11-12 14:01:38 +00:00
Zacam
3323847094
From zookeeper: customized asteroid split rules
...
http://www.hard-light.net/forums/index.php?topic=78755.0
2011-11-12 13:51:22 +00:00
Echelon9
9f711bf53e
Documentation: General code cleanup for 64bit
2011-11-05 08:12:04 +00:00
Echelon9
eb56cc982d
Documentation: Code cleanup of asteroid.cpp and asteroid.h
2011-09-11 13:56:10 +00:00