| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
|
| |
They are based on:
- Boolean arithmetic simplifications
- setting variables that are not accessed
- constant variables
|
| |
|
|
|
|
| |
Also clean up skeleton code in preparation for adding them to GLES3
Properly update Mesh2D AABBs when skeleton is updated
|
| |\
| |
| |
| | |
Fix draw_primitive ignoring texture argument
|
| | | |
|
| | |
| |
| |
| |
| |
| | |
This is an initial implementation based on the current RD implementation
Performance will improve later
|
| |\ \
| | |
| | | |
Improve behaviour of clip_children by clipping to parent alpha value but still retaining parent color
|
| | | | |
|
| | |/
| |
| |
| |
| | |
to parent alpha value, but still retaining
parent color
|
| |/ |
|
| |
|
|
|
|
|
|
| |
Replace all TODO uses of `#warning` by proper TODO comments, and will open
matching bug reports to keep track of them.
We don't have a great track record fixing TODOs, but I'd wager we're even
worse for fixing these "TODO #warning" so we should prohibit this usage.
|
| |
|
|
|
| |
This avoids an issue where having multiple CanvasGroups overlap
would create a weird artifact
|
| |\
| |
| |
| | |
Default CanvasItem materials to use sRGB space for uniform colors
|
| | |
| |
| |
| |
| | |
The 2D renderer in Godot is totally in sRGB space so it is appropriate
to keep 2D uniform colors in sRGB space
|
| |/ |
|
| |
|
|
|
| |
Expose LIGHT_ENERGY and LIGHT_IS_DIRECTIONAL.
Add LIGHT_DIRECTION
|
| | |
|
| | |
|
| | |
|
| |\
| |
| | |
Rename `str2var` to `str_to_var` and similar
|
| | |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Affects the Math class, a good chunk of the audio code, and a lot of other miscellaneous classes, too.
- `var2str` -> `var_to_str`
- `str2var` -> `str_to_var`
- `bytes2var` -> `bytes_to_var`
- `bytes2var_with_objects` -> `bytes_to_var_with_objects`
- `var2bytes` -> `var_to_bytes`
- `var2bytes_with_objects` -> `var_to_bytes_with_objects`
- `linear2db` -> `linear_to_db`
- `db2linear` -> `db_to_linear`
- `deg2rad` -> `deg_to_rad`
- `rad2deg` -> `rad_to_deg`
- `dict2inst` -> `dict_to_inst`
- `inst2dict` -> `inst_to_dict`
|
| |/ |
|
| |\
| |
| | |
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.
|
| |/
|
|
|
|
| |
`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.
|
| | |
|
| |
|
|
|
| |
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 shader uniform groups/subgroups
|
| | | | |
|
| |\ \ \
| |/ /
|/| | |
send FLAGS_TRANSPOSE_RECT to Vulkan
|
| | | | |
|
| | | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
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.
|
| |/ /
| |
| |
| |
| |
| |
| |
| |
| | |
* 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.
|
| |\ \ |
|
| | |/ |
|
| |/
|
|
| |
added usage defines for opengl3 renderer
|
| |
|
|
|
|
| |
Split FOG
Split visibility notifier
Final cleanup of storage classes
|
| |
|
|
|
|
|
|
|
|
|
|
| |
* Map is unnecessary and inefficient in almost every case.
* Replaced by the new HashMap.
* Renamed Map to RBMap and Set to RBSet for cases that still make sense
(order matters) but use is discouraged.
There were very few cases where replacing by HashMap was undesired because
keeping the key order was intended.
I tried to keep those (as RBMap) as much as possible, but might have missed
some. Review appreciated!
|
| |\
| |
| | |
Rename Transform2D and Basis `elements` to `columns` and `rows` respectively
|
| | | |
|
| | | |
|
| |/
|
|
|
|
|
|
|
|
|
| |
Didn't commit all the changes where it wants to initialize a struct
with `{}`. Should be reviewed in a separate PR.
Option `IgnoreArrays` enabled for now to be conservative, can be
disabled to see if it proposes more useful changes.
Also fixed manually a handful of other missing initializations / moved
some from constructors.
|
| |\ |
|
| | | |
|
| |/ |
|
| | |
|
| | |
|
| | |
|
| | |
|