summaryrefslogtreecommitdiff
path: root/drivers
AgeCommit message (Collapse)Author
2022-08-07Add a shadow opacity property to Light3DHugo Locurcio
This can be used to make shadows translucent for a specific light. The light distance fade system also uses this to smoothly fade the shadow when the light fade transition distance is greater than 0.
2022-08-06Merge pull request #63992 from qarmin/check_also_GLES3Rémi Verschelde
Test also GLES3 in CI
2022-08-06Check also GLES3 in CIRafał Mikrut
2022-08-06Merge pull request #62787 from RandomShaper/vk_object_nameRémi Verschelde
Set default resource names under pure debug in Vulkan RD
2022-08-05Merge pull request #63951 from reduz/framebuffer-cacheClay John
Add a Framebuffer cache
2022-08-05Add a Framebuffer cacheJuan Linietsky
Adds a FramebufferCache singletion that operates the same way as UniformSetCache. Allows creating framebuffers on the fly (and keep them cached if re-requested) such as: ```C++ RID fb = FramebufferCache::get_singleton()->get_cache(texture1,texture2); ```
2022-08-05[Net] IP uses print_verbose when getaddrinfo fails.Fabio Alessandrelli
Avoid spamming errors when network is disconnected. Returned address will be invalid, so it can be checked by the user via `ret.is_valid_ip_address`.
2022-08-04Rename shader parameter uniform setter/getter methods for consistencyHugo Locurcio
`shader_uniform` is now consistenly used across both per-shader and per-instance shader uniform methods. This makes methods easier to find in the class reference when looking for them.
2022-08-04Force disable S3TC support on Android/iOS since we don't handle itRémi Verschelde
Fixes #63909 for now. This could be improved in the future if we want to properly support S3TC on mobile.
2022-08-04Improve error message when the requested V-Sync mode cannot be usedHugo Locurcio
2022-08-02Merge pull request #49058 from madmiraal/add-override-fileaccessRémi Verschelde
Add override keywords to FileAccess and DirAccess derived classes
2022-08-02Add override keywords to DirAccess derived classesMarcel Admiraal
2022-08-02Add override keywords to FileAccess derived classesMarcel Admiraal
2022-08-02Add spatial built-ins (camera-pos, object-pos, camera-eye etc.)Patrick Exner
2022-08-02Merge pull request #51672 from Calinou/shader-add-hint-transparent-textureRémi Verschelde
Add `hint_transparent` to use a transparent black placeholder texture
2022-08-01Add `hint_transparent` to use a transparent black placeholder textureHugo Locurcio
This can be used in shaders to avoid the need to supply a transparent placeholder texture manually.
2022-08-01Fix various bugs in GLES3 renderer that stopped it from running on webclayjohn
2022-08-01Merge pull request #63766 from Chaosus/fix_shader_instance_uniformYuri Rubinsky
2022-08-01Fix passing values to the instance uniforms in the shaderYuri Rubinsky
2022-08-01Merge pull request #63761 from BastiaanOlij/gles3_scene_singleton_initRémi Verschelde
2022-08-01Initialise singleton in RendererSceneGLES3Bastiaan Olij
2022-08-01Merge pull request #63587 from clayjohn/specular-occlusionRémi Verschelde
Treat specular less than 0.02 as occlusion
2022-07-31Treat specular less than 0.02 as occlusionclayjohn
This is a very common hack used in almost all PBR renderers to allow removing specular contribution in dielectric materials
2022-07-29Merge pull request #61647 from KoBeWi/SaverResourceRémi Verschelde
2022-07-29Swap arguments of ResourceSaver.save()kobewi
2022-07-29fix 'Comparison result is always the same' warningsLinuxUserGD
2022-07-29Merge pull request #63527 from BastiaanOlij/rework_environmentRémi Verschelde
Restructure environment in render implementation
2022-07-29Restructure environment in render implementationBastiaan Olij
2022-07-28Merge pull request #59840 from Calinou/renderingserver-global-uniform-renameRémi Verschelde
2022-07-28Rename RenderingServer global shader uniform methods to be more explicitHugo Locurcio
The `global_shader_uniform` name is longer, but it makes it much easier to find the methods when searching in the class reference.
2022-07-28Allow changing mipmap LOD bias when FSR 1.0 scaling is not usedHugo Locurcio
Mipmap LOD bias can be useful to improve the appearance of distant textures without increasing anisotropic filtering (or in situations where anisotropic filtering is not effective). `fsr_mipmap_bias` was renamed to `texture_mipmap_bias` accordingly. The property hint now allows for greater precision as well.
2022-07-28Merge pull request #63571 from RandomShaper/conservative_validate_vrsRémi Verschelde
2022-07-28Improve handling of the format of the VRS imagePedro J. Estébanez
- Validate format conservatively. (This is to have VRS images created regardless whether VRS attachments are supported, which avoids errors in places where the code assumes such images were created on low-spec GPUs.) - Create a non-layered default VRS image, which is what Vulkan (and D3D12, by the way) expect.
2022-07-28Merge pull request #57698 from ↵Rémi Verschelde
bluenote10/feature/rename_translated_to_translated_local
2022-07-27Remove unintended string copiesPedro J. Estébanez
2022-07-27Merge pull request #63296 from RandomShaper/fix_vk_singleviewRémi Verschelde
2022-07-27Fill view and correlation masks correctly for single view in Vulkan RDPedro J. Estébanez
2022-07-27Merge pull request #63314 from RandomShaper/validate_vrs_formatRémi Verschelde
2022-07-27Merge pull request #62364 from clayjohn/GLES3-sky-optimizationRémi Verschelde
2022-07-27Merge pull request #63477 from Chaosus/shader_fix_fogRémi Verschelde
2022-07-27Merge pull request #63345 from BastiaanOlij/split_geometry_instanceRémi Verschelde
Cleanup RendererSceneRender::GeometryInstance
2022-07-27Fix `FOG` built-in in spatial/fragment shaderYuri Rubinsky
2022-07-27Change RendererSceneRender::GeometryInstance so more code is shared among ↵Bastiaan Olij
renderers
2022-07-26Merge pull request #63323 from RandomShaper/const_ref_capabilitiesRémi Verschelde
Avoid copies of structures when returning Vulkan capabilities
2022-07-26Implement shader uniform groups/subgroupsYuri Rubinsky
2022-07-25Code quality: Fix header guards consistencyRémi Verschelde
Adds `header_guards.sh` bash script, used in CI to validate future changes. Can be run locally to fix invalid header guards.
2022-07-23Implement Vector4, Vector4i, Projectionreduz
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.
2022-07-23Merge pull request #62513 from reduz/shader_preprocessor_remakeRémi Verschelde
2022-07-22Merge pull request #62478 from BastiaanOlij/split_effects_20220628Rémi Verschelde
2022-07-22Clean up Shader Preprocessorreduz
* Moved preprocessor to Shader and ShaderInclude * Clean up RenderingServer side * Preprocessor is separate from parser now, but it emits tokens with include location hints. * Improved ShaderEditor validation code * Added include file code completion * Added notification for all files affected by a broken include.