Commit Graph

1267 Commits

Author SHA1 Message Date
MJacred d8caf0a726 Replace get_rendering_device() call to prevent crashes on OpenGL.
And make OpenGL video adapter info align with Vulkan.

(cherry picked from commit 2c5e2196bd)
2023-06-29 16:03:22 +02:00
Lyuma f745ef03a3 Fix AABB for unused bones
Fixes bug where bounding box of 1 unit was used in some skinned models and had wrong LODs.
(this could become very large if the mesh is scaled, such as FBX conversions)
Also fixes a mistake in calcualting bone index.

(cherry picked from commit 791d8001db)
2023-06-29 16:03:20 +02:00
Patrick 9d9b7511a0
Fix Rotation Issue with NODE_POSITION_VIEW Visual Shader Node
(cherry picked from commit e35bbd76a3)
2023-05-12 12:31:22 +02:00
ChibiDenDen bb785cfcc0
Fix gles3 rendering on android studio emulator
Use a temporary framebuffer for screen copy from rendertarget to screen.

This solves GLES3 rendering in android studio emulator (before this change there is just a black screen)

Based on discussion in:
https://github.com/godotengine/godot/issues/74828

(cherry picked from commit 5956aa1a6a)
2023-05-12 12:31:22 +02:00
Erik Johnson 410b503aac Translate inactive particles to -INF
(cherry picked from commit 6229c2a1f9)
2023-04-24 16:28:30 +02:00
clayjohn 27df8b93aa Properly calculate lifetime_split for particles
(cherry picked from commit f35ca4a9c7)
2023-04-24 16:28:28 +02:00
clayjohn d4c9ca3975 Ensure that depth write state is updated before transparent pass in OpenGL3 renderer
(cherry picked from commit ed0c378bda)
2023-04-24 16:28:27 +02:00
cody c1ec270b44 Fix "error X3708: continue cannot be used in a switch" in HTML export
(cherry picked from commit 5062df41a5)
2023-04-24 16:28:27 +02:00
clayjohn aeca8f07fa Check for instancing without relying on instance_count when drawing 2D meshes
This ensures that Particles and MultiMeshes still draw when instance_count is 1

(cherry picked from commit 579ca03e88)
2023-04-24 16:28:26 +02:00
LandoUWB ff125a638a Commit Fix for GLES3 point size not working
(cherry picked from commit f23f0a27c1)
2023-03-27 16:51:10 +02:00
LandoUWB 34a087cc2c Incorporating the availability of screen and depth textures for the GLES3 backend
(cherry picked from commit 98697b05d8)
2023-03-27 16:32:25 +02:00
SlugFiller d508d0a642 Fixes a canvas item set to clip children being drawn as black if no children are visible
(cherry picked from commit f25508befb)
2023-03-14 13:59:03 +01:00
SlugFiller 18bf2663f9 Fix AABB calculation for meshes using Skeleton2D
(cherry picked from commit 06a1fe0364)
2023-03-14 13:59:03 +01:00
clayjohn bc6743c96d Add proper default texture filter and repeat modes for Canvas shaders in the OpenGL3 renderer
(cherry picked from commit 46b416f3b1)
2023-03-13 21:58:51 +01:00
clayjohn 5662542526 Avoid copying CanvasTexture when updating proxy
(cherry picked from commit 84482ef90b)
2023-03-13 14:10:38 +01:00
clayjohn c69b14e96e Add warnings for unsupported features in mobile and gl_compatibility backends 2023-02-26 12:28:02 -08:00
Rémi Verschelde 5e57205365
Merge pull request #73478 from NewDefectus/master
Use the original canvas to calculate light positioning
2023-02-21 21:14:51 +01:00
Alon Ran 2d7db30f0d Use the original canvas to calculate light positioning 2023-02-21 11:57:16 +02:00
Yuri Rubinsky 94831c7209 Forbid passing multiview sampler to the custom function in shaders 2023-02-21 11:23:17 +03:00
Rémi Verschelde d68cfb43ef
Merge pull request #73662 from BastiaanOlij/fix_opengl_wobbly_sky
Fix wobbly sky in stereoscopic OpenGL
2023-02-21 07:16:21 +01:00
Rémi Verschelde c71fea4467
Merge pull request #73659 from BastiaanOlij/fix_opengl_clearscreen
Fix issue with clearing screen after part has been drawn
2023-02-21 07:16:00 +01:00
Bastiaan Olij 2852c9c319 Fix wobbly sky in stereoscopic OpenGL 2023-02-21 16:11:57 +11:00
Bastiaan Olij 67cb660532 Fix issue with clearing screen after part has been drawn 2023-02-21 14:18:23 +11:00
ChibiDenDen aeab31b13a
Fix bufSize parameter for glGetSynciv
According to the docs:
https://registry.khronos.org/OpenGL-Refpages/es3.0/html/glGetSynciv.xhtml
Bufsize is in integers, not bytes.
The current code overflows data unto other stack variables.
2023-02-20 11:35:28 +02:00
Rémi Verschelde 37589edf17
Merge pull request #73524 from clayjohn/GL-occluder
Avoid unnecessary binding of occlusion polygon vertex array
2023-02-18 16:19:44 +01:00
clayjohn 5bbf5b8e72 Avoid unecessary binding of occlusion polygon vertex array
By binding this and unbinding it, the state was getting modified in other parts of the pipeline
2023-02-17 13:11:25 -08:00
rsjtdrjgfuzkfg 7f8fa79e94 OpenGL: fix culling without depth prepass
This commit ensures a known backface culling state when rendering, even
if no depth prepass is used. This fixes backside culling not being
applied properly in some situations, most notably in scenes that only
use backside culling on mobile platforms.
2023-02-17 00:01:36 +01:00
Rémi Verschelde aa6ec76317
Merge pull request #73332 from clayjohn/GL-h2f-branch
Avoid branch in half2float in gl_compatibility renderer
2023-02-15 22:46:47 +01:00
clayjohn 58bad55d42 Avoid branch in half2float in gl_compatibility renderer 2023-02-14 20:31:36 -08:00
clayjohn 081b31d200 Clear Window before blitting Viewport in gl_compatibility renderer 2023-02-14 10:30:02 -08:00
Rémi Verschelde 1a206d0e22
Merge pull request #73263 from clayjohn/render_priority
Notify mesh surface when render_priority changes
2023-02-14 11:05:28 +01:00
Rémi Verschelde 1f18e16a32
Merge pull request #73255 from clayjohn/GLES3-batch-blend
Store blend mode between CanvasItems to preserve batching
2023-02-14 11:01:44 +01:00
clayjohn d3b3419aff Notify mesh surface when render_priority changes
This ensures that the mesh properly takes render_priority into account when changed
2023-02-13 18:09:33 -08:00
clayjohn ab4e79cd03 Store blend mode between CanvasItems to preserve batching 2023-02-13 14:46:26 -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
clayjohn f6d22df072 Properly reset blend mode when resetting canvas in compatibility renderer 2023-02-09 15:50:17 -08:00
JoJoX a7f3b4459a Handle 0 exponent in float/half conversion for OpenGl 2023-02-08 20:41:44 +01:00
clayjohn 76caf3fbae Set instancing flags when using GPUParticles in OpenGL renderer 2023-02-07 10:45:34 -08:00
clayjohn 56450fb179 Implement cull_mask for decals and lights in mobile and compatibility backends 2023-02-06 12:12:47 -08:00
Yuri Sizov 2bd5302704
Merge pull request #72695 from clayjohn/CanvasGroup-shading
Avoid shading CanvasGroup nodes twice
2023-02-04 21:38:25 +03:00
clayjohn dfbf439081 Avoid shading CanvasGroup nodes twice 2023-02-03 15:40:42 -08:00
Rémi Verschelde 0b1d516f67
Merge pull request #72684 from clayjohn/mm-update
Fix MultiMesh visible_instance_count being ignored after the first frame
2023-02-04 00:40:36 +01:00
Rémi Verschelde a268dcc7e3
Merge pull request #72690 from Calinou/opengl-trim-gpu-name
Trim "/PCIe/SSE2" from GPU names when starting the OpenGL renderer
2023-02-04 00:37:28 +01:00
Rémi Verschelde 1253547837
Merge pull request #72681 from clayjohn/GL-multimesh-color
Ignore instance color and instance custom_data when not used in the OpenGL renderer
2023-02-04 00:24:39 +01:00
Hugo Locurcio da81c3f9b5
Trim "/PCIe/SSE2" from GPU names when starting the OpenGL renderer
This makes the command line print consistent with the Vulkan renderer.
2023-02-03 23:28:41 +01:00
Ricardo Buring 497f5576c1 Fix MultiMesh visible_instance_count being ignored after the first frame
Co-authored-by: Clay John <claynjohn@gmail.com>
2023-02-03 11:40:39 -08:00
clayjohn bf0cc8f52a Ignore instance color and instance custom_data when not used in the OpenGL renderer 2023-02-03 10:34:30 -08:00
Hugo Locurcio f3e8300b50
Print name of Vulkan rendering method on startup
This helps troubleshooting as the CLI logs now distinguish between
Forward+ and Forward Mobile.
2023-02-03 13:01:48 +01:00
Ricardo Buring 086b9e0c59 Notify dependencies when setting custom mesh AABB
Fixes SoftBody3D culling issues.
2023-02-02 23:31:27 +01:00
Ninni Pipping e241f871a4 Fix texture rect transpose for OpenGL 2023-02-02 13:20:29 +01:00