George Marques
fa498f6105
Merge pull request #45373 from aaronfranke/gdnative-sizeof
...
Define GDNative sizes using sizeof(godot_real) and sizeof(int32_t)
2021-01-26 14:00:32 -03:00
Marcel Admiraal
8b983bddfb
Remove Quat set methods in favour of constructors
2021-01-26 06:52:04 +00:00
Aaron Franke
6c197cf259
Define GDNative sizes using sizeof(godot_real_t) and sizeof(int32_t)
2021-01-25 16:42:14 -05:00
Rémi Verschelde
8a6d4dd5ed
Merge pull request #45023 from reduz/optimize-shader-vgpr1
...
Shader optimizations to reduce VGPR usage and increase occupancy
2021-01-20 00:10:21 +01:00
reduz
099dee35f4
Added GPU based cluster builder
...
Clustering is now GPU based, uses an implementation based on the Activision algorithm.
2021-01-19 23:31:06 +01:00
PouleyKetchoupp
356d0fccc2
Remove useless "else" statements from vector3.h
2021-01-19 16:36:29 -05:00
Rémi Verschelde
0b409d89d0
Merge pull request #45136 from akien-mga/clang-format-11
...
CI: Update to clang-format 11 and apply ternary operator changes
2021-01-13 16:10:44 +01:00
Aaron Franke
ddd6fb37e8
Update PolyPartition / Triangulator library
2021-01-12 13:46:16 -05:00
Rémi Verschelde
af878716f2
CI: Update to clang-format 11 and apply ternary operator changes
2021-01-12 19:32:53 +01:00
Rémi Verschelde
9349a5507f
Merge pull request #35505 from dalexeev/rtl_colors
...
Unified named colors in RichTextLabel
2021-01-08 09:03:55 +01:00
Mai Lavelle
4cb070e590
Fix xform_inv of Plane, intermediate results were ignored
2021-01-03 23:49:39 -05:00
Rémi Verschelde
b5334d14f7
Update copyright statements to 2021
...
Happy new year to the wonderful Godot community!
2020 has been a tough year for most of us personally, but a good year for
Godot development nonetheless with a huge amount of work done towards Godot
4.0 and great improvements backported to the long-lived 3.2 branch.
We've had close to 400 contributors to engine code this year, authoring near
7,000 commit! (And that's only for the `master` branch and for the engine code,
there's a lot more when counting docs, demos and other first-party repos.)
Here's to a great year 2021 for all Godot users 🎆
2021-01-01 20:19:21 +01:00
Marcus Brummer
e455ca2f2f
Added Geometry2D unit tests
2020-12-30 21:11:09 +01:00
Rémi Verschelde
6cebb8c117
Merge pull request #44586 from madmiraal/rename-stepify
...
Rename Math::stepify to snapped
2020-12-28 21:46:43 +01:00
Rémi Verschelde
058f3fe069
Merge pull request #44149 from madmiraal/rename-tangent-orthogonal
...
Rename Vector2.tangent() to Vector2.orthogonal()
2020-12-28 16:00:12 +01:00
Marcel Admiraal
b743a2ef3c
Rename Math::stepify to snapped
2020-12-28 13:01:30 +00:00
Marcel Admiraal
b628912af0
Rename Rect2 and Rect2i grow_margin() to grow_side()
2020-12-28 12:47:33 +00:00
Marcel Admiraal
5b937d493f
Rename empty() to is_empty()
2020-12-28 10:39:56 +00:00
reduz
2e66e5d599
Use page allocator for BVH
2020-12-24 14:08:03 -03:00
reduz
1bebb2ba05
Cull fixes and optimizations
2020-12-24 12:18:28 -03:00
lawnjelly
6d687de9b8
Fix BVH to world_aabb, and call update
...
The calls to the BVH need to use the world space AABB, rather than local space for it to work. Also, update was not being called which is required to update the AABB as objects move.
2020-12-24 11:19:50 +00:00
reduz
83058597cf
Replace Octree by DynamicBVH in cull code
...
-Much greater pairing/unpairing performance
-For now, using it for culling too, but this will change in a couple of days.
-Added a paged allocator, to efficiently alloc/free some types of objects.
2020-12-23 19:31:30 -03:00
Marcel Admiraal
4b8b803931
Rename Control margin to offset
2020-12-23 06:25:56 +00:00
Marco Cognetta
900e55eb70
simplify randi_range
2020-12-21 20:25:58 -05:00
reduz
5ff89931c7
Add a Dynamic BVH implementation.
...
-Based on Bullet Dbvh, has style and functional changes.
-Provides efficient pairing
-Needed to optimize rendering
-Needed to optimize physics
This PR is up for others to review the implementation.
2020-12-19 20:23:37 -03:00
Marcel Admiraal
2df9a8ccad
Rename Rect2 and Rect2i clip() to intersection()
2020-12-19 12:59:08 +00:00
reduz
d2302f53d6
Implement automatic LOD (Level of Detail)
...
-Happens on import by default for all models
-Just works (tm)
-Biasing can be later adjusted per node or per viewport (as well as globally)
-Disabled AABB.get_support test because its broken
2020-12-18 15:48:03 +01:00
Rémi Verschelde
114f97ff11
Merge pull request #44128 from KoBeWi/ 🧹
...
Cleanup unused engine code
2020-12-09 13:01:50 +01:00
Tomasz Chabora
2c048ea164
Cleanup unused engine code
2020-12-09 12:12:36 +01:00
Rémi Verschelde
0c5d3b838c
Merge pull request #44199 from bruvzg/pvs_fixes_1
...
PVS-Studio static analyzer fixes
2020-12-09 10:23:21 +01:00
bruvzg
644f739660
Static analyzer fixes:
...
Removes unused code in OS.
Fixes return types.
Fixes few typos.
2020-12-09 10:17:53 +02:00
Rémi Verschelde
2034a1cca0
Merge pull request #44089 from Xrayez/rng-state
...
Add ability to restore `RandomNumberGenerator` state
2020-12-08 21:40:38 +01:00
Andrii Doroshenko (Xrayez)
b5107715f1
Add ability to restore `RandomNumberGenerator` state
...
- added `state` as a property to restore internal state of RNG;
- `get_seed()` returns last seed used to initialize the state rather than the current state.
Co-authored-by: MidZik <matt.idzik1@gmail.com>
2020-12-07 13:50:46 +02:00
Aaron Franke
5465e604bb
Improve argument names for core types
2020-12-07 05:01:33 -05:00
Marcel Admiraal
a24c38d1a8
Rename Vector2.tangent() to Vector2.orthogonal()
2020-12-06 18:16:06 +00:00
bruvzg
99666de00f
[Complex Text Layouts] Refactor Font class, default themes and controls to use Text Server interface.
...
Implement interface mirroring.
Add TextLine and TextParagraph classes.
Handle UTF-16 input on macOS and Windows.
2020-11-26 14:25:48 +02:00
Rafał Mikrut
7bd03b7188
Initialize class/struct variables with default values in core/ and drivers/
2020-11-23 17:38:46 +01:00
Aaron Franke
02161aad5a
Remove empty lines around braces with the formatting script
2020-11-16 23:38:11 -05:00
Danil Alexeev
01d0addf56
Unified named colors in RichTextLabel
...
Now the BB tag `[color]` uses the color names from the `Color` class.
Also, the use of the `#` symbol in an HTML color code has become optional.
2020-11-17 02:55:36 +03:00
reduz
635d33dc6c
Refactor variant built-in methods yet again.
...
* Using C-style function pointers now, InternalMethod is gone.
* This ensures much better performance in typed code.
* Renamed builtin_funcs to utility_funcs, to avoid naming confusion
2020-11-11 16:36:36 -03:00
Rémi Verschelde
fb2151089c
Merge pull request #43372 from aaronfranke/clamp-fixes
...
Minor clamp and float fixes
2020-11-11 13:20:19 +01:00
reduz
5288ff538d
Create Variant built-in functions.
...
-Moved Expression to use this, removed its own.
-Eventually GDScript/VisualScript/GDNative need to be moved to this.
-Given the JSON functions were hacked-in, removed them and created a new JSONParser class
-Made sure these functions appear properly in documentation, since they will be removed from GDScript
2020-11-10 19:31:10 -03:00
Aaron Franke
ee79fc627c
Minor clamp and float fixes
2020-11-10 14:30:07 -05:00
Rémi Verschelde
0f249f5c0a
Variant: Sync docs with new constructors, fixups after #43403
...
Change DocData comparators for MethodDoc and ArgumentDoc to get a better
ordering of constructors.
2020-11-09 23:39:53 +01:00
Rémi Verschelde
8a318fe1dd
Merge pull request #43404 from akien-mga/color-fix-clamp-uint32_t-warning
...
Color: Fix -Wtype-limits GCC warning after refactoring
2020-11-09 14:59:11 +01:00
Rémi Verschelde
771b3c583d
Color: Fix -Wtype-limits GCC warning after refactoring
...
Warning from GCC 10.2.0 with `warnings=extra`:
```
./core/math/color.h: In member function 'int32_t Color::get_r8() const':
./core/typedefs.h:107:42: error: comparison of unsigned expression in '< 0' is always false [-Werror=type-limits]
107 | #define CLAMP(m_a, m_min, m_max) (((m_a) < (m_min)) ? (m_min) : (((m_a) > (m_max)) ? m_max : m_a))
| ~~~~~~^~~~~~~~~
./core/math/color.h:201:49: note: in expansion of macro 'CLAMP'
201 | _FORCE_INLINE_ int32_t get_r8() const { return CLAMP(uint32_t(r * 255.0), 0, 255); }
| ^~~~~
```
Also some code consistency changes while at it.
2020-11-09 14:11:21 +01:00
reduz
221a2a1742
Refactored variant constructor logic
2020-11-09 08:54:43 -03:00
reduz
127458ed17
Reorganized core/ directory, it was too fatty already
...
-Removed FuncRef, since Callable makes it obsolete
-Removed int_types.h as its obsolete in c++11+
-Changed color names code
2020-11-07 20:17:12 -03:00
reduz
05de7ce6ca
Refactored variant setters/getters
...
-Discern between named, indexed and keyed
-Get direct access to functions for typed GDScript and GDNative bindings
-Small changes to some classes in order to work with the new setget binder
2020-11-07 15:16:15 -03:00
reduz
f2397809a8
Refactored Variant Operators.
...
-Using classes to call and a table
-For typed code (GDS or GDNative), can obtain functions to call prevalidated or ptr.
2020-11-06 12:45:50 -03:00