clayjohn
294f16c862
Consistently use system_fbo instead of binding 0 as it is needed for iOS devices
2024-02-25 13:52:41 -08:00
Bastiaan Olij
aa260e5f3d
Implement glow/bloom on compatibility renderer
2024-02-19 13:29:43 +11:00
Alula
ea229f5148
OpenGL: Implement 3D Texture support
2024-02-05 20:10:39 +01:00
Rémi Verschelde
a56dd6ca52
Merge pull request #86920 from griffinkh/build_warning_fix
...
Fix build warning with memset value being too large
2024-01-09 11:29:55 +01:00
Griffin Kroah-Hartman
b97cb5ec59
Fix build warning with memset value being too large
...
Should resolve issue #83342
2024-01-08 17:26:41 +01:00
Rémi Verschelde
774c4631fd
Merge pull request #84733 from clayjohn/GL-CanvasGroup-performance
...
Only copy the relevant portion of the screen when copying to backbuffer in Compatibility backend
2024-01-08 11:50:12 +01:00
Wilson E. Alvarez
a3cb1b096f
Add const references detected by clang-tidy
2023-12-16 13:36:44 -05:00
David Snopek
275c496bc8
Add MSAA support for WebXR
2023-12-11 09:01:24 -06:00
Bastiaan Olij
caddce14dd
Add 3D MSAA and scaling support to GLES3
2023-12-05 10:01:00 +11:00
Gabor Koncz
0198eedb06
Remove incorrect system_fbo overwrite
2023-11-16 01:56:20 +01:00
clayjohn
e69968b794
Only copy the relevant portion of the screen when copying to backbuffer in Compatibility backend
2023-11-11 00:17:26 +01:00
Rémi Verschelde
253711ec98
Merge pull request #82430 from RandomShaper/fix_gles3_tex_free
...
[GLES3] Avoid freeing proxy textures clearing onwer's data
2023-10-26 15:58:55 +02:00
Thaddeus Crews
9ee41c707e
Fix texture storage not assigning default scale
...
• Print errors if an invalid value is passed
2023-10-12 12:02:24 -05:00
SlugFiller
d468582ef8
Fix build on MSVC 2017
2023-09-27 19:49:59 +03:00
Pedro J. Estébanez
a67559931b
[GLES3] Avoid freeing proxy textures clearing onwer's data
2023-09-27 10:44:56 +02:00
bruvzg
1887a9df19
[macOS/Windows] Add optional ANGLE backed OpenGL renderer support. Add EGL_ANDROID_blob_cache caching.
...
Co-authored-by: Riteo <riteo@posteo.net>
2023-09-21 14:21:00 +03:00
A Thousand Ships
3565d1bf7e
[Drivers,Platform] Replace `ERR_FAIL_COND` with `ERR_FAIL_NULL` where applicable
2023-09-12 20:13:32 +02:00
Bastiaan Olij
63d6e9c557
Add custom texture create function
2023-07-26 20:46:34 +10:00
Yuri Sizov
a33b548092
Merge pull request #78168 from clayjohn/GLES3-gaussian-rt
...
Use Gaussian approximation for backbuffer mipmaps in GL Compatibility renderer
2023-07-12 15:08:57 +02:00
clayjohn
7c37a32897
Use a filter with mipmaps when initializing textures with mipmaps in GL Compatibility renderer
...
This works around a driver bug in some older devices and should be harmless on any spec-compliant device
2023-06-26 10:45:24 -07:00
clayjohn
cc89321c9c
Reset filter/repeat state of textures in GL Compatibility renderer when render target is cleared
2023-06-23 10:57:56 -07:00
Rémi Verschelde
cb73a6e9f9
Merge pull request #78490 from clayjohn/GLES3-particles-subemit
...
Add warnings and fallbacks for particles sub emitters when using the GL Compatibility rendering backend
2023-06-22 21:02:38 +02:00
Qiqi Wu
df740f6865
free color and depth texture after check framebuffer complete failed
2023-06-22 09:13:24 +08:00
clayjohn
8a5af8183a
Add warnings and fallbacks for particles sub emitters when using the GL Compatibility rendering backend
...
Co-authored-by: Hugo Locurcio <hugo.locurcio@hugo.pro>
2023-06-21 12:56:52 -07:00
Rémi Verschelde
9e81aeda33
Merge pull request #78287 from clayjohn/GLES3-texture-replace
...
Copy texture filter/repeat modes when replacing a texture in the GL Compatibility backend
2023-06-16 10:23:03 +02:00
Rémi Verschelde
1710a7d303
Merge pull request #78285 from clayjohn/GLES3-viewport-filter
...
Ensure filter/repeat is cached by Viewport texture in GL Compatibility renderer
2023-06-16 10:22:33 +02:00
clayjohn
36a005fafc
Add RENDERING_INFO parameters to GL Compatibility renderer
...
This also fixes RENDERING_INFO_TOTAL_PRIMITIVES_IN_FRAME for the RD renderers as it was incorrectly reporting vertex/index count at times
This also adds memory tracking to textures and buffers to catch memory leaks.
This also cleans up some memory leaks that the new system caught.
2023-06-16 09:10:00 +02:00
clayjohn
96b2743782
Ensure filter/repeat is cached by Viewport texture in GL Compatibility renderer
2023-06-15 13:08:55 -07:00
clayjohn
3e211b7f74
Copy texture filter/repeat modes when replacing a texture in the GL Compatibility backend
2023-06-15 13:06:42 -07:00
clayjohn
9721a27427
Use Gaussian approximation for backbuffer mipmaps in GL Compatibility renderer
2023-06-12 21:51:23 -07:00
clayjohn
05142b6228
Properly update array textures when using the OpenGL backend to avoid crash
2023-06-07 15:44:11 -07:00
patrickdown
391a1bf60e
Implemented texture_2D_layered_initialize
2023-05-27 12:53:59 -05:00
Bastiaan Olij
c328676d96
For GDExternal use, provides access to internal graphics handles for textures
2023-05-09 13:47:22 +10:00
Yuri Sizov
fe0949e950
Merge pull request #72361 from the-brickster/master
...
Incorporating the availability of screen and depth textures for the GLES3 backend
2023-03-27 16:24:01 +02:00
Bastiaan Olij
70dca9ff55
Merge duplicate rd_texture functions
2023-03-10 21:37:01 +11:00
clayjohn
84482ef90b
Avoid copying CanvasTexture when updating proxy
2023-03-07 12:48:32 -08:00
LandoUWB
98697b05d8
Incorporating the availability of screen and depth textures for the GLES3 backend
2023-02-16 21:18:58 -08:00
Rémi Verschelde
0668e0f5a9
Merge pull request #69001 from dzil123/fix_rendering_checks
...
Fix various missing rendering parameter checks
2023-02-13 21:07:05 +01:00
Rémi Verschelde
92f3725da8
Merge pull request #72474 from clayjohn/GL-leaky-tex
...
Avoid leaking texture->tex_id when clearing render targets
2023-02-01 07:32:05 +01:00
Rémi Verschelde
3eb1ac9fd2
Merge pull request #72075 from Maran23/extents-to-size
...
Replace Extents with Size in VoxelGI, ReflectionProbe, FogVolume, Decal and GPUParticles*3D
2023-02-01 07:30:09 +01:00
clayjohn
a919c6184e
Avoid leaking texture->tex_id when clearing render targets
2023-01-31 13:39:39 -08:00
Marius Hanl
a59819630d
Replace Extents with Size in VoxelGI, ReflectionProbe, FogVolume, Decal and GPUParticles*3D
...
- Extents are replaced by Size (Size is Extents * 2)
- The UI text displays 'Size'
- Snapping is adjusted to work with Size
- _set and _get handle extents for compatibility
Co-authored-by: ator-dev <dominic.codedeveloper@gmail.com>
2023-01-31 20:04:11 +01:00
Juan Linietsky
28f51ba547
Refactor high quality texture import
...
* Only two texture import modes for low/high quality now:
* S3TC/BPTC
* ETC2/ASTC
* Makes sense given this is the general preferred and most compatible combination in most platforms.
* Removed lossy_quality from VRAM texture compression options. It was unused everywhere.
* Added a new "high_quality" option to texture import. When enabled, it uses BPTC/ASTC (BC7/ASTC4x4) instead of S3TC/ETC2 (DXT1-5/ETC2,ETCA).
* Changed MacOS export settings so required texture formats depend on the architecture selected.
This solves the following problems:
* Makes it simpler to import textures as high quality, without having to worry about the specific format used.
* As the editor can now run on platforms such as web, Mac OS with Apple Silicion and Android, it should no longer be assumed that S3TC/BPTC is available by default for it.
2023-01-30 15:53:23 +01:00
bruvzg
1cc5524b81
[iOS] Restore OpenGLES3 renderer support.
2023-01-22 13:59:52 +02:00
clayjohn
49bebf2bfb
Sort decals and lights based on camera origin
...
Also implement sort_offset for decals
Co-authored-by: Hugo Locurcio <hugo.locurcio@hugo.pro>
2023-01-20 09:58:17 -08:00
clayjohn
eace1276a5
Decompress RA_AS_RG formats on Web platform in GLES3 renderer and disable texture swizzling
...
While using compressed formats is allowed, the RA_AS_RG formats need texture swizzling which is not available on web
2023-01-17 10:48:04 -08:00
rsjtdrjgfuzkfg
ebe1123532
OpenGL: Support FORMAT_{ETC2,DXT5}_RA_AS_RG
...
This commit adds support for FORMAT_EXT2_RA_AS_RG and
FORMAT_DXT5_RA_AS_RG with OpenGL, fixing VRAM compression with the
normal map option enabled.
2023-01-11 22:58:11 +01:00
Rémi Verschelde
d95794ec8a
One Copyright Update to rule them all
...
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".
2023-01-05 13:25:55 +01:00
clayjohn
1b330820bf
Implement render_target_was_used API so that Viewports can properly check if they have been used.
...
For the RD renderer, this does not work for Viewports used in scene shaders yet
2022-12-16 09:50:45 -08:00
David Snopek
310bf39cd3
Get WebXR fully working in Godot 4!
2022-12-01 21:46:30 -06:00