summaryrefslogtreecommitdiffstats
path: root/servers/rendering/renderer_rd/renderer_canvas_render_rd.cpp
Commit message (Collapse)AuthorAgeFilesLines
* Fix Parallax2D repeats being not relative to its transformkleonc2024-08-191-17/+16
|
* Linearize color if HDR 2D is onFeiyue Zhang2024-07-241-4/+9
|
* Fix LCD font AA modulation in RendererRD.bruvzg2024-07-081-6/+6
|
* Fixes SDF Collision Enable/Disablecosparks2024-04-221-1/+1
| | | | | - sets LightOccluderInstance field when sdf collision is updated - adds check for light occluder sdf_collision field in 2d renderers
* Fixed Timestep Interpolation (2D)Ricardo Buring2024-03-231-2/+11
| | | | | | | Adds fixed timestep interpolation to the rendering server (2D only). Switchable on and off with a project setting (default is off). Co-authored-by: lawnjelly <lawnjelly@gmail.com>
* Add new Parallax2D nodemarkdibarry2024-03-031-2/+23
|
* Merge pull request #86564 from Giwayume/feature/canvas-item-shader-custom-dataRémi Verschelde2024-02-081-0/+5
|\ | | | | | | Support CUSTOM shader attributes in 2D
| * Add custom shader attributes to Canvas Item ShadersGiwayume2024-01-231-0/+5
| |
* | Clean up outdated `USE_LIGHT_SHADER_CODE` usagejsjtxietian2024-01-241-1/+0
| |
* | Fix incorrect mapping of initial action as clear region continue to clear.Dario2024-01-091-2/+1
| |
* | Acyclic Command Graph for RenderingDevice.Dario2024-01-081-7/+7
|/ | | | Adds a new system to automatically reorder commands, perform layout transitions and insert synchronization barriers based on the commands issued to RenderingDevice.
* Merge pull request #85811 from clayjohn/2D-render-infoRémi Verschelde2023-12-121-8/+52
|\ | | | | | | Implement render info counters for the 2D renderer
| * Implement render info counters for the 2D rendererclayjohn2023-12-061-8/+52
| | | | | | | | This provides information for the debug monitors
* | Fix CanvasOcclusionShaderRD format error with double precision build.bruvzg2023-12-061-8/+29
|/
* Ensure 2D MSAA resolve is performed when 3D content but no 2D content in sceneBastiaan Olij2023-11-161-0/+1
|
* Add property hint for 2D shadow size project settingHugo Locurcio2023-10-221-1/+1
| | | | | | | | Previously, it was possible to use zero or negative values, which are invalid. This also prevents crashing the engine by setting a shadow size of 0 or lower from a script.
* Merge pull request #79169 from reduz/debug-canvas-item-redrawRémi Verschelde2023-10-111-0/+47
|\ | | | | Debug CanvasItem redraw
| * Debug CanvasItem redrawJuan Linietsky2023-08-281-0/+47
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | I wanted to add this tool for years and always forget. This command line option: ``` $ godot.exe -e --debug-canvas-item-redraw ``` Allows to see when a canvas item is redrawn. This helps find out if something in the UI is refreshing in a way it should not. Examples as such: * Signals causing more of the UI to redraw. * Container resizing causes more UI elements to redraw. * Something using a timer is redrawing all time time, which can go unnoticed. To my surprise, the editor UI is redrawing very efficiently. There is some weird stuff with the scene tabs, redrawing when the inspector changes but most things for the most part are fine.
* | Replace `sanity` with `safety` for checksA Thousand Ships2023-10-081-1/+1
| |
* | Vertex and attribute compression to reduce the size of the vertex format.clayjohn2023-10-051-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | This allows Godot to automatically compress meshes to save a lot of bandwidth. In general, this requires no interaction from the user and should result in no noticable quality loss. This scheme is not backwards compatible, so we have provided an upgrade mechanism, and a mesh versioning mechanism. Existing meshes can still be used as a result, but users can get a performance boost by reimporting assets.
* | [Servers] Replace `ERR_FAIL_COND` with `ERR_FAIL_NULL` where applicableA Thousand Ships2023-09-251-7/+7
| |
* | Merge pull request #81350 from DarioSamo/mipmap-biasRémi Verschelde2023-09-221-1/+1
|\ \ | | | | | | | | | Fix mipmap bias behavior by refactoring how samplers are created by Material Storage.
| * | Fix mipmap bias behavior by refactoring how samplers are created by Material ↵Dario2023-09-061-1/+1
| | | | | | | | | | | | | | | | | | Storage. Introduces a new structure to store samplers created with certain parameters instead of storing a 'custom' set of samplers. Allows viewports to correctly configure the mipmap bias and use it when rendering the scene.
* | | Merge pull request #81160 from paddy-exe/canvas-uv-world-spaceRémi Verschelde2023-09-191-0/+1
|\ \ \ | |/ / |/| | | | | Add render mode to use world coordinates in canvas item shader
| * | Add option to use world coordinates in canvas item shaderPatrick2023-08-301-0/+1
| |/ | | | | | | By using the render mode `world_vertex_coords` you can automatically use the vertex coordinates in world space
* / Use 16-bit index buffers instead of 32 when unnecessaryMatias N. Goldberg2023-09-031-9/+9
|/
* Merge pull request #80323 from garychia/canvas_point_sizeRémi Verschelde2023-08-211-1/+2
|\ | | | | | | Ensure `POINT_SIZE` takes effect in the canvas item shader
| * Ensure POINT_SIZE takes effectChia-Hsiang Cheng2023-08-061-1/+2
| |
* | Add motion vector support for animated surfaces like skeletons or blend shapes.Dario2023-08-161-2/+2
| | | | | | | | Extends mesh instances that required custom vertex buffers to create two alternating buffers that are written to and binds them to use them as the previous vertex buffer when generating motion vectors.
* | Fallback to linear color texture when using 2D HDR and MSDF fontclayjohn2023-08-151-3/+3
| |
* | Add option to enable HDR rendering in 2Dclayjohn2023-08-071-21/+52
|/ | | | | | | This is needed to allow 2D to fully make use of 3D effects (e.g. glow), and can be used to substantially improve quality of 2D rendering at the cost of performance Additionally, the 2D rendering pipeline is done in linear space (we skip linear_to_srgb conversion in 3D tonemapping) so the entire Viewport can be kept linear. This is necessary for proper HDR screen support in the future.
* Merge pull request #77740 from ChibiDenDen/simplify_vulkanYuri Sizov2023-07-121-24/+4
|\ | | | | | | Replace sampler arrays with constant sampler elements, simplify and reuse code for all shaders
| * replace sampler arrays with constant sampler elementsChibiDenDen2023-06-221-24/+4
| |
* | Merge pull request #75181 from dalexeev/fix-light-only-modeYuri Sizov2023-05-271-2/+2
|\ \ | |/ |/| Fix "Light Only" mode of `CanvasItemMaterial`
| * Fix "Light Only" mode of `CanvasItemMaterial`Danil Alexeev2023-05-131-2/+2
| |
* | Changed Subtract blend mode of Forward+ and Mobile renderers to match ↵Allen Pestaluky2023-05-261-2/+2
|/ | | | | | | | behaviour of the Godot 3 and Compatibility renderers The OpenGL implementation has used GL_FUNC_REVERSE_SUBTRACT for a long time, but the new RenderingDevice abstraction used by the Vulkan renderers had been mistakenly set to BLEND_OP_SUBTRACT instead of BLEND_OP_REVERSE_SUBTRACT. Fixes #77448
* Set value of line_point_count outside of initializationJames Christie2023-03-161-2/+3
|
* Fixes a canvas item set to clip children being drawn as black if no children ↵SlugFiller2023-03-071-10/+18
| | | | are visible
* Merge pull request #73478 from NewDefectus/masterRémi Verschelde2023-02-211-2/+1
|\ | | | | | | Use the original canvas to calculate light positioning
| * Use the original canvas to calculate light positioningAlon Ran2023-02-211-2/+1
| |
* | Forbid passing multiview sampler to the custom function in shadersYuri Rubinsky2023-02-211-1/+1
|/
* Avoid shading CanvasGroup nodes twiceclayjohn2023-02-031-0/+2
|
* Avoid crash when CanvasTexture used with light decal atlasclayjohn2023-01-301-0/+3
| | | | The decal atlas is used for Light2Ds, decals, and Light3Ds
* Automatically transform Skeleton2D calculations so pivots are not neededclayjohn2023-01-271-0/+1
|
* Stop incrementing light_count once max number of lights are reached in 2D ↵clayjohn2023-01-201-1/+1
| | | | canvas renderer
* Remove SCREEN_TEXTURE, DEPTH_TEXTURE, and NORMAL_ROUGHNESS_TEXTUREclayjohn2023-01-181-6/+7
| | | | in favour of texture hints
* fix normal map not flipping in sprite2Djainl28patel2023-01-141-0/+2
|
* 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".
* Avoid updating particles during 2D renderingclayjohn2022-12-221-1/+1
| | | | In 2D the particle uniform set isn't obtained until the render pass. So in 2D just avoid rendering if not updated yet.
* Implement render_target_was_used API so that Viewports can properly check if ↵clayjohn2022-12-161-0/+1
| | | | | | they have been used. For the RD renderer, this does not work for Viewports used in scene shaders yet