Commit graph

2352 commits

Author SHA1 Message Date
PouleyKetchoupp
dafb6edacf Fix compilation warnings in Shape2DSW/Shape3DSW 2021-08-19 16:19:49 -07:00
jfons
55e7832d7b Improvements to SpotLight3D and OmniLight3D's shadows
OmniLight3D:
* Fixed lack of precision in cube map mode by scaling the projection's
  znear.
* Fixed aliasing issues by making the paraboloids use two square regions instead of two half
  squares.
* Fixed shadowmap atlas bleeding by adding padding.
* Fixed sihadow blur's inconsistent radius and unclamped sampling.

SpotLight3D:
* Fixed lack of precision by scaling the projection's znear.
* Fixed normal biasing.

Both:
* Tweaked biasing to make sure it works out of the box in most situations.
2021-08-19 13:46:51 +02:00
Rémi Verschelde
f6626a40e5
Merge pull request #51843 from reduz/fixes-to-mobile-renderer-3
More fixes to mobile renderer
2021-08-18 20:43:25 +02:00
Rémi Verschelde
2fcf3057fd
Merge pull request #51792 from Chaosus/removed_restart 2021-08-18 19:59:57 +02:00
reduz
700f9d916d More fixes to mobile renderer
* Specify all precision qualifiers
* Makes renderer work on Adreno Vulkan
2021-08-18 12:20:19 -03:00
reduz
6027cd0a1d Fixes to mobile renderer
* Make sure shaders are named, to aid in debug in case of failure
* SceneRenderRD was being wrongly initialized (virtual functions being called when derivative class not initialized).
* Fixed some bugs resulting on the above being corrected.
2021-08-17 13:52:06 -03:00
Yuri Roubinsky
c1cd0fe6d1 Removed RESTART built-in from start particle shader function 2021-08-17 15:13:16 +03:00
Yuri Roubinsky
06add309d7 Fix incorrect uniform buffer size for particles 2021-08-17 13:33:28 +03:00
LoipesMas
4e6e25eae7 Epsilon check for angular velocity in Body3DSW 2021-08-16 20:05:48 +02:00
Juan Linietsky
d5a30431b9
Merge pull request #51635 from reduz/further-mobile-optimizations
More optimizations on the mobile renderer.
2021-08-16 14:50:52 -03:00
Rémi Verschelde
43440228db
Merge pull request #51645 from fabriceci/improve-physics-api
API improvement on the physics (CharacterBody and related classes)
2021-08-16 17:05:08 +02:00
Rémi Verschelde
7013199fb1
Merge pull request #50785 from jeffrey-cochran/softbody-areas
Updated softbody handling to allow for area/softbody collision detection and application of area gravity
2021-08-16 16:32:04 +02:00
Yuri Roubinsky
9de779344c Makes a clear error message if shader compilation failed 2021-08-16 11:25:20 +03:00
Jeffrey Cochran
14640fb6c5 Enabled softbody-area collision (intersection) and enabled area-specific gravity for soft bodies. 2021-08-15 23:01:33 -04:00
Bastiaan Olij
c7847b3f6d Moved disabling bokeh shader variants to before the version_create call 2021-08-16 12:18:27 +10:00
fabriceci
d776b6c154 API improvement on physics, mainly CharacterBody
Changes:

- Rename few methods/property and group them in the editor when it's possible
- Make MotionResult API consistency with KinematicCollision
- Return a boolean in move_and_slide if there was a collision
- New methods:
  - get_floor_angle on CharacterBody to get the floor angle.
  - get_angle on KinematicCollision to get the collision angle.
  - get_last_slide_collision to quickly get the latest collision of move_and_slide.
2021-08-15 12:53:29 +02:00
Bastiaan Olij
4002650cb9 Fix read from screen and depth texture 2021-08-15 13:14:19 +10:00
Rémi Verschelde
4e1d91f4d3
Merge pull request #50998 from BastiaanOlij/single_bokeh_dof_raster
Rewrote raster DOF shader to using BOKEH
2021-08-14 14:44:23 +02:00
Hugo Locurcio
8e3f71d750
Rename LineShape2D to WorldMarginShape2D
The new name makes it more obvious that it acts as an infinite plane,
and is consistent with its 3D counterpart (WorldMarginShape3D).
2021-08-14 03:12:13 +02:00
reduz
cfac8972e1 More optimizations on the mobile renderer.
* Specialization constants used to disable anything not needed to draw
* Added softshadow and projector support on mobile.

This new approach ensures mobile shaders are smaller and more efficient, but relies on more pipeline versions compiled on demand.
As a result, random stalls can ocur like in Godot 3.x. These will be solved by using background compilation and fallbacks eventually (but needs to be tested first).
2021-08-13 14:30:59 -03:00
Rémi Verschelde
e499758a77
Merge pull request #51025 from reduz/fix-directional-shadow-bias
Fix directional shadow bias
2021-08-13 16:45:49 +02:00
Rémi Verschelde
1833c8b233
Merge pull request #51587 from Calinou/use-unicode-multiplication-symbol
Use the Unicode multiplication symbol where relevant
2021-08-13 14:27:48 +02:00
bruvzg
8f70232a15 Add placeholder textures to ensure CameraTexture / CameraFeed always have valid RIDs. 2021-08-13 12:32:01 +03:00
Yuri Roubinsky
eadf9d92f9
Merge pull request #51609 from Chaosus/shader_fix_varying_error
Fix shader crash when using local var with the same name as varying
2021-08-13 10:37:53 +03:00
Yuri Roubinsky
fa96c98bdf Fix shader crash when using local var with the same name as varying 2021-08-13 09:20:16 +03:00
Bastiaan Olij
07fd559478 Implemented raster versions of bokeh shaders to replace broken gaussian implementation 2021-08-13 10:20:14 +10:00
Rémi Verschelde
a98589a449
Merge pull request #51581 from bruvzg/camera_feed_port
Port camera feed to the new RenderingServer API.
2021-08-12 23:28:10 +02:00
Hugo Locurcio
7612cff432
Use the Unicode multiplication symbol where relevant 2021-08-12 21:45:33 +02:00
Rémi Verschelde
56ac302dc4
Merge pull request #51580 from aaronfranke/particles-real-double
Use real_t and double where appropriate in Particles
2021-08-12 20:51:21 +02:00
Rémi Verschelde
71873057bc
Merge pull request #51536 from Calinou/nearest-mipmap-use-nearest-for-minification
Use nearest mipmaps for both minification and magnification
2021-08-12 20:21:18 +02:00
bruvzg
de30dfe6a5 Port camera feed to the new RenderingServer API. 2021-08-12 20:46:19 +03:00
Aaron Franke
03e2544d50
Use real_t and double where appropriate in Particles 2021-08-12 11:35:31 -05:00
Hugo Locurcio
fd29432aab
Use nearest mipmaps for both minification and magnification
This is generally the expected behavior when using a nearest + mipmaps
mode, as it's often used for pixel art games.
2021-08-12 18:24:10 +02:00
Rémi Verschelde
c89ad92c96
Merge pull request #51532 from nekomatata/layer-mask-accessors
Uniformize layer names, script methods and documentation
2021-08-12 17:55:11 +02:00
PouleyKetchoupp
989acbbe81 Uniformize layer names, script methods and documentation
- Back to 1-based layer names to make it clearer in editor UI
- Layer bit accessors are renamed to layer value and 1-based too
- Uniform errors and documentation in render and physics
- Fix a few remaining collision_layer used in place of collision_mask
2021-08-12 08:06:42 -07:00
Rémi Verschelde
b63af73435
Merge pull request #51391 from Chaosus/shader_param_names
Added parameter names to shader built-in function autocompletion
2021-08-12 14:58:11 +02:00
Yuri Roubinsky
fb37846b00 Added parameter names to shader built-in function autocompletion 2021-08-12 11:19:53 +03:00
Yuri Roubinsky
63c7d5c330 Removes an internal error report if shader fails compile 2021-08-12 10:18:18 +03:00
Rémi Verschelde
e2ca1d413e
Merge pull request #51533 from Calinou/fix-nearest-mipmap-filter
Fix the Use Nearest Mipmap Filter project setting not working
2021-08-12 08:16:46 +02:00
Rémi Verschelde
c3041ffe98
Merge pull request #51540 from floppyhammer/fix-cpu-particles-2d-disappearance
Fix CPUParticles2D disappearance after amount change
2021-08-12 08:12:22 +02:00
floppyhammer
37230dbb1f Fix CPUParticles2D disappearance after amount change 2021-08-12 10:53:37 +08:00
Hugo Locurcio
635f6cdf2e
Fix the Use Nearest Mipmap Filter project setting not working
The project setting wasn't being used anywhere.

This also tweaks the property hints to denote that these properties
are only effective after a restart.
2021-08-12 01:58:42 +02:00
PouleyKetchoupp
f9176a39ce Make radius & height in CapsuleShape3D independent
Also changed CapsuleMesh to make settings consistent between render and
physics.
2021-08-11 14:54:53 -07:00
Rémi Verschelde
e30be92ce8
Merge pull request #41634 from KoBeWi/the_independence 2021-08-11 18:16:24 +02:00
Tomasz Chabora
f12f5b36b5 Make radius & height in CapsuleShape2D independent 2021-08-11 17:34:27 +02:00
Hugo Locurcio
d364ff2087
Decrease the default depth of field bokeh quality
This makes depth of field perform better out of the box, with little
visual difference.
2021-08-11 16:59:22 +02:00
Rémi Verschelde
62047e4e48
Merge pull request #51486 from reduz/fixes-to-mobile-renderer
Fixes and optimizations to mobile renderer
2021-08-11 15:19:11 +02:00
Yuri Roubinsky
efc6b29601
Merge pull request #51505 from Chaosus/shader_fix_shadetype-errorline 2021-08-11 14:46:04 +03:00
Yuri Roubinsky
2fb5231bbc Break futher shader compilation after missing ; aftershader_type 2021-08-11 12:37:59 +03:00
Yuri Roubinsky
0f42a29864 Allow using more assignment operators on matrixes in shaders 2021-08-11 11:51:39 +03:00