Age | Commit message (Collapse) | Author |
|
Improve behaviour of clip_children by clipping to parent alpha value but still retaining parent color
|
|
Fix drawing of 2D primitives in OpenGL3 renderer
|
|
Previously the wrong vertices were used when assembling the second triangle
of a quad
|
|
objects not drawing in the GLES3 backend.
Issue came from not binding a light UBO when using the DISABLE_LIGHTING
code path
|
|
|
|
to parent alpha value, but still retaining
parent color
|
|
Add 2D lights to OpenGL3 canvas renderer
|
|
This is an initial implementation using the same single-pass approach as the RenderingDevice.
|
|
This avoids an issue where having multiple CanvasGroups overlap
would create a weird artifact
|
|
This removes the countless small UBO writes we had before
and replaces them with a single large write per render pass.
This results in much faster rendering on low-end devices
but improves speed on all devices.
|
|
|
|
Fixes include using proper depth buffer format in 3D (this had previously been fixed already but the changes were lost in a rebase), Remove unused lighting and shadowing code in 2D, and update 2D UBOs using glBufferSubData so that they remain the appropriate size.
|
|
|
|
Also rename export name from "HTML5" to "Web".
|
|
|
|
Add shader uniform hints for screen textures
|
|
filter and repeat modes.
At this time, it works best in the Vulkan Renderers as they support using multiple samplers with the same texture.
In GLES3 this feature really only allows you to use the screen texture without mipmaps if you want to save the cost of generating them.
|
|
|
|
|
|
The `global_shader_uniform` name is longer, but it makes it much
easier to find the methods when searching in the class reference.
|
|
bluenote10/feature/rename_translated_to_translated_local
|
|
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.
|
|
|
|
Split FOG
Split visibility notifier
Final cleanup of storage classes
|
|
|
|
|
|
|
|
As well as significant consequent cleanup in the RenderTarget, Texture, and Canvas renderer code
|
|
|
|
|
|
|
|
|
|
Convert method signature parameters to const where it is possible
# Conflicts:
# drivers/gles3/rasterizer_canvas_gles3.cpp
# drivers/gles3/rasterizer_canvas_gles3.h
# editor/plugins/animation_state_machine_editor.cpp
# editor/plugins/animation_state_machine_editor.h
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Split canvas_texture_storage and texture_storage from render_storage class
|
|
Changes `MAX`, `MIN`, `ABS`, `CLAMP` and `SIGN`.
|
|
|
|
|
|
Uses versions and specializations (more similar to RenderingDevice version)
|
|
Happy new year to the wonderful Godot community!
|
|
The word "anisotropy" is used in full form in BaseMaterial3D's
anisotropy-related properties.
|
|
- 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.
|
|
Due to the port to Vulkan and complete redesign of the rendering backend,
the `drivers/gles3` code is no longer usable in this state and is not
planned to be ported to the new architecture.
The GLES2 backend is kept (while still disabled and non-working) as it
will eventually be ported to serve as the low-end renderer for Godot 4.0.
Some GLES3 features might be selectively ported to the updated GLES2
backend if there's a need for them, and extensions we can use for that.
So long, OpenGL driver bugs!
|
|
|
|
* Implements a growing chunked allocator
* Removed redudant methods get and getptr, only getornull is supported now.
|