summaryrefslogtreecommitdiffstats
path: root/servers/rendering/rasterizer_rd/rasterizer_scene_rd.cpp
Commit message (Collapse)AuthorAgeFilesLines
* RenderingServer reorganizationreduz2020-12-041-8477/+0
|
* Reorganize rendering server.reduz2020-12-031-3/+3
| | | | | -Made RenderingServerScene abstract, allowing reimplementation -RenderingServerRaster -> RenderingServerDefault, but this class is going away soon.
* Refactored Mesh internals and formats.reduz2020-12-021-4/+5
| | | | | | | | | | | | | | | -Changed how mesh data is organized, hoping to make it more efficient on Vulkan and GLES. -Removed compression, it now always uses the most efficient format. -Added support for custom arrays (up to 8 custom formats) -Added support for 8 weights in skeleton data. -Added a simple optional versioning system for imported assets, to reimport if binary is newer -Fixes #43979 (I needed to test) WARNING: -NOT backwards compatible with previous 4.x-devel, will most likely never be, but it will force reimport scenes due to version change. -NOT backwards compatible with 3.x scenes, this will be eventually re-added. -Skeletons not working any longer, will fix in next PR.
* Merge pull request #42761 from fire/color-grading-3dRémi Verschelde2020-11-281-2/+27
|\ | | | | Environment brightness, contrast, saturation restore with 3d LUT.
| * Environment brightness, contrast, saturation restore with color correction.clayjohn2020-11-281-2/+27
| | | | | | | | | | | | | | | | | | Allow gradients and 2d images. Use shader versions for LUT in tonemap Co-authored-by: alex-poe <3957610+CptPotato@users.noreply.github.com> Co-authored-by: QbieShay <cislaghi.ilaria@gmail.com> Co-authored-by: Clay John <claynjohn@gmail.com>
* | Merge pull request #42987 from clayjohn/VULKAN-sky-onlyRémi Verschelde2020-11-281-22/+44
|\ \ | |/ |/| Add sky_only setting to DirectionalLight3Ds
| * Add sky_only setting to DirectionalLight3Dsclayjohn2020-10-211-22/+44
| |
* | fix for two incorrectly bound texture formatsJordan Schidlowsky2020-11-191-3/+2
| |
* | Check uniform set validity before freeingNick Swoboda2020-11-181-1/+3
| |
* | Reorganized core/ directory, it was too fatty alreadyreduz2020-11-071-1/+1
| | | | | | | | | | | | -Removed FuncRef, since Callable makes it obsolete -Removed int_types.h as its obsolete in c++11+ -Changed color names code
* | Refactored 2D shader and lighting systemreduz2020-10-241-2/+2
|/ | | | | | | | | | -Removed normal/specular properties from nodes -Create CanvasTexture, which can contain normal/specular channels -Refactored, optimized and simplified 2D shaders -Use atlas for light textures. -Use a shadow atlas for shadow textures. -Use both items aboves to make light rendering stateless (faster). -Reorganized uniform sets for more efficiency.
* Fix invalid buffer updates in SDFGIreduz2020-10-191-87/+94
|
* Merge pull request #38097 from Calinou/add-viewport-debandingJuan Linietsky2020-10-191-1/+3
|\ | | | | Add a debanding property to Viewport
| * Add a debanding property to ViewportHugo Locurcio2020-08-141-1/+3
| | | | | | | | | | | | | | | | | | | | | | | | It can be enabled in the Project Settings (`rendering/quality/screen_filters/use_debanding`). It's disabled by default as it has a small performance impact and can make PNG screenshots much larger (due to how dithering works). It will also slightly brighten the scene's dark areas. As a result, it should be enabled only when banding is noticeable enough. This closes #17006.
* | Revert "Replace SAO implementation with MSSAO"Juan Linietsky2020-10-181-125/+57
| |
* | Merge pull request #42077 from clayjohn/MSSAOJuan Linietsky2020-10-181-57/+125
|\ \ | | | | | | Replace SAO implementation with MSSAO
| * | Replace SAO implementation with MSSAOclayjohn2020-10-181-57/+125
| | |
* | | Merge pull request #41415 from clayjohn/VULKAN-shader-overridesJuan Linietsky2020-10-181-0/+1
|\ \ \ | | | | | | | | Add FOG, RADIANCE, and IRRADIANCE shader overrides
| * | | Add FOG, RADIANCE, and IRRADIANCE shader overridesclayjohn2020-10-181-0/+1
| | | |
* | | | Merge pull request #42201 from clayjohn/Vulkan-new-glowJuan Linietsky2020-10-181-11/+10
|\ \ \ \ | |_|/ / |/| | | Optimize Glow with local memory
| * | | Optimize Glow with local memoryclayjohn2020-10-181-11/+10
| | | |
* | | | Add aerial perspective to fixed fogclayjohn2020-10-171-1/+9
|/ / /
* | | Implement GPU Particle Collisionsreduz2020-10-091-0/+17
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | -Sphere Attractor -Box Attractor -Vector Field -Sphere Collider -Box Collider -Baked SDF Collider -Heightmap Collider
* | | Add high quality glow modeclayjohn2020-08-311-2/+7
|/ /
* / Add fog to sky shadersclayjohn2020-08-191-122/+280
|/
* Restored fog (non volumetric).Juan Linietsky2020-08-131-0/+51
| | | | | Uses a simpler and more intuitive implementation based on density. Its less flexible than before, but its easier to get nice results.
* Added volumetric fog effect.Juan Linietsky2020-08-131-78/+761
|
* Refactor light clusteringJuan Linietsky2020-07-221-1/+632
| | | | Move from high end to shared, so all renderers use clustering.
* Merge pull request #40450 from asmaloney/spellingRémi Verschelde2020-07-211-4/+4
|\ | | | | Fix spelling & grammar in comments, docs, and messages
| * Fix spelling & grammar in comments, docs, and messagesAndy Maloney2020-07-211-4/+4
| |
* | Fix spelling of a var, a struct, and message outputAndy Maloney2020-07-171-39/+39
|/
* Add incremental update mode to skyclayjohn2020-07-111-23/+60
|
* Environment: Refactor code for readability + moreRémi Verschelde2020-07-011-2/+2
| | | | | | | | | | | | - Makes all boolean setters/getters consistent. - Fixes bug where `glow_hdr_bleed_scale` was not used. - Split CameraEffects to their own source file. - Reorder all Environment method and properties declarations, definitions and bindings to be consistent with each other and with the order of property bindings. - Bind missing enum values added with SDFGI. - Remove unused SDFGI enhance_ssr boolean. - Sync doc changes after SDFGI merge and other misc changes.
* Fixes recently introduced shader leaksqarmin2020-06-271-1/+9
|
* Addition of SDFGI for open world global illuminationJuan Linietsky2020-06-261-178/+2575
| | | | Move GI to a deferred pass
* Style: Enforce braces around if blocks and loopsRémi Verschelde2020-05-141-6/+12
| | | | | Using clang-tidy's `readability-braces-around-statements`. https://clang.llvm.org/extra/clang-tidy/checks/readability-braces-around-statements.html
* Style: Enforce separation line between function definitionsRémi Verschelde2020-05-141-0/+19
| | | | | | | | | | | | | | | | | | | | | | | I couldn't find a tool that enforces it, so I went the manual route: ``` find -name "thirdparty" -prune \ -o -name "*.cpp" -o -name "*.h" -o -name "*.m" -o -name "*.mm" \ -o -name "*.glsl" > files perl -0777 -pi -e 's/\n}\n([^#])/\n}\n\n\1/g' $(cat files) misc/scripts/fix_style.sh -c ``` This adds a newline after all `}` on the first column, unless they are followed by `#` (typically `#endif`). This leads to having lots of places with two lines between function/class definitions, but clang-format then fixes it as we enforce max one line of separation. This doesn't fix potential occurrences of function definitions which are indented (e.g. for a helper class defined in a .cpp), but it's better than nothing. Also can't be made to run easily on CI/hooks so we'll have to be careful with new code. Part of #33027.
* Style: clang-format: Disable KeepEmptyLinesAtTheStartOfBlocksRémi Verschelde2020-05-141-121/+0
| | | | | | | | | | | | | | Which means that reduz' beloved style which we all became used to will now be changed automatically to remove the first empty line. This makes us lean closer to 1TBS (the one true brace style) instead of hybridating it with some Allman-inspired spacing. There's still the case of braces around single-statement blocks that needs to be addressed (but clang-format can't help with that, but clang-tidy may if we agree about it). Part of #33027.
* New lightmapperJuan Linietsky2020-05-101-2/+171
| | | | | | | -Added LocalVector (needed it) -Added stb_rect_pack (It's pretty cool, we could probably use it for other stuff too) -Fixes and changes all around the place -Added library for 128 bits fixed point (required for Delaunay3D)
* Style: clang-format: Disable AllowShortCaseLabelsOnASingleLineRémi Verschelde2020-05-101-2/+6
| | | | Part of #33027.
* Merge pull request #37949 from reduz/implement-global-shader-uniformsRémi Verschelde2020-04-171-0/+30
|\ | | | | Implement global and per instance shader uniforms.
| * Implement global and per instance shader uniforms.Juan Linietsky2020-04-171-0/+30
| | | | | | | | | | | | | | | | Adds two keywords to shader language for uniforms: -'global' -'instance' This allows them to reference values outside the material.
* | Merge pull request #37953 from clayjohn/VULKAN-sky-sun-sizeRémi Verschelde2020-04-171-14/+23
|\ \ | | | | | | Add light size to Sky Shaders
| * | Add light size to Sky Shadersclayjohn2020-04-171-14/+23
| |/
* / Use sky properly for ambient and reflectionsclayjohn2020-04-161-2/+2
|/
* Merge pull request #37861 from reduz/implement-decalsRémi Verschelde2020-04-141-2/+29
|\ | | | | Implement decals
| * Implement decalsJuan Linietsky2020-04-141-2/+29
| | | | | | | | | | | | Also implemented decal atlas, so projectors and other stuff can be added. Sidenote: Had to make RID hashable, so some unrelated includes changed in order to include it in hashfuncs.h
* | Merge pull request #37749 from clayjohn/Vulkan-improved-ssRémi Verschelde2020-04-131-3/+102
|\ \ | |/ |/| Add vogel filter and settings to soft shadows
| * Add proper quality settings to soft shadowsclayjohn2020-04-101-3/+102
| |
* | Implement MSAAJuan Linietsky2020-04-121-5/+13
| |