Age | Commit message (Collapse) | Author |
|
Hide more options of disabled properties
|
|
|
|
|
|
Add size check in BakedLightmapData::_set_user_data()
|
|
Fix Joint2D/Joint3D node path reset on scene switch
|
|
|
|
When one of the bodies exited the tree, the corresponding node path was
reset instead of just resetting the joint from the physics server. That
was causing the node path to be reset on scene switch when one of the
bodies is under the joint in the scene tree.
|
|
|
|
The problem happened when the passed from_node was null and the GIProbe
node had no parent node.
Fixes #45978
|
|
between two bodies is destroyed
|
|
Add an editor gizmo to CollisionObject3D.
CollisionShape3D no longer shows collision shapes directly.
|
|
|
|
* Adds both a preview sun and preview environment to the 3D editor.
* They are valid as long as a DirectionalLight3D and WorldEnvironment are not in the scene.
* If any is added to the scene, the respective preview is disabled.
* Changed WorldEnvironment to better handle multiple node versions.
* Added a function in SceneTree to get the first node in a group.
* Fixed button minimum size to also consider font height if no text is there, this broke with the TextSever PR.
|
|
And fix various bogus bindings following previous PRs.
|
|
Implements https://github.com/godotengine/godot-proposals/issues/1835#issuecomment-727186192
* PauseMode is now ProcessMode, containing the following states:
```
PROCESS_MODE_INHERIT, // same as parent node
PROCESS_MODE_NORMAL, // process only if not paused
PROCESS_MODE_PAUSE_ONLY, // process only if paused
PROCESS_MODE_ALWAYS, // process always
PROCESS_MODE_DISABLED, // never process
```
* NOTIFICATION_PAUSED and NOTIFICATION_UNPAUSED are received effectively when the node is paused and unpaused (not any longer when pause mode is set in SceneTree).
* Renamed some nodes that used ProcessMode/process_mode to specify a callback type to ProcessCallback to avoid clashes.
|
|
Modernize atomics (and fix `volatile`)
|
|
- 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>
|
|
-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.
|
|
|
|
Fix a pop on play() in AudioStreamPlayer2D and 3D
|
|
|
|
CPUParticles3D crash fix
|
|
add check to see if p_order is in range for CPUParticles3D::set_draw_order'
|
|
Fixes #40301.
Fixes #45947.
|
|
|
|
Return setseek position if one exists in get_playback_position.
|
|
Implement CollisionPolygon3D margin
|
|
|
|
Accomodate blend shape ranges of -1 to +1 for Vulkan
|
|
|
|
-For inspector refresh, the inspector now detects if a property change by polling a few times per second and then does update the control if so. This process is very cheap.
-For property list refresh, a new signal (property_list_changed) was added to Object. _change_notify() is replaced by notify_property_list_changed()
-Changed all objects using the old method to the signal, or just deleted the calls to _change_notify(<property>) since they are unnecesary now.
|
|
Initialize class variables with default values in scene/ [2/2]
|
|
-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).
|
|
|
|
|
|
Bugfix: Update transform of collision shape on NOTIFICATION_PARENTED …
|
|
|
|
|
|
invalid transform of collision shape in cases where the node is not supposed to enter the scene tree)
|
|
-Always use temporal reproject, it just loos way better than any other filter.
-By always using termporal reproject, the shadowmap reduction can be done away with, massively improving performance.
-Disadvantage of temporal reproject is update latency so..
-Made sure a gaussian filter runs in XY after fog, this allows to keep stability and lower latency.
|
|
This prefix is used in the C++ codebase, not in the scripting API.
|
|
Fix particles not properly updated by their lifetime
|
|
Use Math_TAU and deg2rad/etc in more places and optimize code
|
|
Use real_t in physics nodes
|
|
Modernize Thread
|
|
|
|
- Based on C++11's `thread` and `thread_local`
- No more need to allocate-deallocate or check for null
- No pointer anymore, just a member variable
- Platform-specific implementations no longer needed (except for the few cases of non-portable functions)
- Simpler for `NO_THREADS`
- Thread ids are now the same across platforms (main is 1; others follow)
|
|
|
|
|
|
Do not clear materials when setting mesh
|