summaryrefslogtreecommitdiffstats
path: root/modules/csg/csg_shape.cpp
Commit message (Collapse)AuthorAgeFilesLines
...
* | Fix another batch of -Wmaybe-uninitialized warningsRémi Verschelde2020-03-301-8/+4
| | | | | | | | And simplify code in CSGShape.
* | Renaming of servers for coherency.Juan Linietsky2020-03-271-14/+14
| | | | | | | | | | | | | | | | | | | | VisualServer -> RenderingServer PhysicsServer -> PhysicsServer3D Physics2DServer -> PhysicsServer2D NavigationServer -> NavigationServer3D Navigation2DServer -> NavigationServer2D Also renamed corresponding files.
* | Renamed 2D and 3D nodes to make their types explicitJuan Linietsky2020-03-271-250/+250
| | | | | | | | Fixes #30736.
* | Fix various -Wmaybe-uninitialized (#37352).Martin Liska2020-03-271-2/+2
|/
* Style: Set clang-format Standard to Cpp11Rémi Verschelde2020-03-171-7/+7
| | | | | | | | | | For us, it practically only changes the fact that `A<A<int>>` is now used instead of the C++03 compatible `A<A<int> >`. Note: clang-format 10+ changed the `Standard` arguments to fully specified `c++11`, `c++14`, etc. versions, but we can't use `c++17` now if we want to preserve compatibility with clang-format 8 and 9. `Cpp11` is still supported as deprecated alias for `Latest`.
* Signals: Port connect calls to use callable_mpRémi Verschelde2020-02-281-13/+8
| | | | | | | | | Remove now unnecessary bindings of signal callbacks in the public API. There might be some false positives that need rebinding if they were meant to be public. No regular expressions were harmed in the making of this commit. (Nah, just kidding.)
* Variant: Added 64-bit packed arrays, renamed Variant::REAL to FLOAT.Juan Linietsky2020-02-251-12/+12
| | | | | | | | | | | | | | | | | | | | | - Renames PackedIntArray to PackedInt32Array. - Renames PackedFloatArray to PackedFloat32Array. - Adds PackedInt64Array and PackedFloat64Array. - Renames Variant::REAL to Variant::FLOAT for consistency. Packed arrays are for storing large amount of data and creating stuff like meshes, buffers. textures, etc. Forcing them to be 64 is a huge waste of memory. That said, many users requested the ability to have 64 bits packed arrays for their games, so this is just an optional added type. For Variant, the float datatype is always 64 bits, and exposed as `float`. We still have `real_t` which is the datatype that can change from 32 to 64 bits depending on a compile flag (not entirely working right now, but that's the idea). It affects math related datatypes and code only. Neither Variant nor PackedArray make use of real_t, which is only intended for math precision, so the term is removed from there to keep only float.
* Reworked signal connection system, added support for Callable and Signal ↵Juan Linietsky2020-02-201-8/+8
| | | | objects and made them default.
* PoolVector is gone, replaced by VectorJuan Linietsky2020-02-181-96/+90
| | | | | Typed `PoolTypeArray` types are now renamed `PackedTypeArray` and are sugar for `Vector<Type>`.
* Modernized default 3D material, fixes material bugs.Juan Linietsky2020-02-111-6/+6
|
* Update copyright statements to 2020Rémi Verschelde2020-01-011-2/+2
| | | | | | | | | | | Happy new year to the wonderful Godot community! We're starting a new decade with a well-established, non-profit, free and open source game engine, and tons of further improvements in the pipeline from hundreds of contributors. Godot will keep getting better, and we're looking forward to all the games that the community will keep developing and releasing with it.
* Merge pull request #32051 from qarmin/some_error_explanationRémi Verschelde2019-09-251-2/+2
|\ | | | | Added some obvious errors explanations
| * Added some obvious errors explanationsqarmin2019-09-251-2/+2
| |
* | Notify changes in properties that can be edited by 3D gizmosHugo Locurcio2019-07-101-0/+8
|/ | | | | This makes the Inspector always display an up-to-date value after editing properties using 3D gizmos.
* Added release function to PoolVector::Access.Ibrahn Sahir2019-07-061-4/+4
| | | | | | For clarity, assign-to-release idiom for PoolVector::Read/Write replaced with a function call. Existing uses replaced (or removed if already handled by scope)
* Improve the CSG shape gizmo drawingHugo Locurcio2019-07-051-0/+1
| | | | | | | | | The gizmo colors now depend on the operation. Subtraction will result in an inverted gizmo color, whereas intersection is now displayed as white. A solid translucent overlay is now drawn over a selected node to make it easier to distinguish.
* Fix always true/false valuesqarmin2019-06-201-5/+3
|
* Resolve: #24682 CSGPolygon - weird end capJason2019-05-171-0/+3
|
* CSGMesh material and CSGShape inherits from GeometryInstanceLeonard Meagher2019-04-111-1/+23
| | | | | | I left the material on CSGMesh because GeometryInstance's material override prevents the normal material behaviour of the csg meshes but the material_override is useful, and now you can control the shadow, lod and other properties you get from GeometryInstance
* Apply proper offset to CSGMesh material and smooth groupLeonard2019-03-251-4/+4
|
* Fix CSGShape not updating on changing visibilityAndrii Doroshenko (Xrayez)2019-02-101-0/+7
| | | | | Hiding CSGShape should force the CSG operation to skip it which is intented behaviour according to how CSGBrush is created for each shape.
* Make CSG Shape work with GIProbe, fixes #20465Juan Linietsky2019-01-271-0/+14
|
* Fix some errors found by static analysisRémi Verschelde2019-01-161-2/+2
| | | | | Fixes items 10, 16 and 19 from PVS-Studio blog post in #24014.
* Update copyright statements to 2019Rémi Verschelde2019-01-011-2/+2
| | | | Happy new year to the wonderful Godot community!
* Add support for collision layers and masks in CSG shapesmeditator2018-12-151-9/+90
|
* Reverse bitangent on everythings to ensure default normal map behavriour is ↵Bastiaan Olij2018-12-081-12/+1
| | | | consistent
* Fix csgshape collider without object idAron Castro2018-12-031-0/+2
|
* Merge pull request #23760 from BastiaanOlij/fix_tangent_directionRémi Verschelde2018-11-201-8/+6
|\ | | | | Fixing tangent and binormal logic
| * Fixing tangent and binormal logicBastiaan Olij2018-11-191-8/+6
| |
* | Adding UVs on end capsBastiaan Olij2018-11-191-3/+34
|/
* Adding mikkt tangent support to CSG objectsBastiaan Olij2018-11-171-3/+124
|
* Fix CSG shape generation with meshes without indices, fixes #23364Juan Linietsky2018-11-011-2/+2
|
* Added a fail condition to prevent a crashJean-François Michaud2018-10-151-0/+5
|
* Fix GCC 8 warnings about potentially unitialized variablesRémi Verschelde2018-10-041-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | Fixes the following GCC 8 warnings: ``` core/image.cpp:730:44: warning: 'mip1_weight' may be used uninitialized in this function [-Wmaybe-uninitialized] core/image.cpp:293:20: warning: 'mip2' may be used uninitialized in this function [-Wmaybe-uninitialized] core/image.cpp:293:20: warning: 'mip1' may be used uninitialized in this function [-Wmaybe-uninitialized] editor/audio_stream_preview.cpp:58:19: warning: 'vmax' may be used uninitialized in this function [-Wmaybe-uninitialized] editor/audio_stream_preview.cpp:85:19: warning: 'vmin' may be used uninitialized in this function [-Wmaybe-uninitialized] editor/editor_themes.cpp:306:53: warning: 'preset_contrast' may be used uninitialized in this function [-Wmaybe-uninitialized] editor/plugins/animation_blend_space_2d_editor.cpp:459:27: warning: 'prev_idx' may be used uninitialized in this function [-Wmaybe-uninitialized] editor/plugins/animation_blend_space_2d_editor.cpp:443:27: warning: 'prev_idx' may be used uninitialized in this function [-Wmaybe-uninitialized] main/tests/test_oa_hash_map.cpp:57:29: warning: 'value' may be used uninitialized in this function [-Wmaybe-uninitialized] modules/csg/csg.cpp:764:40: warning: 'max_angle' may be used uninitialized in this function [-Wmaybe-uninitialized] modules/csg/csg_shape.cpp:1945:3: warning: 'face_count' may be used uninitialized in this function [-Wmaybe-uninitialized] scene/3d/voxel_light_baker.cpp:1593:8: warning: 'cone_aperture' may be used uninitialized in this function [-Wmaybe-uninitialized] scene/3d/voxel_light_baker.cpp:1592:6: warning: 'cone_dir_count' may be used uninitialized in this function [-Wmaybe-uninitialized] scene/animation/animation_blend_space_2d.cpp:471:8: warning: 'mind' may be used uninitialized in this function [-Wmaybe-uninitialized] core/os/memory.cpp:94: warning: ignoring #pragma clang diagnostic [-Wunknown-pragmas] core/os/memory.cpp:95: warning: ignoring #pragma clang diagnostic [-Wunknown-pragmas] core/os/memory.cpp:98: warning: ignoring #pragma clang diagnostic [-Wunknown-pragmas] ```
* Fix to make CSGBox the size that is entered in Width, Height and Depth ↵jmf2018-08-281-4/+4
| | | | instead of twice those lengths.
* Make some debug prints verbose-only, remove othersRémi Verschelde2018-08-241-4/+0
|
* Reduce unnecessary COW on Vector by make writing explicitHein-Pieter van Braam2018-07-261-14/+14
| | | | | | | | | | | | | | | | | | | | | | | This commit makes operator[] on Vector const and adds a write proxy to it. From now on writes to Vectors need to happen through the .write proxy. So for instance: Vector<int> vec; vec.push_back(10); std::cout << vec[0] << std::endl; vec.write[0] = 20; Failing to use the .write proxy will cause a compilation error. In addition COWable datatypes can now embed a CowData pointer to their data. This means that String, CharString, and VMap no longer use or derive from Vector. _ALWAYS_INLINE_ and _FORCE_INLINE_ are now equivalent for debug and non-debug builds. This is a lot faster for Vector in the editor and while running tests. The reason why this difference used to exist is because force-inlined methods used to give a bad debugging experience. After extensive testing with modern compilers this is no longer the case.
* Added path_local and path_continious_u properties to CSGPolygonBastiaan Olij2018-07-071-8/+70
|
* Changes to how node paths are selected from property, allowing setting a hint.Juan Linietsky2018-06-271-1/+1
|
* Fix CSG issues when reparenting shape nodes.Benjamin2018-06-101-0/+9
|
* Add missing copyright headersGuilherme Felipe2018-05-161-0/+30
|
* Allow editing of some unbound properties when hinted (or no range hinted)Juan Linietsky2018-05-161-9/+9
|
* Fix some enums missing its bindMarcelo Fernandez2018-05-081-3/+3
|
* updated OAHashMap to use robinhood hashingkarroffel2018-05-031-2/+2
|
* Add poly triangulation order check, ensures faces do not flip on different orderJuan Linietsky2018-04-281-27/+33
|
* -Changed how operators work, any shape can operate on any otherJuan Linietsky2018-04-281-112/+76
| | | | -Added some break condition for bad poly data to avoid editor freezes
* Do not crash if the polygon is invalidJuan Linietsky2018-04-281-0/+3
|
* CSG Support for Godot!Juan Linietsky2018-04-271-0/+2152
-Missing Icons -Missing freezing option (for baking light and faster load) -Missing a way to export from Godot (GLTF2?) -Probably buggy (may freeze editor, can be worked around easily, but let me know if this happens so it's easier to catch bugs) Happy testing!