summaryrefslogtreecommitdiffstats
path: root/scene/3d/mesh_instance_3d.cpp
Commit message (Collapse)AuthorAgeFilesLines
* Fix initial skin update timing in Skeleton3DSilc Lizard (Tokage) Renew2024-10-161-2/+2
|
* Merge pull request #97489 from TokageItLab/deferred-skin-registrationRémi Verschelde2024-09-271-2/+2
|\ | | | | | | Move skin registration process into deferred on ready
| * Move skin registration process into deferred on readySilc Lizard (Tokage) Renew2024-09-261-2/+2
| |
* | Add option to bake a mesh from animated skeleton posesmix82024-09-031-0/+167
|/ | | | Adds option to bake a mesh from animated skeleton pose.
* Cleanup of raw `nullptr` checks with `Ref`A Thousand Ships2024-08-311-2/+2
| | | | Using `is_valid/null` over checks with `nullptr` or `ERR_FAIL_NULL` etc.
* Add option to bake a mesh from blend shape mixsmix82024-04-101-0/+159
| | | | Adds option to bake a mesh from blend shape mix.
* Expose MeshInstance3D.get_skin_reference and add docsLyuma2024-04-101-0/+5
|
* Split monolithic physics class filessmix82024-02-271-2/+3
| | | | Splits monolithic physics class files.
* Move 3D-only resources to their own folderAaron Franke2024-02-261-2/+2
|
* Show revert button for MeshInstance3D blendshape valuessmix82024-02-131-0/+17
| | | | Shows revert button for MeshInstance3D blendshape values.
* Fill remaining global scope constant descriptionskobewi2023-11-131-1/+1
|
* Make 3D editor gizmos and debug shapes ignore fogHugo Locurcio2023-09-271-0/+1
| | | | This makes them easier to see in their intended colors in scenes with fog.
* Unify and streamline connecting to Resource changeskobewi2023-07-171-3/+2
|
* Use NULL instead of COND checks when appropriateNinni Pipping2023-06-101-3/+3
| | | | Restricted to scene
* Add Mesh ConvexDecompositionSettings wrappersmix82023-04-071-5/+11
| | | | Adds wrapper MeshConvexDecompositionSettings to control parameters for Mesh ConvexDecomposition operations.
* Fixed incorrect ERROR message when setting new PrimitiveMeshJohan Aires Rastén2023-03-041-1/+3
| | | | | | | If calling set_mesh with a PrimitiveMesh that has pending update, the _mesh_changed function would be called twice. The first time before set_base had been called, which could lead to an ERROR message about trying to set an invalid surface override material.
* One Copyright Update to rule them allRémi Verschelde2023-01-051-29/+29
| | | | | | | | | | | | | | | | | | | | As many open source projects have started doing it, we're removing the current year from the copyright notice, so that we don't need to bump it every year. It seems like only the first year of publication is technically relevant for copyright notices, and even that seems to be something that many companies stopped listing altogether (in a version controlled codebase, the commits are a much better source of date of publication than a hardcoded copyright statement). We also now list Godot Engine contributors first as we're collectively the current maintainers of the project, and we clarify that the "exclusive" copyright of the co-founders covers the timespan before opensourcing (their further contributions are included as part of Godot Engine contributors). Also fixed "cf." Frenchism - it's meant as "refer to / see".
* Remove compatibility code for MeshInstance3D surface override materialclayjohn2022-12-221-12/+1
|
* Switch surface indexing to start at 0 so string name matches integer indexclayjohn2022-12-161-8/+9
|
* Merge pull request #69527 from clayjohn/surface-nameRémi Verschelde2022-12-141-4/+15
|\ | | | | | | Index override surface name starting from 1 to match surface name
| * Index override surface name starting from 1 to match surface nameclayjohn2022-12-071-4/+15
| |
* | [TextMesh] Fix autotranslate.bruvzg2022-12-041-0/+5
|/
* Use a more specific type for Mesh create_(convex|trimesh)_shapeAaron Franke2022-11-251-2/+4
|
* Fix MSVC warnings, rename shadowed variables, fix uninitialized values, ↵bruvzg2022-10-071-10/+10
| | | | change warnings=all to use /W4.
* Move "Create Debug Tangents" into an editor pluginbad2022-10-031-12/+18
| | | | | | | Instead of exporting the "create_debug_tangents" function via METHOD_FLAG_EDITOR it gets executed by an editor plugin. This moves it from the "Manage object properties" menu into a mesh menu. It also adds undo/redo functionality to the create debug tangents option.
* Fixed surface material overrides are not applied when the new mesh is setNong Van Tinh2022-08-301-1/+8
|
* Add dedicated macros for property name extractionHaoyu Qiu2022-05-191-1/+1
| | | | | | | * Replace case-by-case extraction with PNAME & GNAME * Fix group handling when group hint begins with property name * Exclude properties that are PROPERTY_USAGE_NO_EDITOR * Extract missing ADD_ARRAY*, ADD_SUBGROUP* macros
* Replace most uses of Map by HashMapreduz2022-05-161-4/+4
| | | | | | | | | | | | * Map is unnecessary and inefficient in almost every case. * Replaced by the new HashMap. * Renamed Map to RBMap and Set to RBSet for cases that still make sense (order matters) but use is discouraged. There were very few cases where replacing by HashMap was undesired because keeping the key order was intended. I tried to keep those (as RBMap) as much as possible, but might have missed some. Review appreciated!
* Discern between virtual and abstract class bindingsreduz2022-03-101-12/+0
| | | | | | | | | | | | | | * Previous "virtual" classes (which can't be instantiated) are not corretly named "abstract". * Added a new "virtual" category for classes, they can't be instantiated from the editor, but can be inherited from script and extensions. * Converted a large amount of classes from "abstract" to "virtual" where it makes sense. Most classes that make sense have been converted. Missing: * Physics servers * VideoStream * Script* classes. which will go in a separate PR due to the complexity involved.
* Use `switch` consistently in `_notification` (`scene` folder)Rémi Verschelde2022-02-151-2/+4
|
* Update copyright statements to 2022Rémi Verschelde2022-01-031-2/+2
| | | | Happy new year to the wonderful Godot community!
* Remove node_hrcr hackkobewi2021-10-281-7/+7
|
* Implement Animation Blend Shape Tracksreduz2021-10-161-18/+56
| | | | | | | | | | * New track type BLEND_SHAPE * Blend shapes are imported via this new track type * Processing is more optimized (no longer relies on variants) * Modified the Blend Shape API in MeshInstance3D to use indices rather than StringNames (more optimizes) * Promo: Fixed a small bug in gizmo updating in Node3D that affected performance Dedicated BlendShape tracks are required for both optimization and eventually implementing them in animation compression.
* Remove REST transform influence in skeleton bonesreduz2021-10-131-1/+3
| | | | | | * Animations and Skeletons are now pose-only. * Rest transform is kept as reference (when it exists) and for IK * Improves 3D model compatibility (non uniform transforms will properly work, as well as all animations coming from Autodesk products).
* Merge pull request #53208 from timothyqiu/headless-crashRémi Verschelde2021-10-011-0/+2
|\
| * Fix crash in headless modeHaoyu Qiu2021-09-291-0/+2
| |
* | Use range iterators for `Map`Lightning_A2021-09-301-2/+2
|/
* Improve collision generation usability in the new 3D scene import workflow.AndreaCatania2021-09-081-1/+2
| | | | | | | | | | | | | | | | | With this PR it's possible to add a collision during the Mesh import, directly in editor. To generate the shape is possible to chose between the following options: - Decompose Convex: The Mesh is decomposed in one or many Convex Shapes (Using the VHACD library). - Simple Convex: Is generated a convex shape that enclose the entire mesh. - Trimesh: Generate a trimesh shape using the Mesh faces. - Box: Add a primitive box shape, where you can tweak the `size`, `position`, `rotation`. - Sphere: Add a primitive sphere shape, where you can tweak the `radius`, `position`, `rotation`. - Cylinder: Add a primitive cylinder shape, where you can tweak the `height`, `radius`, `position`, `rotation`. - Capsule: Add a primitive capsule shape, where you can tweak the `height`, `radius`, `position`, `rotation`. It's also possible to chose the generated body, so you can create: - Rigid Body - Static Body - Area
* Fix some unnecessary includesAaron Franke2021-08-131-2/+0
|
* Use const references where possible for List range iteratorsRémi Verschelde2021-07-251-1/+1
|
* Use C++ iterators for Lists in many situationsAaron Franke2021-07-231-2/+2
|
* Node3D gizmo improvementsjfons2021-07-231-2/+2
| | | | | | | | * Clean-up of node_3d_editor_plugin.{h,cpp}: removed unused code, fixed some bugs. * Moved node_3d_editor_gizmos.{h,cpp} to editor/plugins. * Added support for multiple gizmos per node. This means custom gizmos will no longer override the built-in ones and that multiple gizmos can be used in more complex nodes. * Added support for handle IDs. When adding handles to a gizmo, an ID can be specified for each one, making it easier to work with gizmos that have a variable number of handles. * Added support for subgizmos, selectable elements that can be transformed without needing a node of their own. By overriding _subgizmo_intersect_frustum() and/or _subgizmo_intersect_ray() gizmos can define which subgizmos should be selected on a region or click selection. Subgizmo transformations are applied using get/set/commit virtual methods, similar to how handles work.
* Options to clean/simplify convex hull generated from meshPouleyKetchoupp2021-07-071-5/+5
| | | | | | | | | | Clean: remove duplicate and interior vertices (uses Bullet algorithm) Simplify: modify the geometry for further simplification (uses VHACD algorithm) In the editor, single convex hull now uses the clean option. Added a new editor entry to create a simplified convex hull, can be useful for creating convex hull from highly tessellated triangle meshes.
* Allow using ORMMaterial3D by using BaseMaterial3D as a resource hintHugo Locurcio2021-07-041-1/+1
| | | | | | | | Previously, only StandardMaterial3D could be defined as an alternative to ShaderMaterial. This also reorders the CanvasItemMaterial property hints to follow alphabetical order (which is enforced by the inspector).
* Rename `instance()`->`instantiate()` when it's a verbLightning_A2021-06-191-2/+2
|
* Fix accessing scene tree without checking: ↵kleonc2021-05-161-1/+1
| | | | MeshInstance3D::create_debug_tangents, GIProbe::bake
* Merge pull request #48050 from JFonS/occlusion_cullingRémi Verschelde2021-04-271-0/+1
|\
| * Implement occlusion cullingjfons2021-04-231-0/+1
| | | | | | | | | | | | | | | | | | Added an occlusion culling system with support for static occluder meshes. It can be enabled via `Project Settings > Rendering > Occlusion Culling > Use Occlusion Culling`. Occluders are defined via the new `Occluder3D` resource and instanced using the new `OccluderInstance3D` node. The occluders can also be automatically baked from a scene using the built-in editor plugin.
* | Expose creating multiple-convex-collision static bodies to GDScriptasheraryam2021-04-271-0/+37
|/
* Fix forgotten rename on surface material overrideBastiaan Olij2021-04-151-2/+2
|