summaryrefslogtreecommitdiff
path: root/servers/rendering/renderer_rd
AgeCommit message (Collapse)Author
2021-06-30Deprecate ImmediateGeometryreduz
* Removed entirely from RenderingServer. * Replaced by ImmediateMesh resource. * ImmediateMesh replaces ImmediateGeometry, but could use more optimization in the future. * Sprite3D and AnimatedSprite3D work again, ported from Godot 3.x (though a lot of work was needed to adapt them to Godot 4). * RootMotionView works again. * Polygon3D editor works again.
2021-06-29Improve RID_Owner memory usagereduz
* Ability to allocate empty objects in RID_Owner, so RID_PtrOwner is not needed in most cases. * Improves cache usage, as objects are now allocated together * Should improve performance in 2D rendering
2021-06-29Fix non uniform scaling in 3D objectsreduz
* Flag was there, but not implemented. * Fixed issue with base flags not being initialized.
2021-06-26Move render_sky logic from effects into our sky object, and some minor cleanupBastiaan Olij
2021-06-25Merge pull request #49885 from reduz/implement-render-pass-supportRémi Verschelde
Implement Framebuffer Subpass support
2021-06-24Implement Framebuffer Subpass supportreduz
* Required for better optimizing mobile platforms * Will be used by the Vulkan mobile renderer.
2021-06-24Merge pull request #49826 from groud/fix_mesh_transformRémi Verschelde
Keep the drawing transform when drawing meshing in CanvasItem
2021-06-23Fixes Mesh2D drawn without modulationGilles Roudière
2021-06-22Keep the drawing transform when drawing meshing in CanvasItemGilles Roudière
2021-06-19Rename `instance()`->`instantiate()` when it's a verbLightning_A
2021-06-17Implement animation slice drawing in CanvasItemreduz
* Added a function to ignore subsequent commands if they don't fall within the slice. * This will be used by the new TileMap to properly provide animated tiles.
2021-06-16Refactor VisibilityNotifier3Dreduz
* This is the 3D counterpart to #49632 * Implemented a bit different as 3D works using instancing After merged, both 2D and 3D classes will most likely be renamed in a separate PR to DisplayNotifier2D/3D.
2021-06-15Merge pull request #49630 from kodiwills/fix-custom-irradiance-typoRémi Verschelde
Fix typo in `CUSTOM_IRRADIANCE` calculations
2021-06-15Fix typo in CUSTOM_IRRADIANCE calculationsKodi
2021-06-14Merge pull request #49584 from timothyqiu/shader-data-null-checkRémi Verschelde
Add missing null check for ShaderData
2021-06-14Merge pull request #49576 from clayjohn/VULKAN-SSAO-uniform-setsRémi Verschelde
Store SSAO uniform sets per viewport
2021-06-14Merge pull request #49585 from timothyqiu/oh-unsignedRémi Verschelde
Fix invalid read when using MultiMesh
2021-06-14Fix invalid read when using MultiMeshHaoyu Qiu
2021-06-14Add missing null check for ShaderDataHaoyu Qiu
2021-06-14Fixed error spam when XR mode is not enabled and a missed setting renameBastiaan Olij
2021-06-13Store SSAO uniform sets per viewportclayjohn
2021-06-13Add stereoscopic rendering through multiviewBastiaan Olij
2021-06-12Make shader compiler again after roughness limiter fixreduz
Fix shader compilation error after merging #49549
2021-06-12Merge pull request #49549 from clayjohn/VULKAN-roughness-limiterJuan Linietsky
Fix roughness limiter derivative
2021-06-12Fix roughness limiter derivativeclayjohn
2021-06-12Fix VoxelGI (works again).reduz
It was broken due to #46046, this makes it work again.
2021-06-12Merge pull request #49520 from pfertyk/issue-46278-empty-texture-crashes-godotRémi Verschelde
Validate texture in RendererStorageRD::free
2021-06-11Validate texture in RendererStorageRD::freePaweł Fertyk
2021-06-11Core: Move DirAccess and FileAccess to `core/io`Rémi Verschelde
File handling APIs are typically considered part of I/O, and we did have most `FileAccess` implementations in `core/io` already.
2021-06-09Fix shader compilation with render_mode: `specular_phong`Yuri Roubinsky
2021-06-08Removes deleted OrenNayar mode from shaders and materialsYuri Roubinsky
2021-06-05Rename GI Classesreduz
* GIProbe is now VoxelGI * BakedLightmap is now LightmapGI As godot adds more ways to provide GI (as an example, SDFGI in 4.0), the different techniques (which have different pros/cons) need to be properly named to avoid confusion.
2021-06-04Rename Quat to QuaternionMarcel Admiraal
2021-06-03Rename Transform to Transform3D in coreAaron Franke
2021-05-31Implement shader cachingreduz
* Shader compilation is now cached. Subsequent loads take less than a millisecond. * Improved game, editor and project manager startup time. * Editor uses .godot/shader_cache to store shaders. * Game uses user://shader_cache * Project manager uses $config_dir/shader_cache * Options to tweak shader caching in project settings. * Editor path configuration moved from EditorSettings to new class, EditorPaths, so it can be available early on (before shaders are compiled). * Reworked ShaderCompilerRD to ensure deterministic shader code creation (else shader may change and cache will be invalidated). * Added shader compression with SMOLV: https://github.com/aras-p/smol-v
2021-05-25Merge pull request #48837 from Soupstraw/shader-piRémi Verschelde
Added constants PI, TAU and E to the shader language
2021-05-25Merge pull request #48933 from Chaosus/shader_array_paramsRémi Verschelde
Allow shader arrays to be passed as parameters and return value in functions
2021-05-25Added constants PI, TAU and E to the shader languageJoosep Jääger
2021-05-23Support for 2D particles to collide against SDFreduz
-Added SDF collision support for 2D particles -Changed the SDF generation to be fully signed
2021-05-22Allow shader arrays to be passed as parameters and return valueYuri Roubinsky
2021-05-20Fix instance uniform typoWinston Hartnett
2021-05-20Fix typos with codespellRémi Verschelde
Using codespell 2.0.0. Method: ``` $ cat > ../godot-word-whitelist.txt << EOF ang curvelinear dof doubleclick fave findn GIRD leapyear lod merchantibility nd numer ois ony que seeked synching te uint unselect webp EOF $ codespell -w -q 3 -I ../godot-word-whitelist.txt --skip="./thirdparty,*.po" $ git diff // undo unwanted changes ```
2021-05-19Implements length() shader function for arrays in structsYuri Roubinsky
2021-05-12Implementing blit shader with versionsBastiaan Olij
2021-05-12Merge pull request #48472 from BastiaanOlij/render_stateRémi Verschelde
Make better use of our render_state struct
2021-05-11Fixes missng 2D engine bitsreduz
-Mesh2D now works -MultiMesh2D now works -Polygon2D now works -Added hooks for processing 2D particles -Skeleton2D now works 2D particles still not working, but stuff needed for it is now implemented.
2021-05-10Split RenderDataRD struct from RenderState struct to simplify passing our ↵Bastiaan Olij
render data around the renderer.
2021-05-05Merge pull request #48435 from BastiaanOlij/no_repeat_mobile_rendererRémi Verschelde
Remove repeat from forward mobile renderer
2021-05-04Remove repeat from forward mobile rendererBastiaan Olij
2021-05-03Assorted fixes to UV unwrapping and GPU lightmapperjfons
Various fixes to UV2 unwrapping and the GPU lightmapper. Listed here for context in case of git blame/bisect: * Fix UV2 unwrapping on import, also cleaned up the unwrap cache code. * Fix saving of RGBA images in EXR format. * Fixes to the GPU lightmapper: - Added padding between atlas elements, avoids bleeding. - Remove old SDF generation code. - Fix baked attenuation for Omni/Spot lights. - Fix baking of material properties onto UV2 (wireframe was wrongly used before). - Disable statically baked lights for objects that have a lightmap texture to avoid applying the same light twice. - Fix lightmap pairing in RendererSceneCull. - Fix UV2 array generated from `RenderingServer::mesh_surface_get_arrays()`. - Port autoexposure fix for OIDN from 3.x. - Save debug textures as EXR when using floating point format.