RaveYard
4675ab5b81
Fix GPURayTracer::CreateTask accidentally creating useless tasks
...
and reserve task size in CPU for lightprobes
2022-07-05 09:33:44 +02:00
RaveYard
00ae64b79d
Discard traces via dot product for every light in GPU/CPU
2022-07-05 09:32:13 +02:00
RaveYard
866d02fc4a
Discard GPU trace tasks that are out of surface bounds
2022-07-04 12:26:52 +02:00
RaveYard
020b053398
Move task discard test from CPU tracer to surfaceclip.h
2022-07-04 12:26:05 +02:00
RaveYard
3a53ffeca9
Discard CPU sun traces via normal dot product test
2022-07-03 23:06:40 +02:00
Magnus Norddahl
ff4d4fe56d
Merge pull request #41 from MrRaveYard/pr_cull_tasks
...
Discard tasks for CPURaytracer that are not on the surface
2022-07-03 22:25:08 +02:00
RaveYard
00a4e6a73e
Discard trace tasks for CPURaytracer that are outside of any real geometry
2022-07-03 21:32:42 +02:00
Magnus Norddahl
bc0f419fff
Add ambient occlusion
2022-07-03 13:22:17 +02:00
Magnus Norddahl
b67f265c75
Move pipeline barrier to a more logical location
2022-07-03 03:10:39 +02:00
Magnus Norddahl
6e8757649c
Trace the sun
2022-07-03 02:57:05 +02:00
Magnus Norddahl
1d51bc17de
Fix triangle strip not covering the entire tile
2022-07-03 02:01:01 +02:00
Magnus Norddahl
65445a7b07
Implement enough of a ray query raytracer that it at least outputs something
2022-07-03 01:47:11 +02:00
Magnus Norddahl
12ffde80bc
Minor code cleanup
2022-07-02 05:18:08 +02:00
Magnus Norddahl
2898242f12
Remove prototype declaration missing from last commit
2022-07-02 01:37:32 +02:00
Magnus Norddahl
1bb8408b75
Create the output framebuffer
2022-07-02 01:36:28 +02:00
Magnus Norddahl
582cd7f7c0
RunAsync serves no purpose anymore as it now doesn't actually do anything in the main thread
2022-07-02 01:35:52 +02:00
nashmuhandes
496b1cb783
Print the hex representation of the sun color, too (might be useful for user's reference)
2022-07-01 14:46:02 +08:00
nashmuhandes
e2ff176e3a
Use integer for the sun color. UDB's color picker actually stores the color as an int when you save the map (despite exposing it in the UI as XXRRGGBB).
2022-07-01 14:34:55 +08:00
Magnus Norddahl
71c6552258
Prepare the vertex shader to draw without a vertex buffer
2022-06-30 23:59:37 +02:00
Magnus Norddahl
8ec576c3bd
Begin work on a new GPU raytracer that uses ray queries instead of the raytracing pipeline
2022-06-30 23:26:31 +02:00
RaveYard
04d8aabc92
Fix ambient occlusion pass not considering sky as a miss
2022-06-30 15:55:44 +02:00
RaveYard
443d447fcb
Remove unused indirect samples buffer
2022-06-30 12:31:28 +02:00
Magnus Norddahl
44b1d90968
Fix missing ShInitialize call
2022-06-30 10:42:10 +02:00
Magnus Norddahl
d88c2ef41c
Update builders to use the new form also used by the gzd backend
2022-06-29 20:12:36 +02:00
nashmuhandes
29d38a2969
Suffix _line to the linedef sample distance UDMF property as its naming is too close to the ZDRayInfo sample distance property
2022-06-29 15:04:52 +08:00
nashmuhandes
18e291c13a
Update documentation (per surface sampling distance)
2022-06-29 14:56:19 +08:00
RaveYard
023d75f879
Add line_horizont support
2022-06-24 22:39:29 +02:00
RaveYard
4d40108906
Fix top side textures not counting towards sky
...
I checked how GZDoom and chocolate Doom behave and it turns out that the top texture is irrelevant
but the bottom one is relevant
2022-06-24 22:36:42 +02:00
RaveYard
ce3060708d
Add --dump-mesh option and improve LevelMesh::Export
2022-06-24 20:53:44 +02:00
RaveYard
867af9edcc
Update CheckSkySectors to consider floors
2022-06-24 16:24:03 +02:00
RaveYard
3e701313dc
Fix printf and conversion warnings
2022-06-24 14:00:15 +02:00
RaveYard
114b5c68d2
Fix certain broken normals
2022-06-22 14:30:56 +02:00
RaveYard
038259a590
Add support for most common slope types
...
Certain actors used to make slopes aren't still supported
2022-06-22 14:30:51 +02:00
RaveYard
152b5092b9
Display percentage progress instead of dots
2022-06-16 22:43:07 +02:00
RaveYard
0479d4fce3
Support customizable sampling distance per surface
...
- Fix sampleDistance UDMF
- Refactoring code
- Handle 3D floors sides via lm_sampledist_mid per each wall in the
applied sector
2022-06-16 15:33:28 +02:00
nashmuhandes
4107176f0d
Standardize and finalize the naming conventions for the new UDMF keys to everything lightmap-related to use an "lm_" prefix.
2022-06-15 23:32:26 +08:00
nashmuhandes
5124788013
Strip quotes from the sun color string
2022-06-15 19:24:43 +08:00
nashmuhandes
b2b4dd4cfc
- Moved ZDRayInfo properties back to UDMF keys... the idea to put these as thing args in the first place wasn't a good idea after all. :P
...
- Use a hex color string for the sun color on ZDRayInfo, because UDB's color picker usually uses strings for colors values.
2022-06-15 15:28:40 +08:00
nashmuhandes
3a1cf7fc43
Temporarily disable surface lights too. Same reason as previous commit
2022-06-15 14:52:08 +08:00
nashmuhandes
5bb277ff31
Disable light bounces for now, after some internal discussion pertaining to future improvements
2022-06-15 14:42:02 +08:00
RaveYard
f4479a17d5
Add default auto probe grid size
2022-06-14 19:51:05 +02:00
nashmuhandes
a0935ba604
If arg0str is used for a spotlight's color, convert that string to an int and pass that value as the light color. UDB's color picker interface uses the arg0str field for spotlight color.
2022-06-03 02:55:52 +08:00
nashmuhandes
bfb23302ef
- Report sun vector
...
- Various styling fixes to the messages
2022-02-20 08:42:30 +08:00
nashmuhandes
25345c2477
Replace Thing UDMF keys for the ZDRayInfo with args instead
2022-02-20 04:46:19 +08:00
nashmuhandes
05eed4d4a2
Add "line" suffix to the surface light keywords to clearly label their intended usage
2022-02-20 04:28:28 +08:00
nashmuhandes
f38995889d
Remove 'lightintensity' UDMF key from Things, replaced it with the Thing's alpha instead
2022-02-20 04:17:45 +08:00
nashmuhandes
7f822dd250
Use ZDRayInfo's angle and pitch to determine the sun direction
2022-02-16 06:42:33 +08:00
nashmuhandes
3f191651aa
For static light things, have ZDRay use args instead of UDMF keys. This aligns them with dynamic lights, and will help with UDB integration.
...
Only 'lightintensity' remains as a UDMF key, because there is no more free arg slots for it.
Also made constants for the various thing types to reduce coding mistakes.
2022-02-16 02:14:21 +08:00
nashmuhandes
15b31f0526
Only create lights for the actual static light things
2022-02-15 22:10:32 +08:00
Magnus Norddahl
c5d09682a0
Fix threadIndex mistakenly getting captured by reference
2022-02-15 14:35:32 +01:00