summaryrefslogtreecommitdiffstats
path: root/scene/resources/mesh.cpp
Commit message (Collapse)AuthorAgeFilesLines
* Replace `find` with `contains/has` where applicableA Thousand Ships2024-05-081-1/+1
| | | | | | | * Replaces `find(...) != -1` with `contains` for `String` * Replaces `find(...) == -1` with `!contains` for `String` * Replaces `find(...) != -1` with `has` for containers * Replaces `find(...) == -1` with `!has` for containers
* Expose create_from_arrays in SurfaceTool and cleanup some namingLyuma2024-04-191-1/+1
|
* Disable all 3D nodes, physics, and resources when compiling without 3DAaron Franke2024-03-111-0/+6
|
* Move 3D-only resources to their own folderAaron Franke2024-02-261-2/+2
|
* Fix some additional errors with 3D disabledA Thousand Ships2024-02-231-0/+2
| | | | | | | | | * Disabled 2D navigation tests as they do not work * Disabled tests for primitive meshes * Unbound some `Mesh` methods that rely on 3D resources * Unexposed `World3D` as it depends on physics (and isn't useful) * Unexposed some `Viewport` vrs related properties that had unexposed methods
* Store ArrayMesh path in RenderingServer for use in error messagesclayjohn2023-11-141-0/+2
|
* Fix multiple issues with UV compressionclayjohn2023-10-301-0/+2
|
* Merge pull request #84054 from AThousandShips/mesh_fixRémi Verschelde2023-10-271-1/+1
|\ | | | | | | Fix invalid return from some `_get/_set`
| * Fix invalid return from some `_get/_set`A Thousand Ships2023-10-271-1/+1
| | | | | | | | Invalidly returned `true` on the non-matched path
* | Fix crash when upgrading meshes from 3.x formatclayjohn2023-10-271-1/+1
|/
* Some more fixes for compressed meshesclayjohn2023-10-241-1/+8
| | | | | | | This cleans up a few more cases of uint32_t->uint64_t Importantly this fixes an edge case in the axis-angle compression by using the pre-existing Basis methods instead
* Implementation of tool to automatically upgrade and re-save meshesclayjohn2023-10-231-1/+1
|
* Sanitize tangents when creating mesh surfaces to avoid triggering the ↵clayjohn2023-10-131-0/+10
| | | | compressed mesh path in the shader
* Vertex and attribute compression to reduce the size of the vertex format.clayjohn2023-10-051-16/+30
| | | | | | | | | | | | | This allows Godot to automatically compress meshes to save a lot of bandwidth. In general, this requires no interaction from the user and should result in no noticable quality loss. This scheme is not backwards compatible, so we have provided an upgrade mechanism, and a mesh versioning mechanism. Existing meshes can still be used as a result, but users can get a performance boost by reimporting assets.
* Use NULL instead of COND checks when appropriateNinni Pipping2023-06-101-2/+2
| | | | Restricted to scene
* Add ValidatedCall to MethodBindJuan Linietsky2023-04-301-1/+5
| | | | | | | * This should optimize GDScript function calling _enormously_. * It also should simplify the GDScript VM considerably. NOTE: GDExtension calling performance has most likely been affected until going via ptrcall is fixed.
* Add Mesh ConvexDecompositionSettings wrappersmix82023-04-071-3/+167
| | | | Adds wrapper MeshConvexDecompositionSettings to control parameters for Mesh ConvexDecomposition operations.
* Prevent crash in ImmediateMesh.create_outline by ensuringChris Hutchinson2023-02-141-0/+3
| | | | | that when no indices are specified, the number of vertices is at least a factor of 3. Fixes #73201
* Merge pull request #70377 from dsnopek/server-export-mk2Rémi Verschelde2023-01-231-0/+8
|\ | | | | | | Add "dedicated server" export mode which can strip unneeded visual resources
| * Add "dedicated server" export mode which can strip unneeded visual resourcesDavid Snopek2023-01-231-0/+8
| |
* | Merge pull request #71214 from SekoiaTree/remove_mesh_surface_compatRémi Verschelde2023-01-231-11/+0
|\ \ | | | | | | | | | Remove compatibility code for Mesh surfaces
| * | Remove compatibility code for Mesh surfacesSekoiaTree2023-01-111-11/+0
| |/
* | Merge pull request #69619 from m4gr3d/address_android_editor_crashes_mainRémi Verschelde2023-01-221-0/+1
|\ \ | | | | | | | | | Address Android editor crashes
| * | Address Android editor crashesFredia Huya-Kouadio2022-12-051-0/+1
| | | | | | | | | | | | - Add workaround for crash when resuming existing project
* | | Fix LOD sort order; checks in add_surface; and document all parameters of ↵RedworkDE2023-01-191-1/+4
| |/ |/| | | | | | | | | `ArrayMesh::add_surface_from_arrays` Also clarify some related documentation and expose the misssing `ArrayFormat::ARRAY_FLAG_USES_EMPTY_VERTEX_ARRAY`
* | Use BitField<> hint for ArrayFormatJuan Linietsky2023-01-081-33/+33
| | | | | | | | This was missing in the conversion of bitflags to BitField<>.
* | 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".
* | Add safety-checks before some servers `free()`Adam Scott2022-12-291-0/+2
| |
* | Switch surface indexing to start at 0 so string name matches integer indexclayjohn2022-12-161-5/+17
|/
* Simplify GDVIRTUAL_REQUIRED_CALL callskobewi2022-11-301-68/+32
|
* Use a more specific type for Mesh create_(convex|trimesh)_shapeAaron Franke2022-11-251-3/+3
|
* fix old mesh conversion offsetsnikitalita2022-11-101-6/+6
|
* SCons: Re-enable treating `#warning` as error with `werror`Rémi Verschelde2022-10-101-3/+2
| | | | | | | | Replace all TODO uses of `#warning` by proper TODO comments, and will open matching bug reports to keep track of them. We don't have a great track record fixing TODOs, but I'd wager we're even worse for fixing these "TODO #warning" so we should prohibit this usage.
* Fix MSVC warnings, rename shadowed variables, fix uninitialized values, ↵bruvzg2022-10-071-21/+21
| | | | change warnings=all to use /W4.
* Revert usage of typed array in `add_surface_from_arrays` parametersYuri Rubinsky2022-09-021-1/+1
|
* Change Array arguments to TypedArraykobewi2022-09-011-1/+1
|
* Replace Array return types with TypedArray 2kobewi2022-08-231-5/+5
|
* Merge pull request #60309 from The-O-King/octRémi Verschelde2022-08-221-102/+47
|\
| * Octahedral Normal/Tangent CompressionOmar El Sheikh2022-08-131-102/+47
| | | | | | | | Implementation of Octahedral normal compression into Godot 4.0
* | Clean up mesh include code and commentsAaron Franke2022-08-201-3/+2
| |
* | Remove requirement to have vertex positions when creating a mesh. Meshes can ↵clayjohn2022-08-191-1/+4
|/ | | | now be constructed from an index buffer alone
* Add drag-and-drop support for materials in 3DSaracenOne2022-07-191-0/+66
| | | Add mesh surface picking for material drag & drop, show drag info label
* Add surface indices to TriangleMeshreduz2022-06-221-0/+11
| | | | Helps unblock #56597
* Add suffixes to all nodes and resourcesFireForge2022-06-111-2/+2
|
* Make `Mesh::generate_triangle_mesh()` handle `PRIMITIVE_TRIANGLE_STRIP`kleonc2022-05-311-17/+46
|
* Replace most uses of Map by HashMapreduz2022-05-161-6/+6
| | | | | | | | | | | | * 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!
* Merge pull request #60727 from aaronfranke/basis-axis-columnRémi Verschelde2022-05-031-1/+1
|\
| * Rename Basis get_axis to get_column, remove redundant methodsAaron Franke2022-05-031-1/+1
| |
* | Implement placeholder assetsreduz2022-04-281-0/+14
|/ | | | | | | | | * Placeholder textures * Placeholder meshes * Placeholder material This PR is the first step towards implementing https://github.com/godotengine/godot-proposals/issues/2756 It adds an asset type that uses no resources, which can be used to replace the existing ones on export for using on the upcoming server export.
* Discern between virtual and abstract class bindingsreduz2022-03-101-0/+131
| | | | | | | | | | | | | | * 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.