| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
| |
|
| |
|
|
|
|
|
| |
- sets LightOccluderInstance field when sdf collision is updated
- adds check for light occluder sdf_collision field in 2d renderers
|
|
|
|
|
|
|
| |
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>
|
| |
|
|\
| |
| |
| | |
Support CUSTOM shader attributes in 2D
|
| | |
|
| | |
|
| | |
|
|/
|
|
| |
Adds a new system to automatically reorder commands, perform layout transitions and insert synchronization barriers based on the commands issued to RenderingDevice.
|
|\
| |
| |
| | |
Implement render info counters for the 2D renderer
|
| |
| |
| |
| | |
This provides information for the debug monitors
|
|/ |
|
| |
|
|
|
|
|
|
|
|
| |
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.
|
|\
| |
| | |
Debug CanvasItem redraw
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
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.
|
| | |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
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.
|
| | |
|
|\ \
| | |
| | |
| | | |
Fix mipmap bias behavior by refactoring how samplers are created by Material Storage.
|
| | |
| | |
| | |
| | |
| | |
| | | |
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.
|
|\ \ \
| |/ /
|/| |
| | | |
Add render mode to use world coordinates in canvas item shader
|
| |/
| |
| |
| | |
By using the render mode `world_vertex_coords` you can automatically use the vertex coordinates in world space
|
|/ |
|
|\
| |
| |
| | |
Ensure `POINT_SIZE` takes effect in the canvas item shader
|
| | |
|
| |
| |
| |
| | |
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.
|
| | |
|
|/
|
|
|
|
|
| |
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.
|
|\
| |
| |
| | |
Replace sampler arrays with constant sampler elements, simplify and reuse code for all shaders
|
| | |
|
|\ \
| |/
|/| |
Fix "Light Only" mode of `CanvasItemMaterial`
|
| | |
|
|/
|
|
|
|
|
|
| |
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
|
| |
|
|
|
|
| |
are visible
|
|\
| |
| |
| | |
Use the original canvas to calculate light positioning
|
| | |
|
|/ |
|
| |
|
|
|
|
| |
The decal atlas is used for Light2Ds, decals, and Light3Ds
|
| |
|
|
|
|
| |
canvas renderer
|
|
|
|
| |
in favour of texture hints
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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".
|
|
|
|
| |
In 2D the particle uniform set isn't obtained until the render pass. So in 2D just avoid rendering if not updated yet.
|
|
|
|
|
|
| |
they have been used.
For the RD renderer, this does not work for Viewports used in scene shaders yet
|