summaryrefslogtreecommitdiffstats
path: root/servers/rendering_server.cpp
Commit message (Collapse)AuthorAgeFilesLines
...
* | | | Merge pull request #39965 from Calinou/tweak-sdfgi-defaultsRémi Verschelde2022-02-101-3/+3
|\ \ \ \
| * | | | Tweak default SDFGI settings for better qualityHugo Locurcio2022-02-061-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - Enable Read Sky Light to get proper outdoors lighting out of the box. - Set bounce feedback to 0.5 by default to get a better quality result. - Higher values may cause infinite feedback with bright surfaces. - Increase the number of frames to converge to improve quality at the cost of latency. Most scenes are fairly static after all. - Use 75% Y scale by default as most scenes are not highly vertical. - Reorder the Y scale enum to go from the lowest Y scale to the highest. Also rename the "Disabled" setting to "100%" for clarity.
* | | | | Fix BLEND_SHAPE_MASKreduz2022-02-081-1/+1
|/ / / / | | | | | | | | | | | | | | | | * Should now be correct * Supersedes 53738
* | | | Merge pull request #54574 from Ansraer/glow_mapRémi Verschelde2022-01-261-1/+1
|\ \ \ \
| * | | | add support for glow mapsAnsraer2022-01-201-1/+1
| | | | |
* | | | | Rename or refactor macros to avoid leading underscoresOmar Polo2022-01-201-6/+7
| | | | | | | | | | | | | | | | | | | | | | | | | These are not used consistently and some can conflict with system-specific defines. While here, also delete some unused macros.
* | | | | Merge pull request #55360 from Calinou/rename-bake-mode-propertiesRémi Verschelde2022-01-201-1/+1
|\ \ \ \ \ | |/ / / / |/| | | |
| * | | | Rename and reorder bake mode properties for consistencyHugo Locurcio2021-12-141-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The order now goes from least to most computationally expensive: - Disabled - Static - Dynamic
* | | | | Revert "Add new scaling modes for splash screen"Rémi Verschelde2022-01-191-8/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit fcc9f5ce396ff921ed8253f657a8c9c38e7a878d. The feature is good but the implementation still needs more work. A new PR will be made with a rework of this commit.
* | | | | Add new scaling modes for splash screenSamuel Pedrajas2022-01-181-1/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Removes the `fullsize` option which is superseded by `stretch_mode`. Co-authored-by: Rémi Verschelde <rverschelde@gmail.com>
* | | | | Merge pull request #56761 from Calinou/sdfgi-allow-any-number-of-cascadesRémi Verschelde2022-01-181-4/+0
|\ \ \ \ \
| * | | | | Allow using between 1 and 8 cascades for SDFGIHugo Locurcio2022-01-171-4/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This provides more flexibility between performance and quality adjustments, especially when using SDFGI for small-scale levels (which can be useful for procedurally generated scenes).
* | | | | | Remove support for PVRTC texture encoding and decodingHugo Locurcio2022-01-141-1/+0
|/ / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | On the only platform where PVRTC is supported (iOS), ETC2 generally supersedes PVRTC in every possible way. The increased memory usage is not really a problem thanks to modern iOS' devices processing power being higher than its Android counterparts.
* | | | | Optimize include files to improve `shader_language.h` compilation speedYuri Roubinsky2022-01-121-1/+2
| | | | |
* | | | | Merge pull request #56170 from Calinou/renderingserver-expose-gi-half-resolutionRémi Verschelde2022-01-071-0/+4
|\ \ \ \ \
| * | | | | Expose RenderingServer GI half resolution setter methodHugo Locurcio2021-12-221-0/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is required for projects to be able to change the GI half-resolution setting at run-time.
* | | | | | Expose RenderingServer SSIL quality setter methodsHugo Locurcio2022-01-061-0/+7
| | | | | | | | | | | | | | | | | | | | | | | | This allows changing SSIL quality at run-time in a project.
* | | | | | Added material_overlay property to MeshInstance3DFernando Cosentino2022-01-051-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Applying overlay materials into multi-surface meshes currently requires adding a next pass material to all the surfaces, which might be cumbersome when the material is to be applied to a range of different geometries. This also makes it not trivial to use AnimationPlayer to control the material in case of visual effects. The material_override property is not an option as it works replacing the active material for the surfaces, not adding a new pass. This commit adds the material_overlay property to GeometryInstance3D (and therefore MeshInstance3D), having the same reach as material_override (that is, all surfaces) but adding a new material pass on top of the active materials, instead of replacing them.
* | | | | | Merge pull request #55790 from Calinou/renderingserver-add-device-type-getterRémi Verschelde2022-01-041-0/+1
|\ \ \ \ \ \ | | | | | | | | | | | | | | Add `RenderingServer.get_video_adapter_type()` method
| * | | | | | Add `RenderingServer.get_video_adapter_type()` methodHugo Locurcio2021-12-101-0/+1
| |/ / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This can be used to distinguish between integrated, dedicated, virtual and software-emulated GPUs. This in turn can be used to automatically adjust graphics settings, or warn users about features that may run slowly on their hardware.
* | | | | | Merge pull request #56305 from Calinou/rename-lod-thresholdRémi Verschelde2022-01-041-1/+1
|\ \ \ \ \ \
| * | | | | | Rename Lod Threshold to Mesh Lod ThresholdHugo Locurcio2021-12-291-1/+1
| |/ / / / / | | | | | | | | | | | | | | | | | | | | | | | | This makes it more obvious that the setting only affects mesh LOD, not manual (H)LOD achieved using visibility ranges.
* | | | | | Merge pull request #55386 from Calinou/allow-disable-depth-prepassRémi Verschelde2022-01-041-1/+0
|\ \ \ \ \ \
| * | | | | | Allow disabling the depth prepass in the Vulkan Clustered backendHugo Locurcio2021-11-271-1/+0
| | |/ / / / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In scenes that have little to no overdraw, disabling the depth prepass can give a small performance boost. Nonetheless, in most other scenarios, the depth prepass should be left enabled as it improves performance significantly.
* | | | | | Merge pull request #51206 from clayjohn/Vulkan-ASSGIRémi Verschelde2022-01-041-0/+13
|\ \ \ \ \ \
| * | | | | | Added SSIL post processing effectclayjohn2021-11-061-0/+13
| | | | | | |
* | | | | | | Update copyright statements to 2022Rémi Verschelde2022-01-031-2/+2
| |_|/ / / / |/| | | | | | | | | | | | | | | | | Happy new year to the wonderful Godot community!
* | | | | | Merge pull request #35901 from nathanfranke/pool-byte-array-subarray-exclusiveRémi Verschelde2021-12-071-1/+1
|\ \ \ \ \ \
| * | | | | | PackedByteArray, Array slice end exclusive, rename subarray to sliceNathan Franke2021-11-261-1/+1
| | |/ / / / | |/| | | |
* / | | | | Fixed minimum size of aabb in ImmediateMesh to draw only one vertexSilc 'Tokage' Renew2021-12-021-32/+30
|/ / / / /
* | | | | Implemented AMD's FSR as a computer shader for upscaling 3D scenesJe06jm2021-11-231-7/+31
| | | | |
* | | | | Fix default_texture_param in shader pipeline to support uniform arraysYuri Roubinsky2021-11-121-2/+2
| |/ / / |/| | |
* | | | Use Callable in RS::request_frame_drawn_callbackBrian Semrau2021-11-051-1/+1
|/ / /
* | | Use OpenGL 3.3 core profile instead of compatibility profileClay John2021-10-311-0/+37
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - Rename OpenGL to GLES3 in the source code per community feedback. - The renderer is still exposed as "OpenGL 3" to the user. - Hide renderer selection dropdown until OpenGL support is more mature. - The renderer can still be changed in the Project Settings or using the `--rendering-driver opengl` command line argument. - Remove commented out exporter code. - Remove some OpenGL/DisplayServer-related debugging prints.
* | | Addition of FogVolumes, FogShaders, FogMaterial, and overhaul of VolumetricFogclayjohn2021-10-281-3/+17
| | | | | | | | | | | | Co-authored-by: Brian Semrau <brian.semrau@gmail.com>
* | | Implement distance fade and transparencyJFonS2021-10-251-1/+6
|/ / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The built-in ALPHA in spatial shaders comes pre-set with a per-instance transparency value. Multiply by it if you want to keep it. The transparency value of any given GeometryInstance3D is affected by: - Its new "transparency" property. - Its own visiblity range when the new "visibility_range_fade_mode" property is set to "Self". - Its parent visibility range when the parent's fade mode is set to "Dependencies". The "Self" mode will fade-out the instance when reaching the visibility range limits, while the "Dependencies" mode will fade-in its dependencies. Per-instance transparency is only implemented in the forward clustered renderer, support for mobile should be added in the future. Co-authored-by: reduz <reduzio@gmail.com>
* | Merge pull request #53992 from Calinou/hard-shadow-mapping-allow-ditheringRémi Verschelde2021-10-221-4/+5
|\ \
| * | Add Soft Very Low shadow quality mode for 3DHugo Locurcio2021-10-211-4/+5
| | | | | | | | | | | | | | | | | | | | | This can be used to improve 3D shadow rendering quality at little performance cost. Unlike the existing Hard setting which is limited to variable shadow blur only, it works with both fixed blur and variable blur.
* | | doctool: Fix differences between headless and Vulkan rendering backendsRémi Verschelde2021-10-201-0/+6
|/ / | | | | | | Fixes #53913.
* | Fix auto LOD generation for blendshapes.Joan Fons2021-10-091-1/+1
| |
* | Allow any floating-point value as a 3D rendering scale optionHugo Locurcio2021-10-081-9/+3
| | | | | | | | | | | | | | This allows for finer control over 3D rendering resolution. Supersampling can also be performed by setting a 3D rendering resolution above 1.0, which is useful for offline rendering or for very high-end GPUs.
* | Remove unimplemented `Environment.ambient_light_occlusion_color` propertyHugo Locurcio2021-10-071-1/+1
| | | | | | | | | | | | | | This property was intended to provide a way to have SSAO or VoxelGI ambient occlusion with a color other than black. However, it was dropped during the Vulkan renderer development due to the performance overhead it caused when the feature wasn't used.
* | GLTF for game templates.K. S. Ernest (iFire) Lee2021-10-031-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | Convert GLTF Document to use ImporterMeshInstance3D. Add a GLTFDocument extension list and an extension for converting the importer mesh instance 3d to mesh instance 3d. Use GLTF module when the editor tools are disabled. Modified the render server to be less restrictive on matching blend arrays and have more logging. Misc bugs with multimesh. Always index the meshes.
* | Implement TextServer GDExtension interface, remove TextServer GDNative ↵bruvzg2021-10-011-0/+1
| | | | | | | | interface.
* | Merge pull request #49063 from Calinou/remove-16x-msaaRémi Verschelde2021-09-131-1/+0
|\ \ | | | | | | Remove 16× MSAA support due to driver bugs and low performance
| * | Remove 16× MSAA support due to driver bugs and low performanceHugo Locurcio2021-08-251-1/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In the `master` branch, 16× MSAA caused the entire system to freeze on NVIDIA GPUs. This is likely caused by graphics drivers not actually implementing 16× MSAA, but combining 8× MSAA with 2× SSAA instead. On top of that, modern shader complexity makes 16× MSAA very difficult to use while keeping a good framerate. 8× MSAA is hard enough to use as it is.
* | | 8 uvs for glTF2, URI decode and Vertex Custom api.Lyuma2021-09-101-4/+13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add glTF2 uri decode for paths. Add vertex custom apis. Add scene importer api. Change Color to float; add support for float-based custom channels in SurfaceTool and EditorSceneImporterMesh Co-authored-by: darth negative hunter <thenegativehunter2@users.noreply.github.com>
* | | Expose Vulkan internal values for access from extensionsBastiaan Olij2021-09-091-0/+6
| | |
* | | Optionally scale 3D render contentBastiaan Olij2021-08-261-0/+13
|/ /
* | Use the Unicode multiplication symbol where relevantHugo Locurcio2021-08-121-1/+1
| |