Fabian Woltermann
32fec00e97
Remove the MAX_LIGHTS define
2018-03-04 08:55:21 +01:00
niffiwan
8f2aec3b9a
add small bsp tree optimisation
...
don't add no_collide (& similar) submodels to the bsp trees
this has been in the fotg branch for ages without causing any apparant
issues
2018-03-01 20:00:59 +10:00
MageKing17
78abbf89e6
Merge pull request #1625 from Flip-Sandwich/master
...
Fixes electronics flag behavior with shockwaves
2018-02-27 19:09:32 -08:00
Fabian Woltermann
4de3451d6c
Merge pull request #1628 from The-E/fix/lab-glowpoints
...
Make glowpoints in the lab work correctly
2018-02-26 12:16:33 +01:00
Fabian Woltermann
8f5f77fa42
Merge pull request #1622 from asarium/opengl/directionalDeferredLights
...
Use deferred shader for applying directional lights
2018-02-26 11:18:33 +01:00
Fabian Woltermann
354246caf4
Make sure that glowpoints attached to rotating subobjects actually do rotate in the lab
2018-02-26 09:49:13 +01:00
faceman
4797b29311
fixes shockwaves with electronics flagged weapons, properly this time
2018-02-26 15:42:54 +11:00
asarium
0d188fe076
Use deferred shader for applying directional lights
...
This moves all lighting operations into the deferred shading phase of
the rendering pipeline. Previously, directional lights were applied to
all objects while they were being rendered. This was probably done to
avoid doing multiple full screen passes later but caused some problems
since the color information in the G-buffers was not correct for doing
later lighting operations.
This was especially noticable in dark scenes where point lights would
appear to ignore the color of the rendered objects. This should be fixed
with these changes.
I did some performance testing and to my surprise this actually improves
performance in very demanding scenes. My guess would be that applying
the shadows while rendering the objects caused a lot of overdraw which
is not the case anymore since shadows are only computed for visible
pixels. In simple scenes the opposite happens which leads to decreased
performance in those cases but in my opinion the improvement in
demanding scenes outweights this performance decrease.
2018-02-25 12:43:45 +01:00
MageKing17
9953c6a7c4
Merge pull request #1616 from The-E/1615_fix
...
Do not try to delete opengl buffers when we have no idea what they are
2018-02-23 09:33:20 -08:00
MageKing17
1db36b7ba5
Merge pull request #1619 from The-E/debug_filter_defaults
...
The extra debug filters really should not be enabled by default.
2018-02-23 09:25:31 -08:00
Fabian Woltermann
77b6648d22
Merge pull request #1613 from asarium/opengl/shaderIncludes
...
Add support for includes in shader files
2018-02-23 12:58:04 +01:00
Fabian Woltermann
942f72d09a
Print out a warning if we can't find either dockpoint
2018-02-20 16:47:02 +01:00
Fabian Woltermann
ee27db60de
The extra debug filters really should not be enabled by default.
2018-02-20 11:54:23 +01:00
MageKing17
66c0d27270
Merge pull request #1618 from MageKing17/bugfix/ai-profiles-parsing-end
...
Make AI profile tables actually stop parsing if #End is missing.
2018-02-18 15:10:44 -08:00
m!m
206364a113
Merge pull request #1617 from The-E/missile_lighting_no_export
...
Do not export -missile_lighting to launchers
2018-02-18 23:14:05 +01:00
MageKing17
ac9547d610
Make AI profile tables actually stop parsing if #End is missing.
...
By making parse_ai_profiles_tbl() actually check the return value of skip_to_start_of_string_either() (and break if the appropriate characters aren't found), AI profile tables should no longer keep parsing past the end of the file and into invalid memory, until they either find an "#End" in memory somewhere or just plain crash.
As a pleasant bonus, a missing "#End" should now generate an appropriate error message.
2018-02-18 13:13:18 -08:00
Fabian Woltermann
6534c0a3f6
Remove the -missile_lighting flag from the list of exported cmdline options
2018-02-18 22:12:29 +01:00
Fabian Woltermann
cdeeee688d
Merge pull request #1605 from Flip-Sandwich/subsysdamagefix
...
Negative damages no longer heal subsystems
2018-02-18 21:01:57 +01:00
Fabian Woltermann
8b5f257d0d
Merge pull request #1614 from asarium/feature/luaLanguageFunctions
...
Add lua functions for accessing the current engine language
2018-02-18 20:59:23 +01:00
Fabian Woltermann
b2652e0628
While working through the atexit table, this function somehow got called, leading to the debug_filter.cfg being altered, as explained in #1615
2018-02-18 19:55:44 +01:00
asarium
2eea0a6eb1
Add lua functions for accessing the current engine language
...
This can be used by scripts to implement language specific behavior.
2018-02-18 17:12:17 +01:00
m!m
67c67548fd
Merge pull request #1611 from The-E/smooth_lab_cam
...
Make the lab's camera smoother
2018-02-18 16:05:33 +01:00
m!m
12e45e88fa
Merge pull request #1612 from The-E/LabHelpText
...
Print a helpful reminder about the camera controls
2018-02-18 00:01:25 +01:00
Fabian Woltermann
e2129355bf
Remove the bloom printout, add a camera distance printout
2018-02-17 21:00:47 +01:00
m!m
857582a980
Merge pull request #1608 from The-E/LightTypeEnum
...
Use an enum class to mark light types
2018-02-17 19:24:51 +01:00
asarium
c4dd593dd7
Move lighing functions into one file
...
There was a slight difference between the GGX function from the main
shader and the deferred shader. The deferred shader didn't use the
fresnel value stored in the G-buffer for some reason.
2018-02-17 19:07:26 +01:00
asarium
30404d4b04
Move shadow functions into separate shader file
2018-02-17 19:02:02 +01:00
asarium
c8e3e01ca0
Add support for includes in shader files
...
This can be used for keeping code for common functionality in one file
(e.g. lighting functions). The code which detects include statements is
pretty simple so it may break if it is used in a more complicated.
Circular includes are detected and treated as an error.
2018-02-17 18:59:11 +01:00
Fabian Woltermann
16ed58f403
Print a helpful reminder about the camera controls
2018-02-17 16:25:15 +01:00
Fabian Woltermann
5ac2571efa
Clamp the lab camera's phi component to [0.01, 3.13] to avoid locking issues
2018-02-17 11:56:26 +01:00
Fabian Woltermann
7dfa5b5739
move this variable initialization out of the switch statement
2018-02-17 10:46:59 +01:00
m!m
0178374b98
Merge pull request #1606 from The-E/NewLab
...
Use mission backgrounds in the F3 lab
2018-02-16 11:26:51 +01:00
Fabian Woltermann
738e4a8153
Remove unused variable
2018-02-16 09:49:11 +01:00
faceman
85c2b3a7f0
Removes a magic number from ship.cpp
2018-02-16 16:08:45 +11:00
faceman
508b8a176b
Fixes beam behaviour with additive/cap/etc damage types
2018-02-16 15:12:25 +11:00
Fabian Woltermann
ca313ae17f
Addressing CI issues
2018-02-15 14:41:14 +01:00
Fabian Woltermann
87bb2cbcc7
Remove debris rendering for now
2018-02-15 14:19:59 +01:00
Fabian Woltermann
9e673ff7fe
light_reset needs to be called on every frame.
...
this also adds a trace scope to sunspot processing
2018-02-15 11:09:53 +01:00
Fabian Woltermann
126b6718db
Reset the background window when it's closed
2018-02-15 11:01:34 +01:00
Fabian Woltermann
b0fc182fab
Fix crash when switching between weapons and ships
2018-02-15 10:44:45 +01:00
Fabian Woltermann
158292afba
We can't show tech or external models yet
2018-02-15 10:35:25 +01:00
Fabian Woltermann
e334c1f736
Specify all values explicitly
2018-02-15 10:21:13 +01:00
Fabian Woltermann
f6fa053d94
Addressing feedback
2018-02-15 10:17:32 +01:00
Fabian Woltermann
4e24fba7fa
Make sure the index is always incremented
2018-02-15 10:09:37 +01:00
Fabian Woltermann
0ea638f520
Fix an uninitialized variable being stuffed into a vector
2018-02-15 10:05:46 +01:00
Fabian Woltermann
d75ec93484
Merge pull request #1604 from Flip-Sandwich/master
...
Consistent beam damage per frame regardless of time acceleration
2018-02-14 20:11:18 +01:00
Fabian Woltermann
69f4fa60f5
Remove unused variables
2018-02-14 17:10:26 +01:00
Fabian Woltermann
95ed536225
change the light type to an enum class
2018-02-14 17:07:42 +01:00
asarium
96d3eebad9
Don't include the default ai_profiles system in CFile
...
This fixes a warning caused by parsing the default ai_profiles table
twice. The default table was moved out of the data/tables folder and
into a special builtin category which will not be included in CFile.
2018-02-14 16:45:04 +01:00
Fabian Woltermann
3b21b2469f
A clean, up-to-date patch of the new lab code
2018-02-14 16:19:38 +01:00