Commit Graph
5853 Commits
Author SHA1 Message Date
jfons 4d9d99bb82 Implement occlusion culling
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.
2021-04-23 21:45:23 +02:00
Rémi Verschelde 12f826da7d NodePath: Remove unimplemented get_parent() method
Fixes #48100.
2021-04-23 12:37:53 +02:00
kobewi 22efa850bd Make randomize() use unix time too 2021-04-22 21:08:33 +02:00
Rémi Verschelde 3d46f28558 Add type_traits include for std::is_trivially_destructible 2021-04-22 16:23:55 +02:00
Matheus Lima Cunha efd27a63c1 Add fill method to Arrays and PackedArrays 2021-04-21 11:33:53 -03:00
Rémi VerscheldeandGitHub a9ecf66342 Merge pull request #47956 from vnen/gdscript-double-stack
GDScript: Use special stack space for temporaries to reduce type changes
2021-04-20 17:39:09 +02:00
Juan Linietskyandreduz 2b730cad90 Use multiple threads to import.
- For now everything imports multithreaded by default (should work I guess, let's test).
- Controllable per importer

Early test benchmark. 64 large textures (importing as lossless, _not_ as vram) on a mobile i7, 12 threads:
Importing goes down from 46 to 7 seconds.

For VRAM I will change the logic to use a compressing thread in a subsequent PR, as well as implementing Betsy.
2021-04-19 14:12:22 -03:00
Rémi VerscheldeandGitHub 7e215a4b54 Merge pull request #35666 from Calinou/inputmap-nonexistent-suggestions
Print suggestions when requesting a nonexistent InputMap action
2021-04-18 11:39:12 +02:00
Hugo LocurcioandMarc Gilleron 71b254f68e Print suggestions when requesting a nonexistent InputMap action
Co-authored-by: Marc Gilleron <marc.gilleron@gmail.com>
2021-04-18 02:38:42 +02:00
Marcel Admiraal 0fb4dbf1bd Avoid creating joy_names map entries when using Map operator[] 2021-04-17 20:29:04 +01:00
George Marques a6c5938909 Remove return value type adjust of builtin method calls
Make calls faster with the caveat that the caller needs to make sure
that the return value type is already correct.
2021-04-16 12:04:34 -03:00
Rémi VerscheldeandGitHub 200d9a734c Merge pull request #47701 from vnen/gdscript-test-runner 2021-04-16 10:34:39 +02:00
Rémi VerscheldeandGitHub a3ca7844b3 Merge pull request #47726 from dalexeev/patch-1
Fix `Color::get_{r,g,b,a}8`
2021-04-16 10:30:53 +02:00
Bartłomiej T. Listwon 1eaaf2f9a2 Separate set.h from map.h 2021-04-14 11:43:45 +02:00
Julien Nguyen 026b8497d1 Fix PackedFloat32Array get index not working 2021-04-12 23:33:06 +02:00
Fabio Alessandrelli 4d5c8e0b18 This renames PacketPeerUDP.listen to bind. 2021-04-12 21:05:33 +02:00
damandFabio Alessandrelli da8c2310b5 Allow local port control on net_socket connections 2021-04-12 21:05:33 +02:00
Johannes 33d6eccdec Fix _File::get_buffer length always set to p_length 2021-04-11 23:11:13 +02:00
Rémi VerscheldeandGitHub c1b4755aa1 Merge pull request #47761 from reduz/packedbytearray-marshalling
Add marshalling to PackedByteArray
2021-04-10 19:17:31 +02:00
Fabio AlessandrelliandGitHub 6138396e00 Merge pull request #47512 from DanielKriz/bugfix/uri_encode
fix wrong encoding format in uri_encode
2021-04-10 18:58:40 +02:00
reduz e67c63108b Add marshalling to PackedByteArray
-Decode/Encode functions for u8,s8,u16,s16,u32,s32,u64,s64,half,float,double,variant
-Improved binder template to allow this

Given in Godot 4.0 PackedByteArray is passed as reference, it is now possible to have these functions there, which makes the most sense.
2021-04-10 13:09:22 -03:00
Daniel Kříž 13c999d9d7 fix wrong encoding in uri_encode 2021-04-10 17:54:18 +02:00
Danil Alexeev e63976d4b2 Fix Color::get_{r,g,b,a}8
Closes #47022.
2021-04-09 16:11:02 +03:00
George Marques b25ab27d4a Set resource path earlier on ProjectSettings setup
Since loading the config might use the resource path, it needs to be
set before that happens.
2021-04-08 09:35:06 -03:00
Rémi Verschelde f83486b430 Sync controller mappings DB with SDL2 community repo
Synced with gabomdq/SDL_GameControllerDB@01dce71403.
2021-04-06 22:39:35 +02:00
George Marques f8dd7917ec Add flag to stop printing to stdout/stderr
This allows the terminal output to be suppressed but still be captured
by print/error handlers.
2021-04-06 07:36:41 -03:00
Rémi Verschelde d83761ba80 Style: Apply clang-tidy's readability-braces-around-statements 2021-04-05 14:09:59 +02:00
Rémi Verschelde 9bbe51dc27 Style: Apply clang-tidy's modernize-use-nullptr 2021-04-05 14:05:07 +02:00
jmb462 400843c172 fix crash on null class in ClassDB.get_property() and set_property() 2021-04-02 20:05:01 +02:00
Rémi VerscheldeandGitHub 4b6e9f3157 Merge pull request #46991 from madmiraal/rename-invert-reverse
Rename Array.invert() to Array.reverse()
2021-04-01 13:32:22 +02:00
rafallus 9196722935 Fix Quat multiplication
x, y, z values were updated too early
2021-03-29 13:57:34 -06:00
Rémi VerscheldeandGitHub aba03110ba Merge pull request #46830 from vnen/gdscript-typed-arrays
GDScript typed arrays
2021-03-29 16:47:38 +02:00
Shatur95 e5a086fde6 Fix CONNECT_REFERENCE_COUNTED 2021-03-28 20:00:13 +03:00
mashumafi c2d1c1c3ee Array::insert consistent with Pool*Array::insert 2021-03-27 17:27:19 -04:00
Juan Linietsky 4763835c11 Optimize image channel detection
Speeds up compression
2021-03-26 15:44:00 -03:00
Rémi VerscheldeandGitHub c6b9ceadf2 Merge pull request #47163 from bruvzg/macos_sandbox_file_dialog
FileDialog: add Back/Forward buttons, add message for inaccessible folders.
2021-03-26 00:00:25 +01:00
Hugo Locurcio b191a7547c Rename the .shader file extension to .gdshader
This lets third-party software recognize Godot shaders more easily,
without relying on guesswork since the `.shader` extension is generic.
2021-03-24 21:33:44 +01:00
Rémi Verschelde cde67f0315 Sync controller mappings DB with SDL2 community repo
Synced with gabomdq/SDL_GameControllerDB@807ac1fbf9.
2021-03-23 13:18:43 +01:00
Rémi VerscheldeandGitHub 6610289fdd Merge pull request #40804 from naithar/fix/json-parse
JSON parser fix
2021-03-23 13:07:04 +01:00
Aaron Franke a5324787c8 Rename some more global enums (Key, Joy, MIDI) 2021-03-23 07:13:23 -04:00
Aaron Franke 10d7fccb54 Rename ButtonList enum and members to MouseButton 2021-03-23 07:13:23 -04:00
Rémi VerscheldeandGitHub 12f7c1cb25 Merge pull request #47231 from Faless/js/4.x_gamepad_db_dualsense
[HTML5] Logitech Dual Action Gamepad FF/Linux
2021-03-23 11:54:20 +01:00
bruvzg b202a0dd2a FileDialog: add Back/Forward buttons, add message for inaccessible folders. 2021-03-23 08:03:41 +02:00
Rémi VerscheldeandGitHub 6a84ade316 Merge pull request #45234 from madmiraal/rename-phashtranslation
Rename PHashTranslation to OptimizedTranslation
2021-03-23 00:12:12 +01:00
Rémi VerscheldeandGitHub 11718dbef9 Merge pull request #45562 from aaronfranke/core-modules-real_t
Use real_t in GridMap and VariantParser
2021-03-23 00:10:04 +01:00
Rémi VerscheldeandGitHub 8fb382afb8 Merge pull request #34587 from YeldhamDev/translation_resource_notification_removal
Remove translation change notification when setting the locale of a Translation resource
2021-03-22 23:30:20 +01:00
Juan Linietsky 8d64f3bd76 Add a "keep" import mode to keep files as-is and export them. 2021-03-22 17:19:19 -03:00
Juan Linietsky 97a3a66220 Improved 3D Scene Importer
* Added option for importers to show an Advanced settings dialog
* Created advanced settings dialog for Scene Importer
* Cleaned up importers (remove many old/unused options)
* Added the ability to customize every node, material, mesh and animation individually
* Saving to animations and meshes to files is now a manual process, making it more predictable
* Added the ability for materials to be replaced by external files (or to be made external, up to you).
* When doubleclicking an impoted scene in the filesystem dock, it automatically shows the import settings instead of asking to open it.

WARNING: Lightmap UV unwrap is not working, it needs to be re-made.
2021-03-22 12:16:40 -03:00
Fabio Alessandrelli 70d5f652a2 [HTML5] Logitech Dual Action Gamepad FF/Linux 2021-03-21 15:59:31 +01:00
Marcel Admiraal 755c70b871 Rename Array.invert() to Array.reverse()
Does the same internally for List and Vector<>, which includes all
PackedArray types.
2021-03-21 10:20:08 +00:00