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
asarium
c40ede030a
Another batch of 64-bit warning fixes.
2016-08-11 22:19:50 +02:00
asarium
f5c0234d3b
Fix uninitialized values in modelrender
2016-08-10 13:28:36 +02: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
16be3b7cc5
Add support for TrueType fonts
...
This allows to use standard TrueType Fonts for text rendering in FSO. It uses the NanoVG library which provides the ability of drawing 2D shapes. This library is used for most 2D operations now and can also be used directly by using the PathRenderer class.
2016-08-02 10:57:28 +02:00
Fabian Woltermann
53222e66e3
Adds a commandline switch analoguous to framebuffer shockwaves to enable the distortion effect for thrusters
2016-07-28 20:22:49 +02:00
Fabian Woltermann
5fca2355b9
Adds TMAP_FLAG_EMISSIVE for the 2D warp effect, and ups the scaling applied to textures with that flag from 1.5 to 2.0 to better approximate the brightness beams used to have.
...
Also sets a glow texture for the 3D warp effect.
2016-07-12 21:51:39 +02:00
MageKing17
70529dbd5a
Deprecate -nohtl and -brief_lighting.
...
-nohtl hasn't worked for years, and -brief_lighting was always supposed to be a temporary flag before making the behavior always on.
2016-07-08 09:39:29 -07:00
SamuelCho
dd73d8fb63
New lighting model based off of Blinn-Phong and Fresnel-Shlick. Introduced -reflect maps. New gloss parameters for specular power. High dynamic range rendering. Improved bloom pass.
2016-07-05 23:15:08 -07:00
niffiwan
2f1b686349
Finish conversion to new frame calc function
...
Also remove debug code
2016-05-10 19:42:20 +10: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
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
Goober5000
680ac9175f
move the two dumb_rotation iterations into one function (which calls a subfunction) in modelread.cpp, and add some descriptive commenting
2016-01-04 23:34:28 -05:00
Echelon9
5d593f0df0
Plumb through is_minimum_GLSL_version()
2016-01-03 16:33:04 -05:00
SamuelCho
0062d2567a
Fixes missing destroyed submodels from the polymodel_instance rendering commit.
2015-12-08 23:53:53 -08:00
Fabian Woltermann
aaa80dfa6f
Merge pull request #486 from SamuelCho/model_instance_rendering
...
Allow model rendering code to use polymodel_instance.
2015-12-03 06:34:09 +01:00
SamuelCho
64ad950a80
Allow model rendering code to use polymodel_instance. Removes the reliance on ship_model_start/stop for rendering models. Also fix a bunch of oversights involving blown off models in the polymodel_instance code.
2015-12-01 23:53:24 -08:00
The E
487f769064
Renaming vm_copy_transpose_matrix to vm_copy_transpose
2015-12-01 20:38:30 +01: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
37cf848f51
Fix: model/modelrender.cpp:2898:9: warning: declaration of ‘view_pos’ shadows a previous local [-Wshadow]
2015-07-11 22:36:42 +10:00
Echelon9
053ae6d287
Fix: modelrender.h:86:7: warning: ‘model_render_params::Replacement_textures’ will be initialized after [-Wreorder]
2015-07-11 21:28:01 +10:00
Echelon9
2bac9ba5fa
Fix: model/modelrender.cpp:780:55: warning: declaration of ‘color’ shadows a global declaration [-Wshadow]
2015-07-05 17:07:39 +10:00
Echelon9
182b297af4
Fix: model/modelrender.cpp:2560:10: warning: variable ‘objp’ set but not used [-Wunused-but-set-variable]
2015-07-05 00:30:34 +10:00
Echelon9
fff2d5280c
Fix: model/modelrender.cpp:2560:8: warning: variable ‘shipp’ set but not used [-Wunused-but-set-variable]
2015-07-04 16:18:38 +10:00
Fabian Woltermann
6a0e550aac
Revert "Fix Coverity 1298257: Uninitialized scalar var"
2015-06-28 13:59:13 +02:00
Fabian Woltermann
150a00a17a
Merge pull request #209 from ln-zookeeper/master
...
Fixes and enhancements for detail boxes and spheres
2015-06-27 11:43:56 +02:00
Fabian Woltermann
bdf844fc83
Merge pull request #113 from niffiwan/coverity/1298257
...
Fix Coverity 1298257: Uninitialized scalar var
2015-06-27 11:28:19 +02:00
Lari Nieminen
e0605f125c
Merge branch 'master' of https://github.com/scp-fs2open/fs2open.github.com
2015-06-25 13:07:41 +03:00
Echelon9
2ca1f40d98
Avoid shadowed declaration of previous local 'gpoi'
2015-06-25 17:20:10 +12:00
Lari Nieminen
fc9acb3a4d
Added support for detail box $box_offset.
2015-06-24 00:48:07 +03:00
Lari Nieminen
2e012969e7
Fixed detail sphere $offset not working right.
2015-06-24 00:44:13 +03:00
Lari Nieminen
84b7a06a44
Restored ability to combine detail boxes and spheres.
2015-06-23 19:53:18 +03:00
Echelon9
2b251e3cb3
Simplify duplicative model/ includes.
2015-06-22 20:24:31 +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
MageKing17
859405b62e
Merge pull request #149 from SamuelCho/mantis3163
...
Refactored how color setting is done for model rendering. Fixes Mantis 3163
2015-05-30 19:24:15 -07:00
Goober5000
74ae0a9395
Merge pull request #148 from SamuelCho/mantis3161
...
Fix for Mantis 3161. Corrected model debug rendering when calling the immediate version of model rendering.
2015-05-30 18:13:05 -04:00
SamuelCho
a7c1e29bf6
Eliminate sorting of draw calls for skyboxes for correctness.
2015-05-29 22:58:28 -07:00
SamuelCho
2ba39e6b6d
Refactored how color setting is done for model rendering. Fixes Mantis 3163.
2015-05-29 21:54:33 -07:00
SamuelCho
44de943a99
Fix for Mantis 3161. Corrected model debug rendering when calling the immediate version of model rendering.
2015-05-29 19:47:23 -07:00
niffiwan
6a88616f9b
Merge pull request #96 from asarium/fix/unordered_map
...
Change SCP_hash_map to SCP_unordered_map
2015-05-19 07:48:23 +10:00
niffiwan
51b8e83d89
Fix Coverity 1298257: Uninitialized scalar var
...
Add all struct members to constructor (esp thrust_scale which was read
uninitialised). Remove some var sets that the constructor now sets as
defaults. Also fixes 1298248
2015-05-17 13:25:00 +10:00
niffiwan
2d832dd11e
Fix Coverity 1298255: Uninitialized scalar var
...
Copy particle min/max life values from modelinterp
Also avoid double->float conversion
2015-05-16 21:51:39 +10:00
asarium
189f23a341
Change SCP_hash_map to SCP_unordered_map
...
Also uses std::unordered_map on every platform now
2015-05-16 11:40:10 +02:00
SamuelCho
5255f129dc
Fixed gradient brackets in ship select screen. Fixed lighting for transparent meshes when using deferred lighting.
2015-05-13 20:38:17 -07:00
SamuelCho
90c8025588
Code cleanup before the big soft shadows and deferred lighting merge into master.
2015-05-08 21:55:28 -07:00
SamuelCho
520b89408e
Fixed warnings related to graphics code additions.
2015-05-08 21:21:20 -07:00
Swifty
c620372357
Soft shadows, deferred lighting, and various major graphics optimizations.
2015-05-02 14:35:37 -07:00