Rémi Verschelde
c273ddc3ee
Style: Partially apply clang-tidy's cppcoreguidelines-pro-type-member-init
...
Didn't commit all the changes where it wants to initialize a struct
with `{}`. Should be reviewed in a separate PR.
Option `IgnoreArrays` enabled for now to be conservative, can be
disabled to see if it proposes more useful changes.
Also fixed manually a handful of other missing initializations / moved
some from constructors.
2022-05-02 16:28:25 +02:00
bruvzg
9381acb6a4
Make FileAccess and DirAccess classes reference counted.
2022-04-11 13:28:51 +03:00
Rémi Verschelde
f8ab79e68a
Zero initialize all pointer class and struct members
...
This prevents the pitfall of UB when checking if they have been
assigned something valid by comparing to nullptr.
2022-04-04 19:49:50 +02:00
Rémi Verschelde and GitHub
015fdfc28d
Merge pull request #58986 from akien-mga/diraccessref
2022-03-11 12:51:22 +01:00
Rémi Verschelde and GitHub
952b71a425
Merge pull request #58751 from bruvzg/loc_str_props
2022-03-11 10:45:02 +01:00
Rémi Verschelde and bruvzg
768f9422bc
Convert uses of DirAccess * to DirAccessRef to prevent memleaks
...
`DirAccess *` needs to be deleted manually, and this is often forgotten
especially when doing early returns with `ERR_FAIL_COND`.
`DirAccessRef` is deleted automatically when it goes out of scope.
Co-authored-by: bruvzg <7645683+bruvzg@users.noreply.github.com >
2022-03-11 09:13:11 +01:00
Rémi Verschelde
3d7f155586
Remove unused Bullet module and thirdparty code
...
It has been disabled in `master` since one year (#45852 ) and our plan
is for Bullet, and possibly other thirdparty physics engines, to be
implemented via GDExtension so that they can be selected by the users
who need them.
2022-03-09 21:45:47 +01:00
Rémi Verschelde and GitHub
78bf9926f8
Revert "Fix ProjectSettings has_setting() when used on a overriden setting with feature tags"
2022-03-07 12:33:07 +01:00
bruvzg
12cb6386f6
Improve app name and system permission message localization.
...
Add localizable string (Dictionary<Lang Code, String>) property editor and property hint.
Add localized "app name" property to the project settings.
Add localized permission and copyright properties to the macOS and iOS export settings.
Remove some duplicated ("app name") and deprecated ("info") macOS and iOS export properties.
2022-03-04 18:11:31 +02:00
Hugo Locurcio
4219485a82
Always register the Smooth Trimesh Collision project setting
...
This ensures the project setting never disappears from the editor,
even if the current physics engine is GodotPhysics.
This also adds documentation for the Smooth Trimesh Collision
project setting.
2022-03-02 18:49:34 +01:00
Hendrik Brucker
77fb65debf
Use EditorFileDialog instead of FileDialog in the project manager
2022-02-12 12:06:51 +01:00
Rémi Verschelde and GitHub
7a7fabe4f6
Merge pull request #57641 from Geometror/compilation-time-improvements-1
2022-02-12 09:46:02 +01:00
Hendrik Brucker
b396fd4eef
Improve compilation speed (forward declarations/includes cleanup)
2022-02-12 02:46:22 +01:00
BimDav
d39e416c61
has_setting now correctly returns true when the setting is present due to a feature tag
2022-02-11 14:35:30 +01:00
Rémi Verschelde
90162851a7
Core: Move generated VERSION_HASH to a .cpp file
...
This lets us have its definition in `core/version.h` and avoid
rebuilding a handful of files every time the commit hash changes.
2022-02-09 09:20:17 +01:00
Hugo Locurcio
736ac25306
Rename the physics server run_on_thread project settings
...
`run_on_separate_thread` is more explicit.
2022-01-29 17:35:50 +01:00
Rémi Verschelde and GitHub
d9a4ff7583
Merge pull request #55020 from bruvzg/vlk_device_surface_check
2022-01-17 13:34:23 +01:00
Rémi Verschelde
fe52458154
Update copyright statements to 2022
...
Happy new year to the wonderful Godot community!
2022-01-03 21:27:34 +01:00
Nathan Franke
49403cbfa0
Replace String comparisons with "", String() to is_empty()
...
Also:
- Adds two stress tests to test_string.h
- Changes to .empty() on std::strings
2021-12-09 04:48:38 -06:00
Aaron Franke
40cb86ba96
Don't show errors when getting nonexistent settings
2021-11-25 08:23:42 -06:00
Aaron Franke
9851d3c5b2
Move logic for saving project features to ProjectSettings save_custom
2021-11-25 03:08:05 -06:00
Aaron Franke
e81c689592
Project feature warning system
2021-11-24 10:32:07 -06:00
bruvzg
b11e619b19
[Vulkan] Check each device capabilities before selecting it.
...
Split instance and physical device selection function and move device selection to window creation, to reject devices without present capability.
Add device preferred type check in discrete > integrated > virtual > cpu > other order.
Add device list printout.
Add command line argument to override device selection.
2021-11-22 20:04:57 +02:00
kobewi
7dc97d6558
Ignore override.cfg when in editor
2021-11-22 16:10:31 +01:00
ne0fhyk
b5c750fa65
Restrict the project data directory configuration
2021-10-18 14:10:38 -07:00
Nathan Franke
28c163a432
Fix character encoding of Engine::get_copyright_info
2021-10-13 10:42:41 -05:00
ne0fhyk
3e44a6375e
Make the project data directory customizable.
2021-10-11 14:40:14 -07:00
Rémi Verschelde and GitHub
a7ba227631
Merge pull request #52711 from m4gr3d/provide_getter_for_project_data_dir_master
2021-10-05 21:02:27 +02:00
Lightning_A
c63b18507d
Use range iterators for Map
2021-09-30 15:09:12 -06:00
ne0fhyk
69f890ff11
Provide a getter for the project data directory.
2021-09-15 12:52:03 -07:00
Ricardo Subtil
eef0327d1e
Fix path with multiple slashes not being corrected on templates
2021-09-10 11:14:40 +01:00
Lyuma
31f790299c
Use OrderedHashMap for autoloads to preserve order
2021-08-26 21:55:26 -07:00
reduz
e2f8df8c5b
Add ability to register singletons from engine API
...
* Exposed functions in Engine to register and unregister singletons.
* Added the concept of user singletons, which can be removed (the system ones can't).
2021-08-25 08:32:25 -03:00
Hugo Locurcio
937c1a716c
Rename iterations_per_second to physics_ticks_per_second
...
This makes it clearer that this property is only about physics FPS,
not rendering FPS.
The `physics_fps` project setting was also renamed to
`physics_ticks_per_second` for consistency.
2021-08-11 02:37:02 +02:00
Aaron Franke
84f720966c
Use doubles for time in many other places
2021-08-09 14:05:42 -05:00
Rémi Verschelde
ac3322b0af
Use const references where possible for List range iterators
2021-07-25 12:22:25 +02:00
Aaron Franke
4e6efd1b07
Use C++ iterators for Lists in many situations
2021-07-23 17:38:28 -04:00
Rémi Verschelde
06568bbfdf
Misc cleanup of header includes
...
Was looking for misuse of module headers without checking that the module is
actually enabled and got carried away...
2021-07-15 00:46:43 +02:00
Hendrik Brucker
74ab336fe3
Change VSync mode project setting enum type from string to integer
2021-07-12 03:35:51 +02:00
Hendrik Brucker
043ae91560
Restructure and reimplement vsync options
...
-Add a v-sync mode setting which allows to choose between DISABLED, ON, ADAPTIVE and MAILBOX
-Removed the V-Sync via Compositor option
2021-07-06 16:34:26 +02:00
Aaron Franke
2508fd0533
Use PROPERTY_USAGE_NONE instead of 0 for no property usage
...
Also use const more often.
2021-07-01 14:13:27 -04:00
reduz
b1d15c51bc
Implement native extension system
...
* Deprecates GDNative in favor of a simpler, lower level interface.
* New extension system allows registering core engine classes.
* Simple header interface in gdnative_interace.h
2021-06-25 17:32:45 -03:00
Rémi Verschelde and GitHub
cca29b78b9
Merge pull request #48359 from Calinou/add-engine-print-error-property
2021-06-20 13:22:08 +02:00
Haoyu Qiu
06c0a5f9f2
Save binary ProjectSettings key length properly
2021-06-16 16:32:03 +08:00
Pedro J. Estébanez
04688b92ff
Rename Reference to RefCounted
2021-06-11 18:48:42 +02:00
Rémi Verschelde and GitHub
8d4046929c
Merge pull request #49511 from akien-mga/core-diraccess-fileaccess-io
...
Core: Move DirAccess and FileAccess to `core/io`
2021-06-11 16:51:10 +02:00
Rémi Verschelde and GitHub
6b0183ec89
Merge pull request #49279 from Calinou/rename-string-is-abs-path-method
...
Rename `String.is_abs_path()` to `String.is_absolute_path()`
2021-06-11 15:58:16 +02:00
Rémi Verschelde
9e328bb5b7
Core: Move DirAccess and FileAccess to core/io
...
File handling APIs are typically considered part of I/O, and we did have most
`FileAccess` implementations in `core/io` already.
2021-06-11 14:52:39 +02:00
Rémi Verschelde and GitHub
875ed4d600
Merge pull request #47336 from Calinou/rename-shader-file-extension
...
Rename the `.shader` file extension to `.gdshader`
2021-06-04 11:26:14 +02:00
Hugo Locurcio
5ea1c75d63
Rename String.is_abs_path() to String.is_absolute_path()
...
This is more consistent with `NodePath.is_absolute()`.
2021-06-03 16:00:06 +02:00