summaryrefslogtreecommitdiffstats
path: root/servers/rendering/renderer_rd/environment/gi.cpp
Commit message (Collapse)AuthorAgeFilesLines
* Merge commit godotengine/godot@f128f383e892865379cb8b14e7bcc9858efe2973Spartan3222024-11-271-1/+1
|\
| * Resolve load and store ops automatically for render passes for discardable ↵Dario2024-11-251-1/+1
| | | | | | | | textures.
* | Merge commit godotengine/godot@87318a2fb7fffeb72adca934e31915be077c3d1fSpartan3222024-11-061-1/+1
|\|
| * Style: Apply `clang-tidy` fixes (superficial)Thaddeus Crews2024-11-041-1/+1
| | | | | | | | • `modernize-use-bool-literals`, `modernize-use-nullptr`, and `readability-braces-around-statements`
* | Fix copyright headers referring to GodotSpartan3222024-10-271-2/+2
| |
* | Rebrand preambles to RedotDubhghlas McLaughlin2024-10-111-0/+2
|/ | | | | | | | | | | | | | | | | | | | | | Credits: Co-authored-by: Skogi <skogi.b@gmail.com> Co-authored-by: Spartan322 <Megacake1234@gmail.com> Co-authored-by: swashberry <swashdev@pm.me> Co-authored-by: Christoffer Sundbom <christoffer_karlsson@live.se> Co-authored-by: Dubhghlas McLaughlin <103212704+mcdubhghlas@users.noreply.github.com> Co-authored-by: McDubh <103212704+mcdubhghlas@users.noreply.github.com> Co-authored-by: Dubhghlas McLaughlin <103212704+mcdubhghlas@users.noreply.github.com> Co-authored-by: radenthefolf <radenthefolf@gmail.com> Co-authored-by: John Knight <80524176+Tekisasu-JohnK@users.noreply.github.com> Co-authored-by: Adam Vondersaar <adam.vondersaar@uphold.com> Co-authored-by: decryptedchaos <nixgod@gmail.com> Co-authored-by: zaftnotameni <122100803+zaftnotameni@users.noreply.github.com> Co-authored-by: Aaron Benjamin <lifeartstudios@gmail.com> Co-authored-by: wesam <108880473+wesamdev@users.noreply.github.com> Co-authored-by: Mister Puma <MisterPuma80@gmail.com> Co-authored-by: Aaron Benjamin <lifeartstudios@gmail.com> Co-authored-by: SingleError <isaaconeoneone@gmail.com> Co-authored-by: Bioblaze Payne <BioblazePayne@gmail.com>
* SDFGI: fix crash if update_data is nullptrGarteal2024-07-191-0/+4
|
* Use Reverse Z for the depth bufferKhasehemwy2024-04-041-3/+8
|
* Fix Volumetric Fog VoxelGI updatesbitsawer2024-03-011-0/+6
|
* Acyclic Command Graph for RenderingDevice.Dario2024-01-081-27/+40
| | | | Adds a new system to automatically reorder commands, perform layout transitions and insert synchronization barriers based on the commands issued to RenderingDevice.
* Fix potential integer underflow in rounded up divisionsEddieBreeg2024-01-021-2/+2
| | | | | | | | | | A new `Math::division_round_up()` function was added, allowing for easy and correct computation of integer divisions when the result needs to be rounded up. Fixes #80358. Co-authored-by: Rémi Verschelde <rverschelde@gmail.com>
* Merge pull request #81167 from bitsawer/fix_sdfgi_editor_changeRémi Verschelde2023-10-251-0/+5
|\ | | | | | | Reset SDFGI when changing editor scene tabs
| * Reset SDFGI when changing editor scene tabsbitsawer2023-08-301-0/+5
| |
* | [Servers] Replace `ERR_FAIL_COND` with `ERR_FAIL_NULL` where applicableA Thousand Ships2023-09-251-34/+34
|/
* Clear SDFGI textures when createdbitsawer2023-08-281-42/+31
|
* Merge pull request #80356 from darksylinc/voxelgi-dispatch-underflowRémi Verschelde2023-08-071-2/+2
|\ | | | | | | Fix integer underflow when rounding up in VoxelGI
| * Fix integer underflow when rounding up in VoxelGIMatias N. Goldberg2023-08-061-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The code wanted to divide and round up: - 0 / 64 = 0 - 63 / 64 = 1 - 64 / 64 = 1 - 65 / 64 = 2 However when the dividend was exactly 0 it would underflow and produce 67108864 instead. This caused TDRs on empty scenes or extremely slow performance Fix #80286
* | Fix various typos with codespellRémi Verschelde2023-08-071-1/+1
|/ | | | | | | | | Also includes typo fixes from #79993, #80068, #80276, and #80303. Co-authored-by: betalars <contact@betalars.de> Co-authored-by: spaceyjase <429978+spaceyjase@users.noreply.github.com> Co-authored-by: Swarkin <102416174+Swarkin@users.noreply.github.com> Co-authored-by: Raul Santos <raulsntos@gmail.com>
* Conditionally free GI and FOG resources, they may not have been createdBastiaan Olij2023-05-221-12/+34
|
* Fix additional cases of breakage of rendering effectsPedro J. Estébanez2023-05-031-14/+0
|
* Fix unsupported sampler filter used for voxel GIPedro J. Estébanez2023-04-261-1/+3
|
* Fix breakages of volumetric fog on voxel GI changesPedro J. Estébanez2023-04-261-8/+10
|
* Use range iterators in LocalVector loopskobewi2023-01-211-10/+4
|
* One Copyright Update to rule them allRémi Verschelde2023-01-051-29/+29
| | | | | | | | | | | | | | | | | | | | As many open source projects have started doing it, we're removing the current year from the copyright notice, so that we don't need to bump it every year. It seems like only the first year of publication is technically relevant for copyright notices, and even that seems to be something that many companies stopped listing altogether (in a version controlled codebase, the commits are a much better source of date of publication than a hardcoded copyright statement). We also now list Godot Engine contributors first as we're collectively the current maintainers of the project, and we clarify that the "exclusive" copyright of the co-founders covers the timespan before opensourcing (their further contributions are included as part of Godot Engine contributors). Also fixed "cf." Frenchism - it's meant as "refer to / see".
* Don't attempt to create or use an R8_UINT texture as storage if VRS is not ↵clayjohn2022-12-161-1/+5
| | | | supported
* Code simplificationsMarkus Sauermann2022-10-181-1/+2
| | | | | | | | | | | | 1. Viewport::get_visible_rect().position is always zero. So Control::get_window_rect is identical to Control::get_global_rect. Remove Control::get_window_rect since it is not used in the source code. 2. sqrt(a * a) = abs(a) for doubles 3. Simplify affine_inverse combination 4. Simplify calculation in shaders
* Make some Image methods statickobewi2022-10-141-1/+1
|
* Merge pull request #66898 from aaronfranke/proj-mat-columnsRémi Verschelde2022-10-051-6/+6
|\ | | | | | | Rename Projection `matrix` to `columns`
| * Rename Projection `matrix` to `columns`Aaron Franke2022-10-041-6/+6
| |
* | Adding getters to RenderTarget and implementing override functionality for XRBastiaan Olij2022-10-051-2/+2
|/
* Move cluster builder, sdfgi and gi structures to clustered renderer, move ↵Bastiaan Olij2022-10-041-60/+75
| | | | light and probe elements into storage and reorganise our render_scene method.
* Extracting render buffers and changing it to a more generic solutionBastiaan Olij2022-09-011-129/+114
|
* Implement Physical Light Units as an optional setting.clayjohn2022-08-311-6/+95
| | | | | | This allows light sources to be specified in physical light units in addition to the regular energy multiplier. In order to avoid loss of precision at high values, brightness values are premultiplied by an exposure normalization value. In support of Physical Light Units this PR also renames CameraEffects to CameraAttributes.
* Rename `str2var` to `str_to_var` and similarMicky2022-08-261-3/+3
| | | | | | | | | | | | | | | | | | Affects the Math class, a good chunk of the audio code, and a lot of other miscellaneous classes, too. - `var2str` -> `var_to_str` - `str2var` -> `str_to_var` - `bytes2var` -> `bytes_to_var` - `bytes2var_with_objects` -> `bytes_to_var_with_objects` - `var2bytes` -> `var_to_bytes` - `var2bytes_with_objects` -> `var_to_bytes_with_objects` - `linear2db` -> `linear_to_db` - `db2linear` -> `db_to_linear` - `deg2rad` -> `deg_to_rad` - `rad2deg` -> `rad_to_deg` - `dict2inst` -> `dict_to_inst` - `inst2dict` -> `inst_to_dict`
* Fix resource leaks in VoxelGIBastiaan Olij2022-08-091-12/+39
|
* Merge pull request #63589 from RandomShaper/sdfgi_debug_pcRémi Verschelde2022-08-021-20/+10
|\ | | | | Keep SdfgiDebug shader's push constant size <= 128
| * Keep SdfgiDebug shader's push constant size <= 128Pedro J. Estébanez2022-07-291-20/+10
| |
* | Changed storage structs to privateBastiaan Olij2022-08-011-20/+20
|/
* Restructure environment in render implementationBastiaan Olij2022-07-291-25/+25
|
* Change RendererSceneRender::GeometryInstance so more code is shared among ↵Bastiaan Olij2022-07-271-5/+5
| | | | renderers
* Move Sky(RD) into environmentBastiaan Olij2022-07-261-2/+2
| | | | Move Fog logic from render scene render to fog
* Implement Vector4, Vector4i, Projectionreduz2022-07-231-8/+8
| | | | | | | | | | | | | Implement built-in classes Vector4, Vector4i and Projection. * Two versions of Vector4 (float and integer). * A Projection class, which is a 4x4 matrix specialized in projection types. These types have been requested for a long time, but given they were very corner case they were not added before. Because in Godot 4, reimplementing parts of the rendering engine is now possible, access to these types (heavily used by the rendering code) becomes a necessity. **Q**: Why Projection and not Matrix4? **A**: Godot does not use Matrix2, Matrix3, Matrix4x3, etc. naming convention because, within the engine, these types always have a *purpose*. As such, Godot names them: Transform2D, Transform3D or Basis. In this case, this 4x4 matrix is _always_ used as a _Projection_, hence the naming.
* Fix various typos not caught by codespellluz paz2022-07-211-1/+1
| | | Revert upstream `core/input/gamecontrollerdb.txt`. Upstream fix: https://github.com/gabomdq/SDL_GameControllerDB/pull/600
* Merge pull request #62834 from RandomShaper/fix_vk_sky_errorRémi Verschelde2022-07-181-1/+5
|\ | | | | Bind correct default resource type in GI
| * Bind correct default resource type in GIPedro J. Estébanez2022-07-081-1/+5
| |
* | Merge pull request #62848 from RandomShaper/shader_writability_improvementRémi Verschelde2022-07-181-3/+4
|\ \
| * | Make SDFGI direct light shader follow the same-writability rulePedro J. Estébanez2022-07-181-3/+4
| |/
* / Adding Variable Rate Shading support to GodotBastiaan Olij2022-07-171-88/+120
|/ | | | | Improve GI renderer and add VRS support Implement render device has_feature and move subgroup settings to limit_get
* Merge pull request #62344 from BastiaanOlij/extract_dependenciesRémi Verschelde2022-07-061-11/+6
|\
| * Split dependency logicBastiaan Olij2022-06-281-11/+6
| | | | | | | | | | | | Split FOG Split visibility notifier Final cleanup of storage classes