Commit graph

315 commits

Author SHA1 Message Date
RaveYard
364d71a24a Group together equal portals 2022-10-31 11:07:56 +01:00
RaveYard
0a9c2cf131 Implement sector groups 2022-10-31 11:07:56 +01:00
RaveYard
cb9416269e Initial implementation of recursive portal pointlight propagation 2022-10-31 10:57:34 +01:00
RaveYard
b003565ad2 Fix CheckAndMakePortal missing tagged sectors 2022-10-31 10:50:24 +01:00
RaveYard
e8e339c8f7 Fix typo in CreatePlanePortal 2022-10-31 10:44:02 +01:00
RaveYard
0a618298a2 Fix buffer flush 2022-10-30 14:18:39 +01:00
RaveYard
e064c7a01a Fix uninitialized args in struct IntLineDef 2022-10-29 23:34:29 +02:00
Magnus Norddahl
7503219d3e
Merge pull request #50 from MrRaveYard/pr_portals
Initial portal support for sunlight
2022-10-29 19:00:28 +02:00
RaveYard
e9bf098195 Add support for Sector_SetPortal 2022-10-29 17:23:22 +02:00
RaveYard
4605f06308 Move line portal to its own function 2022-10-29 16:13:09 +02:00
RaveYard
38916e7f75 Implement basic linedef sunlight portal support 2022-10-29 15:16:27 +02:00
Magnus Norddahl
1427ca5f35
Merge pull request #49 from MrRaveYard/pr_renderdoc
Add RenderDoc support
2022-10-26 17:57:06 +02:00
RaveYard
525365637c Fix Linux/macOS build 2022-10-26 12:07:24 +02:00
RaveYard
bfbf97c2f6 Add RenderDoc support 2022-10-26 11:52:10 +02:00
Magnus Norddahl
ee0740b0eb
Merge pull request #48 from MrRaveYard/pr_flush_cmd_buffer
Flush scene buffers if next surface is out of space
2022-10-25 23:42:10 +02:00
RaveYard
7aff36dfb4 Flush scene buffers if next surface is out of space 2022-10-15 19:11:38 +02:00
RaveYard
8fb35aca7f Use default member initializers in IntThing 2022-10-15 13:59:26 +02:00
Magnus Norddahl
207352f0c5
Merge pull request #47 from MrRaveYard/pr_negative_lights
Allow use of negative color values for lights
2022-10-15 12:36:43 +02:00
RaveYard
0a53030010 Fix non-rtx version of TraceFirstHitTriangleT
This fixes sunlight
2022-10-15 11:24:21 +02:00
RaveYard
67bd6c62ab Support negative light intensities on pointlights 2022-10-14 20:27:28 +02:00
dpjudas
4b05dccb8a Fix include error 2022-09-01 02:16:30 +02:00
Magnus Norddahl
1e62255b28 Update the vulkan support classes and enable runtime detection for falling back to non-rayquery rendering if the device does not support it 2022-09-01 01:04:17 +02:00
Magnus Norddahl
0c6954a767 Add --no-rtx option for testing the non-rayquery path on hardware that can do RTX 2022-09-01 00:10:33 +02:00
Magnus Norddahl
3202713eee Implement TraceFirstHitTriangle for the non-rayquery path 2022-09-01 00:03:29 +02:00
Magnus Norddahl
d347464597 Implement TraceAnyHit for the non-rayquery variant 2022-08-31 23:07:31 +02:00
Magnus Norddahl
83153c9e45 Implement the C++ side of not using ray queries 2022-08-31 21:40:07 +02:00
Magnus Norddahl
c80f611924 Some initial support for doing GPU ray tracing without RTX 2022-08-31 09:54:08 +02:00
Magnus Norddahl
e225118e8e Remove light probes
Remove emissive surface code
Change default sample count to 16
2022-08-31 08:48:10 +02:00
Magnus Norddahl
8dcd37691c Remove the CPU raytracer 2022-08-31 08:09:12 +02:00
Magnus Norddahl
8ed96484c2 Remove the old GPU raytracer 2022-08-31 06:22:02 +02:00
Magnus Norddahl
59c58b75f1 Clean up some code by moving it into functions 2022-08-31 06:15:37 +02:00
Magnus Norddahl
66124477b2 Some stats code for knowing how many lights are touching surfaces 2022-08-28 21:57:42 +02:00
Magnus Norddahl
941cf6228a Sort surfaces into smoothing groups and render the entire group into a surface tile
Extend the raytracing of a surface tile by one to get better transitions
Fix Plane.Distance(point) not actually returning the distance to the point!
2022-08-28 21:04:41 +02:00
Magnus Norddahl
9c43d0336d Add multisampling 2022-08-27 05:38:40 +02:00
Magnus Norddahl
c53ebe8121 Only process lights within range of a surface 2022-08-17 16:10:10 +02:00
Magnus Norddahl
f6f11af04a Make the fragment shader a little more readable 2022-08-17 02:38:05 +02:00
Magnus Norddahl
0ca74c2e42 Speed up rayquery raytracer by using an atlas 2022-08-17 01:35:12 +02:00
Magnus Norddahl
89a3927a66 Clean up some variables 2022-08-16 23:59:06 +02:00
Magnus Norddahl
034bcd9b7e
Merge pull request #46 from alexey-lysiuk/fix-no-sse
Fix building for architectures without SSE
2022-08-04 15:08:03 +02:00
alexey.lysiuk
2000829d82 Fix building for architectures without SSE
Tested compilation of ARM64 target on macOS
2022-08-04 12:55:41 +03:00
Magnus Norddahl
9bd66835bf
Merge pull request #45 from alexey-lysiuk/ci
Add continuous integration
2022-07-25 13:10:17 +02:00
alexey.lysiuk
5bc1dd3a2a Add continuous integration via GitHub Actions 2022-07-25 10:53:00 +03:00
alexey.lysiuk
d3220278cc Fix compilation error on Linux
src/framework/tarray.h:386:46: error: ‘intptr_t’ was not declared in this scope
2022-07-25 10:52:16 +03:00
RaveYard
c3ab08c4af Fix blur code but keep it inactive 2022-07-17 14:46:19 +02:00
RaveYard
8e6c4b98ec Remove use of DelauneyTriangulator 2022-07-09 14:25:04 +02:00
Magnus Norddahl
ee272c7ee8
Merge pull request #44 from MrRaveYard/pr_rectangle_pack
Use library to improve lightmap texture packing
2022-07-09 09:54:29 +02:00
RaveYard
baba15b9b5 Use library to improve lightmap texture packing 2022-07-08 22:51:41 +02:00
Magnus Norddahl
9b510f3e84
Merge pull request #43 from MrRaveYard/pr_preview_switch
Add --preview switch that significantly reduces sample count
2022-07-06 14:31:20 +02:00
RaveYard
48430fb306 Add --preview switch that significantly reduces sample count 2022-07-06 11:45:36 +02:00
RaveYard
e97babc617 Fix bad control flow in GPU sunlight normal test 2022-07-05 14:56:50 +02:00