summaryrefslogtreecommitdiff
path: root/scene/3d
AgeCommit message (Collapse)Author
2022-02-15Use `switch` consistently in `_notification` (`scene` folder)Rémi Verschelde
2022-02-12Improve compilation speed (forward declarations/includes cleanup)Hendrik Brucker
2022-02-10Fix typos with codespellRémi Verschelde
Using codespell 2.2-dev from current git. Added `misc/scripts/codespell.sh` to make it easier to run it once in a while and update the skip and ignore lists.
2022-02-08Merge pull request #57627 from JFonS/occluder_improvementsRémi Verschelde
2022-02-08Fix RayCast{2,3}D.clear_exceptions clears parentHaoyu Qiu
2022-02-07Improvements and fixes to occludersjfons
Improvements: * Occluder3D is now an abstract type inherited by: ArrayOccluder3D, QuadOccluder3D, BoxOccluder3D, SphereOccluder3D and PolygonOccluder3D. ArrayOccluder3D serves the same purpose as the old Occluder3D (triangle mesh occluder) while the rest are primitives that can be used to manually place simple occluders. * Occluder baking can now apply simplification. The "bake_simplification_distance" property can be used to set a world-space distance as the desired maximum error, set to 0.1 by default. * Occluders can now be generated on import. Using the "occ" and "occonly" keywords (similar to "col" and "colonly" for colliders) or by enabling on MeshInstance3Ds in the scene's import window. Fixes: * Fixed saving of occluder files after bake. * Fixed a small error where occluders didn't correctly update in the rendering server. Bonus content: * Generalized "CollisionPolygon3DEditor" so it can also be used to edit Resources. Renamed it to "Polygon3DEditor" since it was already being used by other things, not just colliders. * Fixed a small bug in "EditorPropertyArray" where a call to "remove" was left after the "remove_at" rename.
2022-02-06Add missing SNAME macro optimization in some function callsjmb462
2022-02-04String: Add contains().Anilforextra
2022-02-01Merge pull request #57355 from akien-mga/method-bindings-clearer-typesRémi Verschelde
2022-01-29simplify formatting scripts, add a clang-tidy script, and run clang-tidyNathan Franke
2022-01-28Merge pull request #56601 from Scony/fix-navigation-obstacle-errorsRémi Verschelde
2022-01-28Improve some method bindings to use specific `Object` subtypesRémi Verschelde
This was made possible by changes to `VariantCaster` which now make it possible to pass any `Object`-derived type as pointer.
2022-01-26Revert #53174 (applying the delta in move and collide), rename rec_vel to ↵fabriceci
distance and improve the doc description
2022-01-25Store ObjectID instead of raw pointer for Shape OwnersHaoyu Qiu
2022-01-24Merge pull request #57144 from AnilBK/fix-pos-draggingRémi Verschelde
2022-01-25Node2D/Node3D: Fix Undraggable Position Property.Anilforextra
2022-01-24rename free mode to floating modefabriceci
2022-01-20Merge pull request #55360 from Calinou/rename-bake-mode-propertiesRémi Verschelde
2022-01-13Merge pull request #56740 from AnilBK/camera-pre-allocateRémi Verschelde
2022-01-13CameraMatrix: Pre-allocate Vector in get_projection_planes().Anilforextra
2022-01-12Merge pull request #55446 from Calinou/spritebase3d-remove-opacityRémi Verschelde
2022-01-12Merge pull request #56492 from akien-mga/remove-author-docstringsRémi Verschelde
2022-01-11Fixed incorrect property typesArnav Vijaywargiya
2022-01-08Use fill() to fill an entire image instead of setting pixels individually.Anilforextra
2022-01-07Fix NavigationObstacle errorsPawel Lampe
* `NavigationObstacle2D` premature radius estimation (before entering the tree) * `NavigationObstacle3D` premature radius estimation (before entering the tree)
2022-01-06Fix incorrect default transform values on foreign 3D nodesSaracenOne
2022-01-05Merge pull request #53684 from TokageItLab/orthogonal-modeRémi Verschelde
2022-01-05Added material_overlay property to MeshInstance3DFernando Cosentino
Applying overlay materials into multi-surface meshes currently requires adding a next pass material to all the surfaces, which might be cumbersome when the material is to be applied to a range of different geometries. This also makes it not trivial to use AnimationPlayer to control the material in case of visual effects. The material_override property is not an option as it works replacing the active material for the surfaces, not adding a new pass. This commit adds the material_overlay property to GeometryInstance3D (and therefore MeshInstance3D), having the same reach as material_override (that is, all surfaces) but adding a new material pass on top of the active materials, instead of replacing them.
2022-01-05Merge pull request #56491 from hinlopen/n3d-minor-improvementRémi Verschelde
Minor code improvements in Node3D
2022-01-04Minor code improvements in Node3D. Refactor Node3D::show/hide/set_visible to ↵Stijn
a shared implementation.
2022-01-04Style: Remove inconsistently used `@author` docstringsRémi Verschelde
Each file in Godot has had multiple contributors who co-authored it over the years, and the information of who was the original person to create that file is not very relevant, especially when used so inconsistently. `git blame` is a much better way to know who initially authored or later modified a given chunk of code, and most IDEs now have good integration to show this information.
2022-01-04Merge pull request #55332 from Calinou/voxelgidata-tweak-default-dynamic-rangeRémi Verschelde
Decrease the default dynamic range in VoxelGIData to 2.0
2022-01-04Merge pull request #56305 from Calinou/rename-lod-thresholdRémi Verschelde
2022-01-04Merge pull request #55370 from ↵JFonS
Calinou/geometryinstance3d-lod-fade-node-configuration-warning Emit node configuration warnings for GeometryInstance3D distance fade
2022-01-04Merge pull request #55331 from Calinou/voxelgidata-fix-dynamic-range-propertyRémi Verschelde
2022-01-03Update copyright statements to 2022Rémi Verschelde
Happy new year to the wonderful Godot community!
2021-12-29Rename Lod Threshold to Mesh Lod ThresholdHugo Locurcio
This makes it more obvious that the setting only affects mesh LOD, not manual (H)LOD achieved using visibility ranges.
2021-12-25Fix some gizmo behavior to make more consistentSilc 'Tokage' Renew
2021-12-14Rename and reorder bake mode properties for consistencyHugo Locurcio
The order now goes from least to most computationally expensive: - Disabled - Static - Dynamic
2021-12-11GPULightMapper: convert colors of lights to linearWilliam Deurwaarder
To make baked colors of lights equal to dynamic colors of lights they have to be converted to linear as the colors of dynamic lights are converted to linear by RendererSceneRenderRD.
2021-12-10Improve RigidDynamicBody force and torque APIPouleyKetchoupp
Makes the API for forces and impulses more flexible, easier to understand and harmonized between 2D and 3D. Rigid bodies now have 3 sets of methods for forces and impulses: -apply_impulse() for impulses (one-shot and time independent) -apply_force() for forces (time dependent) applied for the current step -add_constant_force() for forces that keeps being applied each step Also updated the documentation to clarify the different methods and parameters in rigid body nodes, body direct state and physics servers.
2021-12-10VehicleWheel can now return the surface it's colliding with.Steve Szilágyi
Fixed PR issues. Update vehicle_body_3d.cpp Apply suggestions from code review Co-authored-by: Camille Mohr-Daurat <pouleyKetchoup@gmail.com>
2021-12-10Merge pull request #55263 from RPicster/ParticleMaterial-random-start-colorRémi Verschelde
2021-12-10Merge pull request #55572 from aaronfranke/ci-doubleRémi Verschelde
2021-12-09Add a double-precision editor build to CIAaron Franke
2021-12-09Replace String comparisons with "", String() to is_empty()Nathan Franke
Also: - Adds two stress tests to test_string.h - Changes to .empty() on std::strings
2021-12-08Fix _validate_property on AnimatedSprite 2D and 3DJonathan Gollnick
2021-12-08Decrease the default dynamic range in VoxelGIData to 2.0Hugo Locurcio
This reduces visible banding in indirect lighting and reflections. Sharp reflections now match more closely the original scene. The downside of this change is that clipping may appear in reflections in extremely bright scenes, but this should not be a concern in most scenes.
2021-12-08Rename GPUParticles attractor and collision nodes to have a 3D suffixHugo Locurcio
GPUParticles attractors and collision are currently only available in 3D. Their 2D counterparts haven't been implemented yet, but they will use separate nodes.
2021-12-06Remove ProximityGroup3D nodekobewi