summaryrefslogtreecommitdiff
path: root/servers
AgeCommit message (Collapse)Author
2021-03-11Removed time duplicate from ForwardClustered. Just use the variable from its ↵Bastiaan Olij
superclass
2021-03-11Combine init_gi and init_sdfgi into a single initBastiaan Olij
2021-03-11Renamed one more Forward render struct and fixed typoBastiaan Olij
2021-03-11Moving RendererStorageRD *storage to protected, no sense duplicating it in ↵Bastiaan Olij
forward_clustered
2021-03-10Merge pull request #46811 from BastiaanOlij/rename_forward_rendererBastiaan Olij
Renaming RendererSceneRenderForward to ...ForwardClustered
2021-03-10Renaming RendererSceneRenderForward to RendererSceneRenderForwardClustered ↵Bastiaan Olij
so we can introduce RendererSceneRenderForwardMobile
2021-03-10Implement Navigation layersGilles Roudière
2021-03-08Fixes division by zero when 3d body does not have valid shapeKyle
Fixes #46738 by setting the default inertia to a valid value when there are no valid shapes for a 3d body. Changed the comment style for the update_inertias method as well.
2021-03-08Merge pull request #46642 from BastiaanOlij/sdfgi_rename_and_cleanupRémi Verschelde
Renamed SDGIShader to SDFGIShader and moved a bunch of things to private
2021-03-05Fix negative VRAM valuesEv1lbl0w
2021-03-04Fix canvas renderer line widthAlex Hirsch
fix #46644
2021-03-04Renamed SDGIShader to SDFGIShader and moved a bunch of things to privateBastiaan Olij
2021-03-02Merge pull request #46594 from asheraryam/fix-clip-content-masterRémi Verschelde
Fix rounding error in Clip Content [4.0]
2021-03-02Merge pull request #46581 from Riteo/fix-capsule-shapeRémi Verschelde
Change CapsuleShape3D's collision detection axis to vertical
2021-03-02Fix rounding error in Clip Contentasheraryam
Rounds the position and size of the final clip rect to avoid flickering issues. Fixes https://github.com/godotengine/godot/issues/46493
2021-03-02Change CapsuleShape3D's collision detection axis to verticalRiteo Siuga
This fixes an issue where its collision detection would actually work as if it had the old default orientation.
2021-03-01Merge pull request #46046 from BastiaanOlij/cleanup_giRémi Verschelde
Moving GI and Sky code from RendererSceneRenderRD into separate classes
2021-03-01Merge pull request #46522 from Ev1lbl0w/bugfix-shader_noretRémi Verschelde
Added missing returns on error scenarios
2021-03-01Fix parsing hexadecimal (lowercase `e`,`f`) in shadersYuri Roubinsky
2021-02-28Added missing returns on error scenariosEv1lbl0w
2021-02-27Refactor removal of constraints from bodies in 2D jointsEryk Dwornicki
2021-02-27Move removal of the constraints from bodies to Joint3DSW destructorEryk Dwornicki
Joint3DSW instances are also destroyed without explicitly calling free() for example when changing constrainted bodies at runtime using set_node method.
2021-02-25Update Inspector when changing AudioEffectChorus voice_countbooer
Fixes #31627.
2021-02-25Moving GI code into RendererServerGIRDBastiaan Olij
Moving Skyshader code into RendererServerSkyRD
2021-02-24Merge pull request #45863 from nekomatata/physics-queries-disabled-shapesRémi Verschelde
Fix physics queries not filtering out disabled collision shapes
2021-02-24Merge pull request #46045 from bruvzg/text_server_bmp_createRémi Verschelde
[TextServer] Restores bitmap font dynamic construction functions.
2021-02-21Prevents shader crash if two struct with the same name are declaredYuri Roubinsky
2021-02-21Prevents shader crash if passing invalid struct to the return statementYuri Roubinsky
2021-02-19Merge pull request #46086 from ellenhp/new_resamplingRémi Verschelde
Implement a new resampling algorithm in AudioStreamPlaybackResampled
2021-02-19doc: Sync classref with current sourceRémi Verschelde
And fix various bogus bindings following previous PRs.
2021-02-19Merge pull request #46199 from ellenhp/fix_distortion_filterRémi Verschelde
Prevent distortion filter from introducing NaNs in the audio buffer
2021-02-18Prevent distortion filter from introducing NaNs in the audio buffer.Ellen Poe
2021-02-18Merge pull request #45326 from clayjohn/VULKAN-ign-shadowsClay John
Use Interleaved gradient noise for shadow samples
2021-02-18Merge pull request #46131 from bruvzg/move_tablet_to_dsRémi Verschelde
Move tablet driver API from OS to DisplayServer
2021-02-18Merge pull request #45617 from RandomShaper/modernize_atomicsRémi Verschelde
Modernize atomics (and fix `volatile`)
2021-02-18Modernize atomicsPedro J. Estébanez
- Based on C++11's `atomic` - Reworked `SafeRefCount` (based on the rewrite by @hpvb) - Replaced free atomic functions by the new `SafeNumeric<T>` - Replaced wrong cases of `volatile bool` by the new `SafeFlag` - Platform-specific implementations no longer needed Co-authored-by: Hein-Pieter van Braam-Stewart <hp@tmm.cx>
2021-02-18Move tablet driver API from OS to DisplayServer.bruvzg
2021-02-18Reorganize Project Settingsreduz
-Advanced Settings toggle also hides advanced properties when disabled -Simplified Advanced Bar (errors were just plain redundant) -Reorganized rendering quality settings. -Reorganized miscelaneous settings for clean up.
2021-02-18Merge pull request #46148 from nekomatata/fix-test-body-motionRémi Verschelde
Fix test_body_motion recovery and rest info
2021-02-17Fix test_body_motion recoveryPouleyKetchoupp
This change makes test_body_motion more reliable when the kinematic body recovers from being stuck. - When recovery occurs, the rest information is generated, in order to make sure collision results from test_move, move_and_collide and move_and_slide are consistent and return a collision in case of overlap. - The new calculation for recovery vector makes sure the recovery is never more than the overlap depth between shapes. This can help with cases where the kinematic body overlaps with several shapes. Recovery is made iteratively, without forcing a full overlap at each step. This helps with getting proper rest information when recovery occurs. - One Way Collision: When attempting motion, contact direction is checked against motion before skipping in order to solve cases where kinematic bodies can sink into one-way collision shapes. Rest info now sets max contact depth in order to properly handle one-way collision. - Low speed motion is now handled in the rest info, by never setting min_allowed_depth lower than motion length. Separation is always applied with full margin, otherwise contact is lost when low speed motion occurs right after higher speed motion. - Similar changes are applied to 3D in order to make 2D and 3D consistent.
2021-02-17Fix math error in blend shape application toleranceKayomn
2021-02-15Implement a new resampling algorithm in AudioStreamPlaybackResampledEllen Poe
2021-02-15[Text Server] Restores bitmap font dynamic construction functions.bruvzg
2021-02-15[TextServer] Restore character and space extra spacing support.bruvzg
2021-02-12Merge pull request #45931 from nekomatata/cylinder-contact-points-fixRémi Verschelde
Revised cylinder contact point generation in Godot Physics
2021-02-12Revised cylinder contact point generationPouleyKetchoupp
Cylinder contact points generation is adjusted to make it more stable when standing on triangle meshes. Point-Circle: Switched to simpler plane projection as it's done for Point-Face contact points. It solves some cases where discrepancies between the two points caused the cylinder to jump. Edge-Circle: Same as before, the case for edge has just been moved from Face-Circle to a specific method. Face-Circle: The previous method was clipping edges against the circle, and then tried to add contact points when there wasn't enough support and failed in some cases. Now using a different algorithm which adds proper contact points around the circle more consistently. First, by clipping edges against circle segments using Face-Face algorithm. Second, by clipping edges against the circle plane.
2021-02-12Merge pull request #45859 from Kayomn/masterRémi Verschelde
Accomodate blend shape ranges of -1 to +1 for Vulkan
2021-02-11Allow passing varying from fragment to light shader functionYuri Roubinsky
2021-02-10Cylinder support in Godot Physics 3DPouleyKetchoupp
Cylinder collision detection uses a mix of SAT and GJKEPA. GJKEPA is used to find the best separation axis in cases where finding it analytically is too complex. Changes in SAT solver: Added support for generating separation axes for cylinder shape. Added support for generating contact points with circle feature. Changes in GJKEPA solver: Updated from latest Bullet version which includes EPA fixes in some scenarios. Setting a lower EPA_ACCURACY to fix accuracy problems with cylinder vs. cylinder in some cases.
2021-02-10Make Servers truly Thread Safereduz
-Rendering server now uses a split RID allocate/initialize internally, this allows generating RIDs immediately but initialization to happen later on the proper thread (as rendering APIs generally requiere to call on the right thread). -RenderingServerWrapMT is no more, multithreading is done in RenderingServerDefault. -Some functions like texture or mesh creation, when renderer supports it, can register and return immediately (so no waiting for server API to flush, and saving staging and command buffer memory). -3D physics server changed to be made multithread friendly. -Added PhysicsServer3DWrapMT to use 3D physics server from multiple threads. -Disablet Bullet (too much effort to make multithread friendly, this needs to be fixed eventually).