asarium
cdd391caa8
Move light handling out of OpenGL code
...
There is nothing specific to OpenGL in that code anymore since it's all
handled in the shaders at this point. This will make the lighting
information available in the normal graphics code which allows to use
those values when filling the uniform buffer for the model rendering.
2017-09-10 11:48:38 +02:00
asarium
f8d0a9bc7d
Remove most remaining OpenGL header includes
2017-08-18 17:53:23 +02:00
asarium
2997633d0d
Fix double rendering of effect ships
...
This fixes #653 .
2017-01-27 00:03:28 +01:00
Samuel Cho
347dca5e60
Renamed draw_list to a more descriptive model_draw_list. Removed unlit maps since those aren't needed anymore. Changed transforms in model_draw_list to use the transform_stack instead of using duplicate code. Removed some unused graphics code. Fixed scaling when using batched transforms.
2017-01-02 20:15:37 -08:00
asarium
d64196eff0
Refactor tracing subsystem
...
The new design is centered around the Event Trace JSON format but it
should still be possible to adapt it for other profiling tools. The old
profiling system has been removed.
2016-11-24 10:26:21 +01:00
asarium
6dbf200cc3
Move lua to scripting folder
2016-10-03 21:38:29 +02:00
m!m
5bbb00d589
Merge pull request #977 from SamuelCho/FredAllocationFix
...
Make sure we tell the batcher to render in FRED.
2016-09-18 10:50:00 +02:00
SamuelCho
54c73bdbc3
Make sure we tell the batcher to render in FRED.
2016-09-17 11:51:29 -07:00
asarium
26f45732da
Move profiling functions into separate folder
2016-09-14 12:26:53 +02:00
asarium
f693d49f95
Remove variable name from GR_DEBUG_SCOPE
2016-09-05 15:29:49 +02:00
SamuelCho
b75a354505
Cleaned up more rendering code. Shrunk the vertex struct since we don't use spec_rgb anymore. Removed any declarations using the old geometry batcher. Streamlined desaturation in the model shader to use the main color uniform. Removed old unneeded interp_ code. Removed stored geometry shader parameters from the shader constants since we're no longer using the EXT version of geometry shaders.
2016-08-30 23:22:09 -07:00
asarium
3fcb731621
Refactor shader handling
...
This fixes a few of the bad design descisions of previous shader
iterations. This uses a dedicated class for managing the resources and
uniform locations of a shader program.
Uniforms are also stored in this object which makes a lot more sense
than storing them in the OpenGL state where they had to be reset every
time a new shader was used.
There are still a lot of possible enhancments to make, e.g. by using
uniform blocks and buffers instead of standard uniforms which would make
uniform location handling easier.
Another optimization that I will investigate is reducing the amount or
different compiled shaders by turning some of the current compile-time
defines into bool uniforms.
2016-08-29 12:38:38 +02:00
SamuelCho
ba826df963
Removed a bunch of unused rendering code.
2016-08-28 18:47:34 -07:00
MageKing17
6987914a2c
Merge pull request #901 from SamuelCho/gl_state_cleanup
...
OpenGL state tracking cleanup
2016-08-28 16:59:02 -07:00
SamuelCho
f693413e26
Removed orphaned GL_state code.
2016-08-28 14:24:10 -07:00
asarium
d7e3b61210
Add debug group support
...
This uses GL_KHR_debug for exposing debug group information. This is
very useful for tools like apitrace where it's used for assiciating
OpenGL commands with a specific application function.
The groups are created using a utility macro which is removed in release
builds so it should have no impact on the release performance.
2016-08-28 14:13:42 +02:00
SamuelCho
a481999a24
OpenGL Core support. Introduction of material based draw system. Rewrote geometry batcher.
2016-08-17 00:13:19 -07:00
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
z64555
ed3c9f1621
Cleanup of fred.h and fred.cpp
2016-08-02 04:21:22 -05: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
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
6e6ff3c7c0
Fix: object/objectsort.cpp: warning: variable ‘wp’ set but not used [-Wunused-but-set-variable]
2015-07-04 16:06:13 +10:00
Echelon9
7f673c8ab6
Goober5000 code review: consistency change.
2015-06-25 16:25:35 +12:00
Echelon9
ce6179a58f
Resolve order of precedence compiler warning.
2015-06-25 14:27:31 +12: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
Goober5000
a541a22239
xt branch: optimize objectsort.cpp by not calculating some things every loop iteration
...
git-svn-id: svn://svn.icculus.org/fs2open/trunk/fs2_open@11133 387891d4-d844-0410-90c0-e4c51a9137d3
2014-10-13 18:23:35 +10:00
The_E
505e1e77f5
From MageKing17: Patch for Mantis 3012 (Various issues with ships in nebula)
...
git-svn-id: svn://svn.icculus.org/fs2open/trunk/fs2_open@10821 387891d4-d844-0410-90c0-e4c51a9137d3
2014-06-19 20:12:53 +10:00
Goober5000
67b171612d
proper class/struct distinction and use of vector over list are A-1 SUPAR
...
git-svn-id: svn://svn.icculus.org/fs2open/trunk/fs2_open@9851 387891d4-d844-0410-90c0-e4c51a9137d3
2013-09-29 22:12:22 +10:00
Goober5000
f5f42f65fa
this is required for strict const-correctness
...
git-svn-id: svn://svn.icculus.org/fs2open/trunk/fs2_open@9715 387891d4-d844-0410-90c0-e4c51a9137d3
2013-07-26 08:14:30 +10:00
Echelon9
fa671f18fc
Remove some unused variables
2012-09-06 15:51:52 +00:00
Valathil
71cd726349
Fix for Mantis 2705: Add Jump Nodes to the list of object types that are models so they are rendered at the right time
2012-08-28 18:50:53 +00:00
Swifty
638ff917a1
go_even_faster: Added framework to improve rendering performance by reducing OpenGL state changes between vertex data binds.
2012-08-11 20:20:24 +00:00
Zacam
f6ad6b14b6
Synchronization of differences between Antipodes and Trunk. Cause unknown, just commit drift issues. Regular auditing will catch these faster, but people need to pay more attention when syncing Trunk changes over to Antipodes.
2012-01-13 17:49:57 +00:00
Echelon9
41919ee15b
Clarify some aspects of the geometry map and distortion map batchers, as well as clarifying and making consistent the function calling conventions throughout the code.
2011-10-16 05:08:33 +00:00
Zacam
cc2323b578
found by Valathil; in "int obj_in_view_cone( object * objp )", codes=g3_rotate_vector(&tmp,&pt); works out better than running the check, then discarding it since g3_code_vector calls to run g3_rotate_vector anyway.
2011-10-09 10:37:27 +00:00
Echelon9
6d4f266e52
Use SCP_* types to access STL types wherever possible. This allows more complete memory monitoring
2011-10-03 09:06:56 +00:00
Valathil
da6727d9d1
Let's try this again. Adding Framebuffer distortion thrusters and explosions.
2011-08-22 17:57:01 +00:00
Swifty
fe605149c4
Soft sphere sprite rendering for particles, explosions, shockwaves, and thrusters.
2011-08-20 22:14:52 +00:00
Sushi
68b036a4af
Add "Fog Near Multiplier" and "Fog Far Multiplier" options for missions. Allows the FREDder to tweak distances at which ships fade out in a nebula.
2011-08-20 15:06:18 +00:00
The_E
2dc34f3e1f
This is the correct version now.
2011-07-30 22:39:49 +00:00
The_E
7f219cad2c
Reverting due to bugs
2011-07-30 22:32:09 +00:00
The_E
3a702bdc1a
This should have been committed as well
2011-07-30 21:43:30 +00:00
Zacam
75043ff5b1
go_faster from Antipodes 6. Everybody, say "Thank you, taylor!"
2010-10-18 18:32:37 +00:00
portej05
719825f80d
The big CVS comment removal. This chops approx. 3.5mb off a full checkout.
...
I've tested this through compiling and through hand checking.
Normalises line endings in ALL files to \n.
2009-06-20 08:08:20 +00:00
Goober5000
6e4021888d
add apostrophes to contractions, lol
2009-04-10 07:49:12 +00:00
Backslash
bfde817bb2
View slew, Target padlock and TrackIR patch by Swifty. Very nice!
...
Don't forget to add code/io/trackir.* to your projects!
2008-03-14 08:55:47 +00:00
taylor
554197fc30
comment out some code which used only if neither D3D nor OGL
2006-05-27 16:59:05 +00:00
taylor
a39e8900e1
minor cleanup and a couple extra error checks
...
get rid of some wasteful math from the gr_set_proj_matrix() calls
2006-05-13 07:09:25 +00:00
taylor
7828fc7e6f
compiler warning fixes to make GCC 4.1 shut the hell up
2006-04-12 22:23:41 +00:00