Commit Graph

2977 Commits

Author SHA1 Message Date
Wilson E. Alvarez
a22e746bc3 Removed unnecessary assignments 2018-07-24 09:51:03 +02:00
Ignacio Etcheverry
779c9d638e
Merge pull request #15880 from neikeq/better-collections
Mono: Add Dictionary and Array classes
2018-07-23 23:59:04 +02:00
Juan Linietsky
b66580927e
Merge pull request #19313 from RandomShaper/improve-image
Image trilinear scaling + Optimization
2018-07-23 16:21:45 -03:00
Pedro J. Estébanez
c09734b401 Optimize image scaling routines 2018-07-23 21:08:10 +02:00
Pedro J. Estébanez
8c05c2830c Add trilinear filtering to image scaling 2018-07-23 21:08:10 +02:00
Juan Linietsky
dc976cac57
Merge pull request #12678 from AndreaCatania/soft
Soft body
2018-07-23 16:04:32 -03:00
AndreaCatania
b204389762 Added function append_array to vector 2018-07-23 12:48:00 +02:00
Marcelo Fernandez
ecb071b221 Fix upper/lower case convertion for characters >= 0x80 2018-07-22 14:10:28 -03:00
Marcelo Fernandez
7a5f9fc08e Added a new MIDIDriver class 2018-07-21 09:09:42 -03:00
George Marques
03746da73f
Add editor highlight for type-safe lines
The line number is hightlighted to indicate that the line contains only
type-safe code.
2018-07-20 21:55:18 -03:00
Juan Linietsky
6c09cdd136
Merge pull request #20157 from GodotExplorer/image-load-webp
Add webp buffer loader for Image
2018-07-20 12:00:21 -03:00
Rémi Verschelde
8c9e10553c Fix build issues and typos after c69de2ba4 2018-07-20 08:37:10 +02:00
volzhs
515c848ba8 Fix unwanted restarting 2018-07-20 10:41:32 +09:00
Juan Linietsky
c69de2ba46 -Project/Editor settings now use new inspector
-Project/Editor settings now show tooltips properly
-Settings thar require restart now will show a restart warning
-Video driver is now visible all the time, can be changed easily
-Added function to request current video driver
2018-07-19 19:02:04 -03:00
Juan Linietsky
43dc050947 Several improvements to editor inspector usability and style 2018-07-18 19:37:41 -03:00
Ignacio Etcheverry
2f69e36cef Add Dictionary::erase_checked(key) method
Same as erase, but it returns a boolean value indicating whether the pair was erased or not.
This method should be removed during the next compatibility breakage, and 'Dictionary::erase(key)' should be changed to return a boolean.
2018-07-18 23:07:31 +02:00
karroffel
43ae1c712f fix nameclash with MSVC 2018-07-18 19:28:26 +02:00
Rémi Verschelde
7c9f7452f4 Style: Format code with clang-format 6.0.1 2018-07-18 16:27:03 +02:00
matthew1006
25e64ffa20 Fixed OS.has_feature not using custom feature tags. 2018-07-18 09:22:59 +01:00
Ibrahn Sahir
8ff52c5923 reworked ustring.rsplit to fix behaviour.
Previous problems include failure to remove the splitter from the last
element found and a possible infinite loop dealing with multi-character
splitter strings.
2018-07-17 20:44:17 +01:00
Max Hilbrunner
2ba1f76870
Merge pull request #20195 from Faless/ssl_handshake
Non-blocking SSL handshake
2018-07-17 12:09:31 +02:00
geequlim
c5efe5d625 Add webp buffer loader for Image
Cleanup the code memory load related code for Image
Fix jpeg buff load function always returns OK event failed
2018-07-17 12:03:45 +08:00
Fabio Alessandrelli
9ba8f0d2d8 HTTP client now uses non blocking handshake 2018-07-16 13:08:17 +02:00
Fabio Alessandrelli
99d0b7ba14 Implement non blocking-handshake for StreamPeerSSL 2018-07-16 13:08:17 +02:00
Juan Linietsky
a3f1ee5c57 Global class names (and GDScript support for it) 2018-07-15 19:29:00 -03:00
unknown
9cc41a59ac Added support for extra mouse buttons. 2018-07-09 14:34:19 +03:00
Fabio Alessandrelli
e82f0fefbc MultiplayerAPI::send_bytes transfer mode support.
Added as extra parameter, allow you to specify which transfer mode to
use for those specific bytes
2018-07-08 09:47:22 +02:00
Max Hilbrunner
c41d322e11
Merge pull request #19183 from Nallebeorn/rename-main-scene
Update resource file project settings after renaming/moving the files
2018-07-05 00:44:23 +02:00
Max Hilbrunner
c538f2ff80
Merge pull request #19279 from aaronfranke/core-fposmod-fix
[Core] [Math] Fix fposmod() function
2018-07-05 00:35:46 +02:00
Max Hilbrunner
dc2d8d4dee
Merge pull request #19229 from RandomShaper/fix-focus-steal
Fix debugger focus stealing
2018-07-05 00:27:08 +02:00
GagaPete
8a4dccc4ce Fix CORS problems due to added headers on JS target
Before this change, missing User-Agent and Accept headers were automatically
added on all platforms. Setting the User-Agent header forces the browser to
do a CORS preflight (see 1) which fails if the HTTP endpoint is not
configured appropriate. It's not neccesary to set either header as the
browser sets them and so this commit disables that functionality on the JS
target.

1: https://developer.mozilla.org/en-US/docs/Web/HTTP/CORS#Simple_requests
2018-07-04 01:56:44 +02:00
Max Hilbrunner
2017119a3d
Merge pull request #19919 from marcelofg55/notif_crash
Add a new notification to detect crashes on native scripts
2018-07-03 18:42:49 +02:00
Benjamin
4cd69e91fc Update resource file project settings on rename 2018-07-03 18:08:41 +02:00
Max Hilbrunner
fb838bf1b4
Merge pull request #19192 from marcelofg55/undo_redo_msg
Add a message when there is nothing to Undo or Redo
2018-07-03 17:32:16 +02:00
Juan Linietsky
e179bf0726 Ensure, if a texture meant for a normal map is imported and size limit exists, that it's renormalized after resize. 2018-07-03 10:56:31 -03:00
Max Hilbrunner
f276e24ea8
Merge pull request #19802 from matthew1006/custom-feature-tag-fix
Fixed project settings overrides not using custom feature tags.
2018-07-03 15:37:02 +02:00
Max Hilbrunner
045944f83a
Merge pull request #19819 from MetaSaval/master
Change the neighbours vector to a set in AStar
2018-07-03 15:32:15 +02:00
Juan Linietsky
d280b14e6e Hacked around duplication bug. I think duplicate needs to be even smarter, maybe pass two bools? (containers and/or resources) 2018-07-03 08:34:06 -03:00
Juan Linietsky
7fc2367508 Added ability for SSAO to affect AO textures too 2018-07-02 16:50:52 -03:00
Marcelo Fernandez
deebeb2742 Add a new notification to detect crashes on native scripts 2018-07-02 16:18:58 -03:00
Juan Linietsky
2dc738ce27 -Fixes to how hashing happened, now StringName and NodePath use default hasher, this was leading to some severe slowdown in scenarios
-Fixes to some duplication scenarios for instanced scenes
2018-07-02 15:08:35 -03:00
Juan Linietsky
b3627e29f0 -Fixes to OBJ importer, option to disable optimization
-Fixes to script language, PlaceHolder can now get and check methods
2018-06-30 19:59:16 -03:00
Danny
9b60bb2c7c Change the neighbours vector to a set in AStar
This fixes an issue where one could not disconnect two points that were connected more than once.
2018-06-27 22:36:38 -07:00
Juan Linietsky
eeab3502d5 Changes to how node paths are selected from property, allowing setting a hint. 2018-06-27 20:50:25 -03:00
matthew1006
1844704c20 Fixed project settings overrides not using custom feature tags. 2018-06-27 12:37:55 +01:00
Juan Linietsky
4f5a7ebaec State machine animation node 2018-06-25 16:22:41 -03:00
Juan Linietsky
ad4666f8e0
Merge pull request #19193 from tagcup/quat_norm
Fixed Basis -> Quat conversions, added a few safety checks.
2018-06-25 10:58:04 -03:00
Rémi Verschelde
8bf5b50222
Merge pull request #19695 from rraallvv/nocache_gen_master
Add NoCache wrapper to Command (master)
2018-06-22 09:44:45 +02:00
Juan Linietsky
2365fe472b Added auto triangle generation in blend space, using Delaunay. 2018-06-21 22:48:47 -03:00
Juan Linietsky
b76143bfde Remove error messages 2018-06-21 18:46:17 -03:00
Rhody Lugo
920224a535 add NoCache wrapper to Command 2018-06-21 03:00:33 -04:00
Max
83b98785b3 Fixed float Color conversions to int types 2018-06-19 22:19:08 +03:00
Juan Linietsky
0a1c1c660f -Added AnimationGraphPlayer (still missing features)
-Added ability to edit resources from built-in inspector (wip, needs testing and feedback)
2018-06-18 22:12:08 -03:00
Marc Gilleron
4705dc4f00 Expose OS.get_ticks_usec() 2018-06-18 21:03:55 +02:00
Rémi Verschelde
8efbe9ed3d
Merge pull request #19487 from JFonS/better_3d_select
Improve 3D selection
2018-06-13 18:49:35 +02:00
JFonS
9cd1c20f6a Polished 3D selection 2018-06-13 17:52:37 +02:00
Rémi Verschelde
d6d8237a5a
Merge pull request #19509 from SaracenOne/ime
IME context detection.
2018-06-13 15:26:50 +02:00
Michael Alexsander Silva Dias
1971baf8a9 Fixed regression making the logger not respect the max files limit. 2018-06-12 12:57:48 -03:00
Saracen
c5bdb5b1d8 IME context detection. 2018-06-11 17:22:11 +01:00
Aaron Franke
eebe41b1b0 [Core] [Math] Fix fposmod() function
ffff


meth
2018-06-10 15:06:44 -05:00
Andrea Catania
0b7c4db5ee Added functions to get trimesh info 2018-06-07 15:46:17 +02:00
Rémi Verschelde
255d6470ee
Merge pull request #19263 from vnen/fix-get-return
Fix return type of _get() virtual method
2018-05-31 18:47:55 +02:00
Rémi Verschelde
43b7ebf0a0 Style: Apply clang-format (5.0) to some missed files 2018-05-31 09:00:37 +02:00
Juan Linietsky
10cab25f72
Merge pull request #19278 from karroffel/image-rgbe-srgb
added rgbe_to_srgb method to Image
2018-05-30 18:37:21 -03:00
karroffel
130bf14ac8 added rgbe_to_srgb method to Image 2018-05-30 21:16:45 +02:00
Michael Alexsander Silva Dias
cf9520ba2e Don't add a period to a log file name if it has no extension. 2018-05-30 11:31:29 -03:00
Max Hilbrunner
63b607257b
Merge pull request #19266 from akien-mga/os-execute-doc
Improve return value and docs on OS.execute regarding blocking/non-blocking variants
2018-05-30 15:00:10 +02:00
Rémi Verschelde
f392650be2 Improve return value of OS.execute in blocking/non-blocking variants
Initialized the PID to -2, which will be the value returns in blocking-
mode where the PID is not available. (-1 was already taken to signify an
execution failure).

OS::execute will now properly return a non-OK error code when it fails
to execute the target file.

The documentation was rewritten to be very clear about the differences
between blocking and non-blocking mode.

Fixes #19056.
2018-05-30 12:55:17 +02:00
George Marques
34e2ccc593
Fix return type of _get() virtual method 2018-05-29 23:30:01 -03:00
Fabio Alessandrelli
4524153b6e New sync RPC modes to match all combinations 2018-05-29 20:26:41 +02:00
Fabio Alessandrelli
1400f6fdc4 Refactor RPCMode enum and checks 2018-05-29 20:26:41 +02:00
Max Hilbrunner
4c69a495c9
Revert "RPCMode refactor, more sync modes" 2018-05-29 11:47:52 +02:00
Max Hilbrunner
d0b62ce155
Merge pull request #19021 from Faless/rpc_sync_fix
RPCMode refactor, more sync modes
2018-05-29 09:44:03 +02:00
Pedro J. Estébanez
2fcbf9dd81 Fix debugger focus stealing
At least on Windows, the authorization must be given every time, not only at startup.
2018-05-28 21:49:48 +02:00
Rémi Verschelde
4c5dd51eb9 Sync classref with current source
Also fix binding of Basis.slerp
2018-05-28 14:53:15 +02:00
Juan Linietsky
5bb412f389
Revert "Make the performance reporting update frequency customizable" 2018-05-28 08:47:09 -03:00
Rémi Verschelde
ced113136b
Merge pull request #19213 from bit-shift-io/master
Fix for not picking up locale of some .po translation files
2018-05-28 12:50:35 +02:00
Rémi Verschelde
bce002f5c3
Merge pull request #18410 from GodotExplorer/debugger-inherited-variables
Add inherited variables support for script debugger
2018-05-28 11:59:18 +02:00
Rémi Verschelde
98846b39ee
Merge pull request #18899 from ibrahn/gdscript-license-info
GDScript access to copyright, license, author and donor information.
2018-05-28 11:58:20 +02:00
Fabian
1065f06eef Fix for not picking up locale of some .po translation files 2018-05-28 12:51:05 +09:30
tagcup
9d41161596 Fixed Basis -> Quat conversions, added a few safety checks.
Fixes #19027.
2018-05-27 14:15:47 -04:00
Marcelo Fernandez
e9db8964e3 Add a message when there is nothing to Undo or Redo 2018-05-27 12:53:52 -03:00
Max Hilbrunner
130fd6bcb8
Merge pull request #18279 from RandomShaper/allow-naive-http
Allow body-up-to-EOF HTTP responses
2018-05-26 19:58:39 +02:00
Max Hilbrunner
16974d81d8
Merge pull request #18998 from Calinou/customizable-performance-reporting-rate
Make the performance reporting update frequency customizable
2018-05-26 17:31:52 +02:00
Fabio Alessandrelli
19ba3d5da3 New sync RPC modes to match all combinations 2018-05-26 10:43:43 +02:00
Fabio Alessandrelli
9de4ffde61 Refactor RPCMode enum and checks 2018-05-26 10:43:43 +02:00
Max Hilbrunner
acf6c326fb
Merge pull request #14715 from Krakean/string_add_rsplit2
Added rsplit() method to String class
2018-05-23 17:19:35 +02:00
Pedro J. Estébanez
2587fcccee Allow body-up-to-EOF HTTP responses
Implements the same heuristic as Curl (and web browsers): if no `Content-Length`, no `Connection: keep-alive` and no chunked transfer encoding, assume th rest of the data until EOF is the body, gracefully setting the HTTP client back to the disconnected state.

Theoretically, this is not compliant with HTTP 1.1, by which `keep-alive` is the default, but in practice, an explicit header is sent by servers.
2018-05-22 15:08:31 +02:00
Juan Linietsky
9b567cc549 Dictionary editing support in inspector 2018-05-19 17:57:44 -03:00
Ibrahn Sahir
1433c2cbbb GDScript access to copyright, license, author and donor information.
Adds following functions to the Engine singleton:
get_author_info - names of Godot authors
get_copyright_info - detailed source copyright get_license_info
get_donor_info - donor names
get_license_info - full text of licenses used, indexed by license names
get_license_text - the text of the Godot Expat license
2018-05-19 00:40:16 +01:00
Hugo Locurcio
228ae60a63
Make the performance reporting update frequency customizable
The default update frequency has been changed from 1000ms to 250ms.
2018-05-18 11:49:21 +02:00
tagcup
1bba6eeeb9 Removed incorrect Basis::set_scale().
Also added a missing constructor in Basis, and fixed usage of inverse and affine inverse in Transform.
2018-05-17 19:39:04 -04:00
nemerle
2bbe6144ff Fix PoolAllocator::resize for too large p_new_size
The code had a subtle signed/unsigned bug -
```cpp
if( signed - unsigned < 0)
// signed - unsigned is unsigned in c++, so
if( unsigned < 0)
// and thus the if block will never be executed
```

Thus all the following code would be ran, including unnecessary retries
of compacting the pool.
2018-05-17 00:35:47 +02:00
Rémi Verschelde
36a74696d6
Merge pull request #18804 from tagcup/vec_slerp
Add SLERP to Vector{2,3}, optimize Quat's Vector3 rotation.
2018-05-16 23:24:56 +02:00
Guilherme Felipe
35024d4e7b Add missing copyright headers 2018-05-16 14:50:44 -03:00
Daniele Giuliani
d315b0fb8a added get_creation_time function for gdscript 2018-05-16 00:50:57 +02:00
Juan Linietsky
005b69cf6e -New inspector.
-Changed UI resizing code, gained huge amount of speed.
-Reorganized timer sync to clean up behavior (sorry forgot commit this before)

-
2018-05-15 17:14:31 -03:00
Juan Linietsky
47d4a011d8
Merge pull request #18545 from vnen/editor-autoload
Enable autoload in editor
2018-05-14 17:59:34 -03:00
Fabio Alessandrelli
c7466eb144 Allow sending raw bytes through MultiplayerAPI 2018-05-12 23:17:24 +02:00
tagcup
ed7aadcd87 Add SLERP to Vector{2,3}, optimize Quat's Vector3 rotation.
Also even out Basis and Quat APIs a little.
2018-05-12 13:05:04 -04:00
Max Hilbrunner
e744d12e56
Merge pull request #18709 from Faless/multiplayer_docs
Rename multiplayer_api to multiplayer, add docs
2018-05-09 01:41:01 +02:00
Hein-Pieter van Braam
e668757aa9
Merge pull request #14622 from bruvzg/non-rectangular-windows
Experimental support for windows with per-pixel transparency.
2018-05-08 16:44:35 +02:00
Juan Linietsky
06b076f687
Merge pull request #15305 from poke1024/checks-peer
Checks on input_buffer in PacketPeerStream
2018-05-08 10:45:39 -03:00
Juan Linietsky
06f1d1ae23
Merge pull request #15282 from poke1024/check-obj-class
Check implicit casts on object classes in bound method calls
2018-05-08 10:43:44 -03:00
Fabio Alessandrelli
e391b493d5 Internal methods in MultiplayerAPI start with _ 2018-05-08 14:46:52 +02:00
Blazej Floch
c45f44d856 Local debugger fixes and extensions
- Adds q/quit option to console debugging
- Adds options (variable_prefix)
- Breaks into debugger with Ctrl-C in local debug mode (Unix/Windows)
- Added option to list all breakpoints
- Fixes add/remove breakpoint bug (invalid path parsing)
- Minor cleanup
2018-05-07 23:17:06 -04:00
Juan Linietsky
cb1fc5734b
Merge pull request #17316 from ShyRed/significantdigits
Adjust decimal precision
2018-05-07 20:25:06 -03:00
Juan Linietsky
633bbdb231
Merge pull request #17353 from zmanuel/timer_hysteresis_multiframe_pr1
Use hysteresis for smoother physics update frequency
2018-05-07 19:27:32 -03:00
Juan Linietsky
69a96ff4a6
Merge pull request #15943 from poke1024/geometry-line-line
Add Geometry::line_intersects_line_2d()
2018-05-07 17:54:33 -03:00
Juan Linietsky
cbd849d13f
Merge pull request #16033 from poke1024/marshalls-dict
Detects crash-related marshalling errors due to NAN values
2018-05-07 17:51:06 -03:00
Juan Linietsky
ff1e7cfbf4 Add is_instance_valid() method to GDScript, ending more than a decade of pain. 2018-05-07 17:30:03 -03:00
Juan Linietsky
80b9edf0f6
Merge pull request #16893 from GodotExplorer/debugger-improvement-3
Save runtime node as scene from remote scene tree.
2018-05-07 16:41:34 -03:00
Juan Linietsky
3f3b4703e4
Merge pull request #18121 from Crazy-P/Resolves-Freeze-on-change-reflection-probe
Resolves editor freezes on change of reflection probe
2018-05-07 15:39:25 -03:00
Juan Linietsky
e6b938ef16
Merge pull request #18219 from AlexHolly/fix-image-blit-blend
blit and blend fix when dst<Vector2
2018-05-07 15:23:54 -03:00
Juan Linietsky
863781dd3c
Merge pull request #18505 from AlexHolly/image-point2-helper
add Point2 helper for Image.get_pixel and Image.set_pixel
2018-05-07 12:20:32 -03:00
RaphaelHunter
63e258cc8f add condition check in Imgae::create(...) 2018-05-05 16:46:51 +08:00
Max Hilbrunner
1d47266490
Merge pull request #18501 from touilleMan/clean-variant-_data-RefPtr
Remove unused Variant._data.RefPtr
2018-05-05 06:53:48 +02:00
Max Hilbrunner
5d529ba2e1
Merge pull request #18488 from AndreaCatania/ie0
Added method to clear input events of an action
2018-05-05 06:49:46 +02:00
Alexander Alekseev
26963473a9 Vector3::round, Vector2::round & Vector2::ceil methods were added.
Now both structs (Vector2 & Vector3) have round, floor & ceil methods.
(see #18603)
2018-05-04 12:43:50 +03:00
Juan Linietsky
f056b09f5a
Merge pull request #18589 from karroffel/oahashmap-robinhood
updated OAHashMap to use robinhood hashing
2018-05-03 14:47:07 -03:00
karroffel
bf24d570bb updated OAHashMap to use robinhood hashing 2018-05-03 17:00:21 +02:00
Rémi Verschelde
b774156729
Merge pull request #18514 from neikeq/api-hash-fixes
API hash fixes
2018-05-03 14:36:32 +02:00
AndreaCatania
c510e2586d Added method to clear input events of an action 2018-05-03 00:26:49 +02:00
Rémi Verschelde
18c28c159d
Merge pull request #17196 from RandomShaper/improve-gui-touch
Implement universal translation of touch to mouse (3.1)
2018-05-02 10:47:49 +02:00
Rémi Verschelde
f86a67c4d1
Merge pull request #18520 from paulloz/gdscript-api-string-path
fix API string path
2018-05-02 10:36:25 +02:00
Rémi Verschelde
c5fe3d9d93
Merge pull request #18530 from garyo/missing-arg-err
Handle missing arg pointer in Variant::get_call_error_text
2018-05-01 19:17:43 +02:00
Rémi Verschelde
de97339a2d
Merge pull request #18291 from akien-mga/coverity-uninitialized-scalar-var
Fix Coverity reports of uninitialized scalar variable
2018-05-01 19:14:07 +02:00
Rémi Verschelde
85c8953c9f
Merge pull request #16649 from ibrahn/visual-script-release-crash
fix for segfault when using CallBasic in visual script on release build
2018-05-01 17:48:27 +02:00
George Marques
decf178033
Enable autoload in editor
- Tool scripts will be executed and can be accessed by plugins.
- Other script languages can implement add/remove_named_global_constant
to make use of this functionality.
2018-05-01 11:44:08 -03:00
Manuel Moos
954f7cca60 Fix #17019 : overrides with unknown base setting
If at the time of the _GLOBAL_DEF call a setting itself was unknown,
the function would always return the supplied default value instead of
checking for overrides. This commit changes that, lookup now always
happens which correctly takes overrides into account.
2018-05-01 16:25:48 +02:00
Rémi Verschelde
5281415a7b
Merge pull request #18428 from groud/fix_input
Fixing input strength and the impossibility to erase action events
2018-05-01 11:15:51 +02:00
Rémi Verschelde
4602e58698
Merge pull request #18355 from ShyRed/fix18344
Keep alpha when changing h, s or v Color property in GDScript
2018-05-01 09:38:50 +02:00
Rémi Verschelde
4cce6f3417
Merge pull request #18321 from Crazy-P/Fixes-logically-dead-code
Fixes logically dead code (Coverity)
2018-05-01 08:35:10 +02:00
Gary Oberbrunner
8d5c30ce83 Handle missing arg pointer in get_call_error_text
I had a situation coming from godot-python where the caller of
Variant::get_call_error_text() passed null for `p_argptrs`. In
addition to fixing that in the caller, seems like good practice to
defend against that situation in the callee to prevent a crash.

So this patch just substitutes some semi-useful text for the source
type name and keeps going so the user's actual error gets emitted.
2018-04-30 15:30:21 -04:00
Pedro J. Estébanez
de9d40a953 Implement universal translation of touch to mouse
Now generating mouse events from touch is optional (on by default) and it's performed by `InputDefault` instead of having each OS abstraction doing it. (*)

The translation algorithm waits for a touch index to be pressed and tracks it translating its events to mouse events until it is raised, while ignoring other pointers.

Furthermore, to avoid an stuck "touch mouse", since not all platforms may report touches raised when the window is unfocused, it checks if touches are still down by the time it's focused again and if so it resets the state of the emulated mouse.

*: In the case of Windows, since it already provides touch-to-mouse translation by itself, "echo" mouse events are filtered out to have it working like the rest.

On X11 a little hack has been needed to avoid a case of a spurious mouse motion event that is generated during touch interaction.

Plus: Improve/fix tracking of current mouse position.

** Summary of changes to settings: **

- `display/window/handheld/emulate_touchscreen` becomes `input/pointing_devices/emulate_touch_from_mouse`
- New setting: `input/pointing_devices/emulate_mouse_from_touch`
2018-04-30 19:03:38 +02:00
Max Hilbrunner
1ff89b547a
Merge pull request #18284 from mhilbrunner/pck-version
Fix .pck exporting via PCKPacker
2018-04-30 17:11:10 +02:00
Paul Joannon
a35c8bbdc7 fix API string path 2018-04-30 09:38:18 +02:00
Juan Linietsky
6244b9e2e1 Add option to renormalize mipmaps when generating them for normalmaps.
Reduces some aliasing.
2018-04-29 21:52:21 -03:00
Ignacio Etcheverry
3a86dffc5e ClassDB API hash now only includes exposed classes 2018-04-29 19:50:33 +02:00
Alexander Holland
97485c8df0 add Point2 helper for Image.get_pixel and Image.set_pixel
image-point2-helper
2018-04-29 15:17:06 +02:00
Geequlim
7e499683a2 Send inherited variables and constants from remote debugger 2018-04-29 20:27:20 +08:00
Emmanuel Leblond
c55ef807c0
Remove unused Variant._data.RefPtr 2018-04-29 11:41:36 +02:00
groud
0aa8b35ee6 Fixing input strength and the impossibility to erase action events 2018-04-25 22:32:09 +02:00
Hugo Locurcio
1c419531a0 Change ".." punctuation for "..." in editor strings (#16507) 2018-04-22 19:36:01 +02:00
George Marques
ca25f1e6ea
Merge pull request #18176 from nikibobi/string-trim
Add string trim_prefix, trim_suffix, lstrip and rstrip methods
2018-04-22 12:29:44 -03:00
ShyRed
100a775260 Keep alpha when changing h, s or v on color
When modifying the h, s or v properties of a color in GDScript the alpha value needs to stay unchanged.
2018-04-22 17:00:45 +02:00
Crazy-P
e6deba8d19 Fixes logically dead code (Coverity)
Fixes reported logically dead codes by Coverity

* image.cpp: Doesn't really need any modification. But to remove the bug
report then we have to move the MAX call away from the for loop
statement.

* rasterizer_gles3.cpp: Removes unnecessary elif condition since it is
checked earlier in the function

* collada.cpp: If stamement never reached due to macro ERR_CONTINUE does
the same.

* navigation_mesh.cpp: Variables should always be null - however, also
checked for the very same condition in their function call. Leaving this
for review (whether the function call is necessary or not)

* path_editor_plugin.cpp: If cancel is true, then it should restore the
edited value to the original provided.
http://docs.godotengine.org/en/3.0/classes/class_editorspatialgizmo.html#class-editorspatialgizmo-commit-handle

* spatial_editor_gizmos.cpp: the very condition of i >= 3 is
predetermined in the if case right before it. Thus case 1 is always '1'
and case 2 is always '-1'

* grid_map_editor.cpp: Same as above in spatial_editor_gizmos.cpp

* voxel_light_baker.cpp: Same as above in spatial_editor_gizmos.cpp

* visual_server.cpp: Same as above in spatial_editor_gizmos.cpp

* visual_script_expression.cpp: char '-' is already true in the switch
case mechanism. Thus it can never reach to default case.

* particles.cpp: Case 'PARAM_MAX' is unreachable due to index checking
right before the switch execution.

* shader_language.cpp: Invalid index is handled in switch default case.
`type < TYPE_FLOAT && type > TYPE_VEC4` -> `(type < TYPE_FLOAT || type > TYPE_VEC4`)
Fixes the "always false problem" in TODO comment.
2018-04-21 22:35:23 +08:00
Rémi Verschelde
8ae042a895
Merge pull request #18280 from groud/fix_input
Fixes left/up axis not mappable as actions
2018-04-19 21:06:17 +02:00
Rémi Verschelde
bf7ca623a6 Fix Coverity reports of uninitialized scalar variable
Fixes most current reports on Coverity Scan of uninitialized scalar
variable (CWE-457): https://cwe.mitre.org/data/definitions/457.html

These happen most of the time (in our code) when instanciating structs
without a constructor (or with an incomplete one), and later returning
the instance. This is sometimes intended though, as some parameters are
only used in some situations and should not be double-initialized for
performance reasons (e.g. `constant` in ShaderLanguage::Token).
2018-04-19 15:20:45 +02:00
Max Hilbrunner
a3aa5ad0d0 PCKPacker:pck_start(): Update version 2018-04-19 00:45:22 +02:00
Rémi Verschelde
9a75975042 Fix some Coverity warnings in String API
- StringName::StringName(const StringName &p_name)
  Non-static class member _data is not initialized in this constructor nor in any functions that it calls.

- StringName::_Data()
  Non-static class member idx is not initialized in this constructor nor in any functions that it calls.

- String::num_uint64(...)
  This less-than-zero comparison of an unsigned value is never true. n % base < 0UL.

- String::hex_to_int(...) and String::hex_to_int64(...)
  Execution cannot reach this statement (deadcode)
2018-04-18 22:20:39 +02:00
Gilles Roudiere
7e89dc432c Fixes left/up axis not mappable as actions 2018-04-18 21:38:52 +02:00
Juan Linietsky
a2f26a96dc Add a macro to deprecate methods 2018-04-18 14:27:26 +02:00
Rémi Verschelde
3018132244
Merge pull request #18204 from tagcup/quat_scale
Avoid converting Quat to Euler angles when not necessary.
2018-04-18 13:55:35 +02:00
Rémi Verschelde
8e2b29b659
Merge pull request #18227 from bojidar-bg/fix-date-unix-crash
Fix crash resulting from bad month check in core_bind.cpp
2018-04-18 13:30:04 +02:00
Juan Linietsky
1a3688d0cc
Merge pull request #16902 from groud/analog_action_system
Allow actions to provide an analog value
2018-04-18 07:21:29 -03:00
Bojidar Marinov
4b9cf93338
Fix crash resulting from bad month check in core_bind.cpp
Also, make it clear that day is 0-based. This might cause very slight differcies in existing games.
Fixes #18221
2018-04-17 22:44:08 +03:00
bosak
79ecdee496
add string trim_prefix trim_suffix lstrip and rstrip methods 2018-04-17 14:15:43 +03:00
Gilles Roudiere
ebfa731012 Allow actions to provide an analog value 2018-04-16 23:20:43 +02:00
George Marques
fefee533ae
Fix names of Variant operators 2018-04-16 14:54:49 -03:00
Alexander Holland
7cfdffcdf8 blit and blend fix when dst<Vector2 2018-04-15 22:37:28 +02:00
tagcup
a5e0bb447c Avoid converting Quat to Euler angles when not necessary.
Also ensure that get_scale doesn't arbitrarlity change the signs of scales, ensuring that the combination of get_rotation and get_scale gives the correct basis.

Added various missing functions and constructors.

Should close #17968.
2018-04-14 15:53:25 -04:00
Gilles Roudiere
e7445c3d82
Merge pull request #18170 from Chaosus/improvewrapf
Small performance fix to wrapf
2018-04-14 15:00:47 +02:00
Chaosus
ac4c340a45 Small performance fix to wrapf 2018-04-13 13:50:17 +03:00
Pedro J. Estébanez
00e98458ba Revert "Unify http- and percent- encode/decode"
This reverts commit b76ee30917.
2018-04-12 21:12:34 +02:00
Crazy-P
68dda540fd Fixes incorrect adding to last in self_list
Fixes https://github.com/godotengine/godot/issues/18052
2018-04-11 19:59:41 +08:00
Ruslan Mustakov
1d9a3a9b1c iPhone X support and iOS-related fixes
Starting from April 2018 Apple no longer accepts apps that do not
support iPhone X. For games this mainly means respecting the safe area,
unobstructed by notch and virtual home button. UI controls must be
placed within the safe area so that users can interact with them.

This commit:

- Adds OS::get_window_safe_area method that returns unobscured area of
  the window, where interactive controls should be rendered.

- Reorganizes how launch screens are exported - the previous way was
  incorrect and modern iPhones did not pick up the correct screens and
  because of that used a non-native resolution to render the game.

- Adds launch screen options for iPhone X.

- Makes launch screens optional in the export template. If not
  specified, a white screen will be used.

- Adds App Store icon (1024x1024) export option as it now has to be
  bundled with the app instead of being provided in iTunes Connect.

- Fixes crash when launching games in iOS Simulator. It happened because
  controllerWasConnected callback came before the engine was
  initialized. Now in such case the controllers will be queued up and
  registered after initialization is done.

- Fixes issue with the virtual keyboard where for some reason
  autocorrection panel would intersect with the keyboard itself and not
  allow you to use the top row of the keyboard. This is fixed by
  disabling autocorrection altogether.

Closes #17358. Fixes #17428. Fixes #17331.
2018-04-11 14:53:24 +07:00
Poommetee Ketson
72aa87758a
Update classref and docs, fix missing parameters' name 2018-04-11 10:20:22 +07:00
Guilherme Felipe
4f05190fb0 Implement Input.set_default_cursor_shape to change the default shape
Closes #18043
2018-04-10 11:38:34 -03:00
Manuel Moos
d5abd4eb75 Add hysteresis to physics timestep count per frame
Add new class _TimerSync to manage timestep calculations.
The new class handles the decisions about simulation progression
previously handled by main::iteration(). It is fed the current timer
ticks and determines how many physics updates are to be run and what
the delta argument to the _process() functions should be.

The new class tries to keep the number of physics updates per frame as
constant as possible from frame to frame. Ideally, it would be N steps
every render frame, but even with perfectly regular rendering, the
general case is that N or N+1 steps are required per frame, for some
fixed N. The best guess for N is stored in typical_physics_steps.

When determining the number of steps to take, no restrictions are
imposed between the choice of typical_physics_steps and
typical_physics_steps+1 steps. Should more or less steps than that be
required, the accumulated remaining time (as before, stored in
time_accum) needs to surpass its boundaries by some minimal threshold.
Once surpassed, typical_physics_steps is updated to allow the new step
count for future updates.

Care is taken that the modified calculation of the number of physics
steps is not observable from game code that only checks the delta
parameters to the _process and _physics_process functions; in addition
to modifying the number of steps, the _process argument is modified as
well to stay in expected bounds. Extra care is taken that the accumulated
steps still sum up to roughly the real elapsed time, up to a maximum
tolerated difference.

To allow the hysteresis code to work correctly on higher refresh
monitors, the number of typical physics steps is not only recorded and
kept consistent for single render frames, but for groups of them.
Currently, up to 12 frames are grouped that way.

The engine parameter physics_jitter_fix controls both the maximum
tolerated difference between wall clock time and summed up _process
arguments and the threshold for changing typical_physics_steps. It is
given in units of the real physics frame slice 1/physics_fps. Set
physics_jitter_fix to 0 to disable the effects of the new code here.
It starts to be effective against the random physics jitter at around
0.02 to 0.05. at values greater than 1 it starts having ill effects on
the engine's ability to react sensibly to dropped frames and framerate
changes.
2018-04-09 22:27:29 +02:00
Crazy-P
ae7a9df292 Resolves Inccorect Quaternion Conversion
Fixes https://github.com/godotengine/godot/issues/18025
2018-04-09 14:48:03 +08:00
Juan Linietsky
cef01f1f49
Merge pull request #16495 from Chaosus/is_point_in_triangle_fix
Fix is_point_in_triangle function
2018-04-08 18:18:19 -03:00
Juan Linietsky
59cdc5eb9d
Merge pull request #16898 from Lerc/master
add Image::bumpmap_to_normalmap conversion function
2018-04-08 15:52:05 -03:00
Juan Linietsky
e9e5aa617e
Merge pull request #17227 from Faless/multiplayer_api
[RFC] MultiplayerAPI refactor
2018-04-08 11:04:16 -03:00
Juan Linietsky
1faea81e15
Merge pull request #17232 from playster000/master
enhance mipmaps, non power of 2 textures
2018-04-08 10:49:13 -03:00
Juan Linietsky
4ee3f3251d
Merge pull request #17382 from bojidar-bg/13971-path-array-unsaved
Duplicate Arrays and Dictionaries when instancing scene in editor
2018-04-08 09:39:03 -03:00
Juan Linietsky
47ffe107e6
Merge pull request #17967 from Nibodhika/all-device-mode
Allows to map an action to all devices.
2018-04-08 09:04:14 -03:00
Nibodhika
1e28f63bcf Allows to map an action to all devices.
This is accomplished by setting a special value (-1) to the device variable
in the InputEvent that's being used to compare with the one received from the OS.

This special value is invalid for a regular input, so it should be safe.
Implements #17942
2018-04-07 20:08:09 +00:00
Juan Linietsky
cd7e9d9642
Merge pull request #17583 from RandomShaper/enhance-uri-utils
Enhance uri utils
2018-04-07 17:07:29 -03:00
Juan Linietsky
5a1a90c3db
Merge pull request #17636 from rainerdeyke/fix_issue_17585
Fixes moving files causes scene corruption
2018-04-07 16:56:02 -03:00
bruvzg
ddae098dee
Experimental support for windows with per-pixel transparency (macOS, X11 and Windows). 2018-04-07 17:11:45 +03:00
Andrea Catania
2f9354016f
Fixed signal input variable name 2018-04-06 09:09:40 +02:00
Pedro J. Estébanez
1fc85b87bd Fix buggy percent-encoding
Fixes #17875.
2018-04-05 21:49:44 +02:00
Rémi Verschelde
866254343b
Merge pull request #17827 from bruvzg/macos_shortcut_key_remapping_fix
[macOS] Fix keyboard shortcuts on non QWERTY keyboard layouts.
2018-04-05 13:22:52 +02:00
Rémi Verschelde
1710582473
Merge pull request #17847 from Faless/lws_update
LWS v2.4.2, mbedTLS v2.8.0, Websocket  SSL support
2018-04-03 23:14:01 +02:00
Felix Yang
7d5a40c3e6 Ctrl+Clicking a enum now scrolls down to it in the docs. 2018-04-03 21:56:54 +02:00
Fabio Alessandrelli
490dd9f946 Generalize SSL cert reading from file 2018-04-03 20:13:57 +02:00
bruvzg
5ba984fc8c
[macOS] Fix keyboard shortcuts on non QWERTY keyboard layouts. 2018-03-28 20:22:59 +03:00
Pedro J. Estébanez
8d8e9d54c8 Enhance HTTPClient.query_string_from_dict() 2018-03-27 19:18:32 +02:00
Pedro J. Estébanez
b76ee30917 Unify http- and percent- encode/decode
There was a percent-prefixed version, which was exposed, and a http-prefixed version which was not (only to GDNative).
This commit keeps the percent-prefixed versions, but with the http-prefixed implementations.
2018-03-27 19:18:30 +02:00
Rainer Deyke
31c6d6649f Fixes scene corruption when updating dependencies.
This commit fixes issue #17585: renaming/moving resources can corrupt
scene files.  The corruption was caused by
'ResourceFormatLoaderBinary::rename_dependencies' updating the file
format version field of the affected scene file to the latest version
without actually updating the content of the file to that version,
resulting in a file whose content does not match its file format version
field.  The fix preserves the file format version field and the engine
version fields when renaming dependencies.
2018-03-24 15:08:55 +01:00
Marcelo Fernandez
bbd21c2203 Fix for clang warning at distance_to 2018-03-22 13:26:04 -03:00
Marcelo Fernandez
35d21c0881 Fix several in-class initialization clang warning 2018-03-22 00:17:18 -03:00
Rémi Verschelde
baa092e99d
Merge pull request #17653 from eska014/rwlock-dummy
Add RWLockDummy for NO_THREADS builds
2018-03-21 17:40:01 +01:00
Leon Krause
25800ffb0e Add RWLockDummy for NO_THREADS builds 2018-03-20 05:37:42 +01:00
Pedro J. Estébanez
536611704a Fix listing files inside directory in pack file
When adding a directory path to the inventory of the pack, an empty file name was being added to the file list. That made `Directory.get_ntext()` signal end-of-list too early so that files in a subdirectory were missed.

Fixes #15801.
Helps with #16798.
2018-03-18 14:04:50 +01:00
Fabio Alessandrelli
c531262190
Merge pull request #16947 from Faless/ui_actions
GUI elements ui_action usage, improvements
2018-03-16 20:55:11 +01:00
Fabio Alessandrelli
b0186b41bb
Merge pull request #17237 from RandomShaper/fix-ssl-handshake
Fix HTTPClient SNI support when verify is off
2018-03-15 22:43:34 +01:00
Neil Graham
4bea98de40 change bumpmap_to_normalmap range from [1...255] to [0...255] 2018-03-16 10:22:48 +13:00
Hein-Pieter van Braam
9bc0503c91
Merge pull request #17376 from marcelofg55/file_get_path
Added File.get_path and File.get_path_absolute functions
2018-03-15 22:21:21 +01:00
Hein-Pieter van Braam
f8706cbdf2
Merge pull request #17407 from poke1024/fix-hsv-mismatch
Fix mismatch between Color.h and Color.from_hsv()
2018-03-15 22:16:57 +01:00
Rémi Verschelde
99c1323a08
Merge pull request #17388 from Hinsbart/mono_class_name
Mono: Avoid invalid class names.
2018-03-15 19:47:39 +01:00
Andreas Haas
700d07cf7c
Mono: Avoid invalid class names.
Disallow reserved keywords as class names and prefix base class with the Godot
namespace if it's the same as the class name.

Fixes #12483
2018-03-15 19:25:06 +01:00
Bernhard Liebl
1d3b5d5a2f Fix mismatch between Color.h and Color.from_hsv() 2018-03-14 21:04:02 +01:00
Rémi Verschelde
b64d4e3a83
Merge pull request #17486 from bojidar-bg/x-fix-clang-negation-warn
Fix a potential bug hinted by clang
2018-03-13 20:02:42 +01:00
Bojidar Marinov
9f6c0c6eae
Duplicate Arrays and Dictionaries when instancing scene in editor
Also, add deep (=false) parameter to Array.duplicate and Dictionary.duplicate

Fixes #13971
2018-03-13 17:18:08 +02:00
Bojidar Marinov
4d81e8afe6 Fix a potential bug hinted by clang 2018-03-13 17:10:28 +02:00
Marcelo Fernandez
a4e64c5454 Added File.get_path and File.get_path_absolute functions 2018-03-13 12:07:37 -03:00
Rémi Verschelde
b4da44981a
Merge pull request #17254 from Chaosus/updatewrap
Update wrap functions
2018-03-13 12:33:57 +01:00
Rémi Verschelde
ced5b57a60
Merge pull request #17257 from and3rson/master
Fix garbage in string padding.
2018-03-13 12:30:42 +01:00
Rémi Verschelde
18d543d7ab
Merge pull request #17311 from marcelofg55/export_err_checks
Improved error checking at EditorExportPlatformPC::export_project
2018-03-13 12:17:53 +01:00
Rémi Verschelde
4287c7822b
Merge pull request #17440 from viktor-ferenczi/issue-5042
Properly closing all files in Python build code
2018-03-13 11:49:58 +01:00
Rémi Verschelde
08415d0f53
Merge pull request #17319 from eska014/polyclipper-toolsonly
Build polygon clipper only in tools builds
2018-03-13 11:01:28 +01:00
robfram
ea94a82596 Fix non working action names containing whitespaces
Now the action name is quoted if it contains spaces. Also, quotation
mark (") is added to the forbidden character list for action names, as
it was also a bug.

Fix #17322
2018-03-12 21:28:41 +01:00
Viktor Ferenczi
272ecddb28 Properly closing all files in Python code 2018-03-11 14:55:50 +01:00
Rémi Verschelde
8ded15b035
Merge pull request #16485 from poke1024/vector2-cross
Bring back Vector2.cross()
2018-03-08 08:50:20 +01:00
Bernhard Liebl
9d7856620c Bring back Vector2.cross() 2018-03-07 21:10:31 +01:00
Leon Krause
802b6d3669 Reinstate WebGL 1.0 driver in HTML5 platform 2018-03-07 20:38:14 +01:00
Leon Krause
fa760082f5 Build polygon clipper only in tools builds 2018-03-06 21:53:37 +01:00
ShyRed
051b4d6f19 Adjust decimal precision
Increase the number of significant digits when converting from double to string.
2018-03-06 20:40:29 +01:00
Marcelo Fernandez
0876502f72 Improved error checking at EditorExportPlatformPC::export_project 2018-03-06 14:23:17 -03:00
Chaosus
70bb31a7b2 Update wrap functions 2018-03-06 10:34:37 +03:00
Andrew Dunai
0269e366f1 Fix garbage in string padding. 2018-03-04 19:45:33 +02:00
Marcelo Fernandez
d780d774aa Clean and expose get_audio/video_driver_* funcs on OS class 2018-03-04 14:18:05 -03:00
Pedro J. Estébanez
602da6fa4f Fix wrong SSL handshake
The name of the remote host is passed to mbed TLS in all cases so the client hello message is correctly formed.
2018-03-04 01:22:59 +01:00
Mavropoulos Ioannis
60b2ee1624 enhance mipmaps 2018-03-03 23:19:31 +02:00
Fabio Alessandrelli
df391cc5be Add new MultiplayerAPI class
Handles all the high level networking stuff
2018-03-03 18:28:49 +01:00
Nicolas Silva
e73266a51c Allow degenerate triangles in polygon triangulation when necessary. 2018-02-28 22:46:56 -05:00
Hein-Pieter van Braam
d702d7b335 Fix various valgrind reported uninitialized variable uses 2018-02-28 21:55:13 +01:00
Ignacio Etcheverry
f37090ccf4 Mono: Better versioning and gracefully unloading of Godot API assemblies 2018-02-25 20:56:27 +01:00
Poommetee Ketson
67e20dc2b6 (Magnify|Pan)Gesture: implement as_text 2018-02-24 10:35:25 +07:00
Neil Graham
617d3cde1a change to clang format 2018-02-24 13:59:02 +13:00
Rémi Verschelde
23ebae01dc Refactor version macros and fix related bugs
The previous logic with VERSION_MKSTRING was a bit unwieldy, so there were
several places hardcoding their own variant of the version string, potentially
with bugs (e.g. forgetting the patch number when defined).

The new logic defines:

- VERSION_BRANCH, the main 'major.minor' version (e.g. 3.1)
- VERSION_NUMBER, which can be 'major.minor' or 'major.minor.patch',
  depending on whether the latter is defined (e.g. 3.1.4)
- VERSION_FULL_CONFIG, which contains the version status (e.g. stable)
  and the module-specific suffix (e.g. mono)
- VERSION_FULL_BUILD, same as above but with build/reference name
  (e.g. official, custom_build, mageia, etc.)
  Note: Slight change here, as the previous format had the build name
  *before* the module-specific suffix; now it's after
- VERSION_FULL_NAME, same as before, so VERSION_FULL_BUILD prefixed
  with "Godot v" for readability

Bugs fixed thanks to that:

- Export templates version matching now properly takes VERSION_PATCH
  into account by relying on VERSION_FULL_CONFIG.
- ClassDB hash no longer takes the build name into account, but limits
  itself to VERSION_FULL_CONFIG (build name is cosmetic, not relevant
  for the API hash).
- Docs XML no longer hardcode the VERSION_STATUS, this was annoying.
- Small cleanup in Windows .rc file thanks to new macros.
2018-02-23 20:15:29 +01:00
Fabio Alessandrelli
920d2bfdfa Add two new default actions ui_end, ui_home
Used by Slider and Scrollbar
2018-02-23 13:01:28 +01:00
Poommetee Ketson
f4f92b55e1 Color:fix setting V switch S to old V value 2018-02-22 16:43:00 +07:00
geequlim
24e6361cba Save runtime node as scene from the remote scene tree. 2018-02-22 10:00:13 +08:00
luz.paz
612ab4bbc6 Fix typos with codespell
Found via `codespell -q 3 --skip="./thirdparty,./editor/translations" -I ../godot-word-whitelist.txt`
Whitelist consists of:
```
ang
doubleclick
lod
nd
que
te
unselect
```
2018-02-21 19:46:06 +01:00
Juan Linietsky
9e3a1e5401 Add base support for 2D meshes in Godot, including Sprite -> Mesh2D conversion. 2018-02-21 09:39:09 -03:00
Rémi Verschelde
57d562b394 Fix loading project.binary from PCK file
Regression introduced in #16825.
My logic was correct, but not the error code I was expecting.
The error reporting in FileAccess likely needs a review too.
2018-02-21 09:07:59 +01:00
Neil Graham
bc7db7a08d add Image::bumpmap_to_normalmap conversion function 2018-02-21 11:43:58 +13:00
Rémi Verschelde
37a6ce5a42
Merge pull request #15563 from poke1024/gdscript-shuffle
Add shuffle() method to Array
2018-02-19 21:53:08 +01:00
Rémi Verschelde
7455244866
Merge pull request #15852 from poke1024/color_hsv
Add Color.from_hsv()
2018-02-19 21:51:04 +01:00
Rémi Verschelde
7839076f95 Improve error reporting of ProjectSettings::setup()
And use it to better report errors in the console and project manager
when a project.godot file is corrupted.

Fixes #14963.
2018-02-19 16:41:43 +01:00
Artem Varaksa
d35e486228 Clean up some bad words from code comments 2018-02-17 16:00:39 +03:00
Rémi Verschelde
0c7bed45c4 Add locale renames for Hebrew and Indonesian on Windows
Windows does not fully respect ISO 639-1 like other systems,
so we have to override its locale values for those languages.

Also added comments to document the locale provenance.
2018-02-14 18:49:27 +01:00
Rémi Verschelde
e0f43e0678
Merge pull request #15564 from RandomShaper/adpod-topmost
Add new window setting: always on top
2018-02-14 16:43:40 +01:00
Rémi Verschelde
574133e4e0
Merge pull request #15892 from Zylann/add_missing_vs_bindings
Added all missing VisualServer bindings
2018-02-14 16:05:49 +01:00
Rémi Verschelde
b48cc669e2
Merge pull request #16169 from hungrymonkey/issue_16160
Change function signature from float to double to match type get_doub…
2018-02-14 15:50:47 +01:00
Fabio Alessandrelli
67b600d957 Add mbedtls module 2018-02-14 01:26:23 +01:00
Marcelo Fernandez
ea1d726a46 Added OS::center_window to center the window precisely on desktop platforms 2018-02-12 15:45:41 -03:00
Ibrahn Sahir
95dfa5b96d fix for segfault when using CallBasic in visual script on release build 2018-02-12 17:09:00 +00:00
Chaosus
f2c22791ce Fix is_point_in_triangle 2018-02-08 19:59:52 +03:00
Rémi Verschelde
cbdd410a6f
Merge pull request #15899 from karroffel/stringbuffer-template-arg
add template argument for size in StringBuffer
2018-02-07 11:37:10 +01:00
Nicolas Silva
91215e1919 Fix polygon triangulation failure.
The ear clipping algorithm used to triangulate polygons has a slightly too conservative point-in-triangle test which can, in some configurations prevent it from finding a possible tessellation. Relaxing the test by considering that points exactly on edges don't belong the triangle fixes the issue. Changing the semantic of the test is safe because no other code makes use of it. A more detailed explanation can be found in issue #16395.

Fixes #16395.
2018-02-05 16:01:24 +01:00
Hein-Pieter van Braam
e836a7d88d Kill an old debugging message
When running the engine with -d we get a message on the command-line for
each control being clicked. After discussing with @reduz it seems that
this is old and should be removed. Commented out as requested.
2018-02-05 11:18:49 +01:00
Timur Celik
c16f61190c Fix broken variant call of Vector3.snapped 2018-02-03 19:57:12 +01:00
Paolo Perkovic
08d4bfacaf Fix inconsistencies and typos in argument names 2018-02-01 16:47:20 +01:00
Rémi Verschelde
906ac2fc9d
Merge pull request #16002 from bruvzg/mono_loading_form_res
[Mono] Allow loading assemblies (including mscorlib) from resources.
2018-02-01 14:36:05 +01:00
Rémi Verschelde
e7cf2b2e77
Merge pull request #16188 from Schweigert/master
Display set_nodelay to GDScript
2018-01-31 17:26:12 +01:00
bruvzg
b3ddf12fb1
Mono: Allow loading mscorlib from resources. 2018-01-31 09:20:46 +02:00
Marlon Henry Schweigert
87adf9cfba Display set_nodelay to GDScript
Pass enabled arg

Rename set_nodelay to set_no_delay

Add description to the method

Change description
2018-01-30 13:22:15 -02:00
Rémi Verschelde
5b580fb69b
Merge pull request #15995 from GodotExplorer/pr-debugger-weakref
Remote debugger send the real instance of WeakRef referenced to
2018-01-30 13:43:02 +01:00
Poommetee Ketson
ebe2337515 Fix wrong return type of xform functions 2018-01-30 18:45:54 +07:00
hungrymonkey
d2f1c87063 Change function signature from float to double to match type get_doubleCloses #16160 2018-01-29 15:45:46 -08:00
Hein-Pieter van Braam
7577252b1b Use the appropriate Variant hash and compare functions for Dictionaries
Dictionaires did not use the VariantHasher and VariantComparator making
them unsafe for use with NaN values as keys. This PR uses the
appropriate Variant implementations for these functions.

   var d = {}
   d[Vector2(NAN, NAN)] = 0
   d[Vector2(NAN, NAN)] = 0
   print(d.size())

will now output '1' and not '2'

This fixes #16031
2018-01-27 15:11:39 +01:00
Ariel Manzur
81426ff0a8 - Improves portability in joystick buttons enum
- Fixes linking bug in modules split library
2018-01-24 19:12:54 -03:00
Bernhard Liebl
eb1f9375ea Detects crash-related marshalling errors due to NAN values 2018-01-24 19:24:18 +01:00
Rémi Verschelde
5342ec32b5
Merge pull request #15844 from letheed/better-error-msg
Make cyclic resource inclusion error message more helpful
2018-01-24 11:52:52 +01:00
Geequlim
10f0451cc2 Remote debugger send the real instance of WeakRef referenced to 2018-01-23 17:17:35 +08:00
Bernhard Liebl
c1e099b48f Add Geometry::line_intersects_line_2d() 2018-01-21 15:31:34 +01:00
karroffel
ac2a9bb267 add template argument for size in StringBuffer
Until now the pre-allocated array size was defined to be 64 without
a way of adjusting it from the calling side.

This commit adds the size as a template parameter.
2018-01-20 20:03:17 +01:00
Marc Gilleron
e415fd05bb Added all missing VisualServer bindings
- Added bindings for multimesh, immediate, skeleton, light, reflection probe, gi probe, lightmap, particles, camera, environment, scenario, instance
- Removed draw and sync, were duplicates of force_* equivalents
- Bumped binders max arguments from 11 to 13
- Wrote some wrappers as not all methods were variant-friendly
2018-01-20 16:59:26 +01:00
karroffel
30822e8ab7 fixed crash with StringBuilder
When using a newly created StringBuilder then the as_string() method
will crash when trying to free an allocated 0-sized chunk of memory.

When 0 bytes get allocated with memnew_arr then a NULL pointer gets
returned. When trying to free that pointer the programm will crash.
2018-01-20 15:26:58 +01:00
Ariel Manzur
e2b50e1abb improves portability with some compilers 2018-01-18 19:16:34 -03:00
Bernhard Liebl
be55171231 Add Color.from_hsv() 2018-01-18 22:13:00 +01:00
Rémi Verschelde
9f479f096c Fix typos in code and docs with codespell
Using v1.11.0 from https://github.com/lucasdemarchi/codespell
2018-01-18 22:01:42 +01:00
letheed
37c4bc64de Make cyclic resource inclusion error message more helpful 2018-01-18 18:35:24 +01:00
Rémi Verschelde
6c46787749 doc: Replace some more "val" with "value" + sync 2018-01-17 10:43:23 +01:00
Rémi Verschelde
09ca100658
Revert "Fix bad color to HTML conversion. Alpha channel was added before RGB." 2018-01-16 10:22:22 +01:00
Juan Linietsky
03475ba197 Filled tutorial field in most relevent classes.
Added tutorial display in doc.
2018-01-15 18:41:13 -03:00
K. S. Ernest (iFire) Lee
ef1c26a9a5 Make sure PropertyHint matches in the VisualScript editor. 2018-01-15 22:19:54 +01:00
bruvzg
d0868a8f40
Fix String::itos/String::num_int64(INT64_MIN) output. 2018-01-13 22:06:08 +02:00
Paul Joannon
a066f896d8 get_target_fps and set_target_fps now both use an int 2018-01-12 14:26:21 +01:00
Paul Joannon
e08b6c9a9c fix set_stream_peer binding in PacketPeer 2018-01-12 14:25:05 +01:00
Rémi Verschelde
e24f2c6489
Merge pull request #15611 from bojidar-bg/x-bind-more-properties
Bind many more properties to scripts
2018-01-12 09:00:20 +01:00
Juan Linietsky
2cde466ebd -Remove color operator clamping, which is unnecesary. Fixes #15184, fixes #14686.
-Refresh progress bar less often, makes baking, exporting, etc. faster.
2018-01-12 00:08:32 -03:00
Bojidar Marinov
9b8e8b2220
Bind many more properties to scripts
Notable potentially breaking changes:
- PROPERTY_USAGE_NOEDITOR is now PROPERTY_USAGE_STORAGE | PROPERTY_USAGE_NETWORK, without PROPERTY_USAGE_INTERNAL
- Some properties were renamed, and sometimes even shadowed by new ones
- New getter methods (some virtual) were added
2018-01-12 00:58:14 +02:00
Juan Linietsky
9a62829759
Merge pull request #15531 from AndreaCatania/p2
Fixed crash on duplicate GIProbe baking
2018-01-11 16:44:18 -03:00
AndreaCatania
5ac441131e Fixed crash on duplicate GIProbe baking 2018-01-11 19:50:33 +01:00
Ruslan Mustakov
a6157245b1 Dont print error when loading resource from cache 2018-01-11 20:46:18 +07:00
poke1024
75d69fb4ec Add shuffle() method to Array 2018-01-10 19:36:53 +01:00
Bernhard Liebl
a01c33c9d0 Object class checking on bound method calls 2018-01-10 18:41:47 +01:00
robfram
19915d674c Fix bad color to HTML conversion. Alpha channel was added befor RGB. 2018-01-09 22:34:00 +01:00
Ignacio Etcheverry
5be356b72f Mono: Implement stack info for errors and exceptions 2018-01-09 17:19:03 +01:00
Todd Ross
6e932c3108 obsolete UndoRedo max_steps; no users identified 2018-01-08 10:57:07 -06:00
Rémi Verschelde
1fea0adc5c
Merge pull request #15337 from touilleMan/fix-classdb_get_method_list-without-instrospection
Fix _ClassDB::get_method_list when instrospection is disabled
2018-01-08 15:18:20 +01:00
Rémi Verschelde
fe841fe827
Merge pull request #15437 from GodotExplorer/pr-fix-15424
Add null checking for paramaters in UndoRedo
2018-01-07 13:03:47 +01:00
Rémi Verschelde
0593daa826
Merge pull request #15382 from mrcdk/poolarrays_neq_fix
Fix NEQ operation for Arrays and Pool*Arrays
2018-01-07 13:01:23 +01:00
Rémi Verschelde
42ee9541fd
Merge pull request #15297 from poke1024/runner-limit-errs
Limit number of errors and messages sent by runner
2018-01-07 12:38:08 +01:00
geequlim
a6e0dcdcbf Add null checking for paramaters in Undoredo 2018-01-07 18:47:55 +08:00
Juan Linietsky
50b975548d Removed PBM bitmap loader, added abiliy to importi mages as bitmap. Fixes #14828 2018-01-06 16:38:36 -03:00
Jerome67000
b5885c43eb Fix crash when using Image.resize() without calling Image.create() first 2018-01-06 13:20:45 +01:00
MrCdK
b2617e72e5 Fix NEQ operation between 2 different Arrays
it was returning false if it found the same content in both arrays which isn't correct, it should return true when it finds different values
2018-01-06 04:19:48 +01:00
Juan Linietsky
b1ab44aa05 Print error if a resource can't load from script, fixes #15313 2018-01-05 17:35:48 -03:00
Pedro J. Estébanez
ee2c31d306 Add new window setting: always on top
Implemented for Windows and Linux.
2018-01-05 21:31:04 +01:00
Rémi Verschelde
e4213e66b2 Add missing copyright headers and fix formatting
Using `misc/scripts/fix_headers.py` on all Godot files.
Some missing header guards were added, and the header inclusion order
was fixed in the Bullet module.
2018-01-05 01:22:23 +01:00
Emmanuel Leblond
c1e2ed1d84
Fix _ClassDB::get_method_list to returns only what's available when introspection is disabled 2018-01-04 19:04:05 +01:00
Emmanuel Leblond
e315c94900 Change OS::initialize signature to return Error (fix segfault on x11) 2018-01-04 15:15:55 +01:00
firefly2442
f066991aa7 found via cppcheck:
remove code that will never run
make definition and declaration names for parameters match
change floats that were being set to bool values
remove pointer that is never used
2018-01-03 21:23:48 -07:00
Rémi Verschelde
66d541c69d
Merge pull request #15280 from poke1024/ringbuffer-cow
Avoid redundant copy-on-writes in RingBuffer
2018-01-04 00:21:07 +01:00
Bernhard Liebl
df84ecd043 Checks on input_buffer in PacketPeerStream 2018-01-03 21:12:58 +01:00
Juan Linietsky
474523d409
Revert "Add missing image format RGB10A2. Fixes #14964" 2018-01-03 16:43:07 -03:00
Bernhard Liebl
2909085774 Avoid redundant copy-on-writes in RingBuffer 2018-01-03 19:08:53 +01:00
Bernhard Liebl
c7c764220c Limit number of errors and messages sent by runner 2018-01-03 17:23:09 +01:00
Rémi Verschelde
6b6f60defc
Merge pull request #15220 from ibrahn/variantcall-defargs-fix
fix VariantCall default parameter ordering
2018-01-03 12:50:04 +01:00
Rémi Verschelde
459ee51338
Merge pull request #15093 from poke1024/canvas-editor-select
More exact picking for canvas editor
2018-01-03 11:15:28 +01:00
Rémi Verschelde
6d812ad27f
Merge pull request #15051 from binbitten/bug-fixes
Add missing image format RGB10A2. Fixes #14964
2018-01-03 10:17:48 +01:00
Rémi Verschelde
a24dd678fd
Merge pull request #15274 from GodotExplorer/debugger-fix-15238
Fix a bug for debugger
2018-01-03 08:37:24 +01:00
Rémi Verschelde
6322b0bbb7
Merge pull request #12814 from guilhermefelipecgs/add_hardware_custom_cursor
Custom hardware-accelerated mouse cursor
2018-01-03 08:35:59 +01:00
Geequlim
6c8ec5a930 Fix crash while the debugger encode a freed object. 2018-01-03 13:58:27 +08:00
Juan Linietsky
14772d2213
Merge pull request #15083 from tagcup/spatial_rot_fix
Restore the behavior of Spatial rotations recently changed in c1153f5.
2018-01-02 15:02:19 -03:00
Rémi Verschelde
4973b7a513
Merge pull request #14916 from poke1024/reduce-startup-time
Ramp up remote debugger wait time
2018-01-02 11:33:30 +01:00
Rémi Verschelde
b50a9114b1 Update copyright statements to 2018
Happy new year to the wonderful Godot community!
2018-01-01 14:40:47 +01:00
Noshyaar
a6328011d8
Merge pull request #14973 from poke1024/docs-word-selection
Double-click word selection for RichTextLabel (i.e. docs)
2018-01-01 18:51:35 +07:00
Noshyaar
8dcc28254c
Merge pull request #15091 from poke1024/fix-rect2-distance-to
Fix Rect2::distance_to() not returning 0
2018-01-01 18:37:46 +07:00
Ibrahn Sahir
96706168d0 fix VariantCall default parameter ordering 2017-12-31 14:58:45 +00:00
Bernhard Liebl
b80bc553dd Double-click word selection for RichTextLabel (i.e. docs) 2017-12-28 17:44:22 +01:00
tagcup
e9896b17a9 Restore the behavior of Spatial rotations recently changed in c1153f5.
That change was borne out of a confusion regarding the meaning of "local" in #14569.

Affine transformations in Spatial simply correspond to affine operations of its Transform. Such operations take place in a coordinate system that is defined by the parent Spatial. When there is no parent, they correspond to operations in the global coordinate system.
This coordinate system, which is relative to the parent, has been referred to as the local coordinate system in the docs so far, but this sloppy language has apparently confused some users, making them think that the local coordinate system refers to the one whose axes are "painted" on the Spatial node itself.

To avoid such conceptual conflations and misunderstandings in the future, the parent-relative local system is now referred to as "parent-local", and the object-relative local system is called "object-local" in the docs.

This commit adds the functionality "requested" in #14569, not by changing how rotate/scale/translate works, but by adding new rotate_object_local, scale_object_local and translate_object_local functions. Also, for completeness, there is now global_scale.

This commit also updates another part of the docs regarding the rotation property of Spatial, which also leads to confusion among some users.
2017-12-27 16:40:49 -05:00
Bernhard Liebl
8505871a87 More exact picking for canvas editor 2017-12-27 20:24:58 +01:00
Bernhard Liebl
0d578fb765 Fix crash in StringBuffer::append() 2017-12-27 20:21:50 +01:00
Juan Linietsky
a663dbfdd8
Merge pull request #14744 from poke1024/stringname-compare
Avoid string allocations in AlphCompare
2017-12-27 15:44:45 -03:00
Juan Linietsky
988d29bdd8 Reimport now checks source path changes and imported files and their md5, fixes #14728 2017-12-27 15:22:04 -03:00
Bernhard Liebl
41c11894f1 Fix Rect2::distance_to() not returning 0 2017-12-27 09:56:52 +01:00
Noshyaar
ab444a8ca9
Merge pull request #14996 from neikeq/enums-mono
Mono: Make the bindings generator output enums
2017-12-27 10:29:00 +07:00
Noshyaar
de2247b9b4
Merge pull request #15045 from poke1024/vector2-inline
Inline some very common Vector2 operations
2017-12-27 10:25:08 +07:00
Juan Linietsky
c1153f5041 Change the rotate function of Spatial to be local, makes more sense. Closes #14569 2017-12-26 12:45:56 -03:00
Juan Linietsky
4a2eef4ad8 Removed the InputEvent ID field, which was unused and can cause bugs. 2017-12-26 09:49:31 -03:00
binbitten
267bad6b4c Add missing image format RGB10A2. Fixes #14964 2017-12-25 21:01:01 +01:00
Bernhard Liebl
517227943f Inline some very common Vector2 operations 2017-12-25 15:58:14 +01:00
Poommetee Ketson
6c897707ca Add missing parameter names 2017-12-25 21:19:56 +07:00
Juan Linietsky
021f3c924b -Removed OpenMP support, replaced by a custom class.
-Disabled Opus, implementation is wrong.
2017-12-24 09:32:12 -03:00
Ignacio Etcheverry
0a0a44da8d Mono: Make the bindings generator output enums
- Switch to PascalCase for constants names
2017-12-24 04:20:41 +01:00
poke1024
e6d83a766a Ramp up remote debugger wait time 2017-12-22 07:17:31 +01:00
Gilles Roudiere
71f5e17680 Fixes grow_margin not working at all 2017-12-21 23:53:31 +01:00
Juan Linietsky
c9d88fd8e8 Add functions to image to load a PNG or JPG from a buffer, closes #4024 2017-12-20 17:17:12 -03:00
Rémi Verschelde
f66ef74338
Merge pull request #14823 from willnationsdev/get-base-script
Add Script.get_base_script()/get_instance_base_type() to API
2017-12-20 16:39:35 +01:00
Will Nations
28561c2e7a Add Script.get_base_script/instance_base_type API 2017-12-19 09:56:59 -06:00
Juan Linietsky
b3a1bf3245 Use a different strategy for path remaps, try loading from a remap file instead.
This ensures multiple PCK exports still work.
2017-12-18 11:21:49 -03:00
Rémi Verschelde
e83c502939
Merge pull request #14754 from willnationsdev/dictionary-copy
Added 'duplicate' function for Dictionary in C++ and API.
2017-12-17 23:58:59 +01:00
Will Nations
f19fc83546 Dictionary::copy -> ::duplicate 2017-12-17 16:07:15 -06:00
Guilherme Silva
a392dbdbe3 Add implementation for custom hardware cursor 2017-12-17 13:40:29 -02:00
Rémi Verschelde
ad3393743c
Merge pull request #14760 from hpvb/add-several-unlikely-macros
Add several unlikely() macros
2017-12-17 14:28:15 +01:00
Rémi Verschelde
6afb90c846
Merge pull request #14635 from poke1024/getline
Faster FileAccess::get_line()
2017-12-17 14:24:07 +01:00
Rémi Verschelde
d0abcf1a58
Merge pull request #14745 from poke1024/api-hash-arg-info
Faster ClassDB::get_api_hash()
2017-12-17 14:22:48 +01:00
Hein-Pieter van Braam
9ba134b463 Add several unlikely() macros
Based off of perf-based prediction misses these seem to be the
lowest-hanging fruit for quick (albeit small) improvements. These are
based on:

* baking a complex lightmap
* running platformer 3d
* running goltorus
2017-12-17 13:10:30 +01:00
Bernhard Liebl
b47ce5e5d6 Avoid string allocations in AlphCompare 2017-12-17 12:16:08 +01:00
Juan Linietsky
652c98a7be Add epic hack so vsync can be toggled in run-time from script. Fixes #14458.
Call needs to be routed via visual server to reach the proper thread.
2017-12-16 17:11:02 -03:00
poke1024
a3f1ed9af9 Faster FileAccess::get_line() 2017-12-16 16:27:21 +01:00
Bernhard Liebl
b17ae020bb Faster ClassDB::get_api_hash() 2017-12-16 15:47:36 +01:00
Rémi Verschelde
6b7bed98f4
Merge pull request #14576 from poke1024/strings
Some performance tweaking of string handling
2017-12-16 13:10:30 +01:00
Ruslan Mustakov
9d6d20e67c Remove get_stack_bottom
It's not used in godot-nim any longer and there were no other uses for
it.
2017-12-16 13:10:26 +07:00
Rémi Verschelde
cf7bd1a7e3
Merge pull request #14708 from Faless/get_packet_not_const_rebased
Remove "const" from PacketPeer get_packet/get_var, move windows network related stuff to drivers
2017-12-16 00:05:18 +01:00
Dmitry Koteroff
6fe415ca7f Added rsplit() for String class
Docs updated
2017-12-15 22:23:58 +03:00
Rémi Verschelde
7767d89c45
Merge pull request #14580 from Krakean/string_split_new_arg
Added third argument for String.split() function
2017-12-15 19:56:39 +01:00
Dmitry Koteroff
5302fd125b Added third argument for String.split() function (see issue #14349)
Remove negative limit, leave only positive and make it reflect behaviour like in Python
Also limit renamed to maxsplit to match Python one.
Also docs updated.

Fix indent
2017-12-15 21:51:13 +03:00
poke1024
040d4dba6b Some performance tweaking of string handling 2017-12-15 17:25:57 +01:00
Fabio Alessandrelli
92067b4714 Remove "const" from PacketPeer get_packet/get_var
They are NOT constant methods, as state by the comment message,
they fetch the last packet and then forget about it, actively
changing the state of the object.
2017-12-15 17:14:17 +01:00
Fabio Alessandrelli
206275f3e7 Fix javascript build error and improve #14604 2017-12-15 15:35:18 +01:00
Juan Linietsky
433cb6f490 fix compile issue 2017-12-15 09:04:57 -03:00
Juan Linietsky
251433847f -Added new scene conversion to binary on export (disabled by default, please test)
-This method works by directly converting text to binary, so the scene does not need to be loaded and saved
2017-12-15 08:39:26 -03:00
Rémi Verschelde
108a36f515
Merge pull request #14604 from mhilbrunner/http-defaults
HTTP cleanup & better defaults
2017-12-15 07:53:38 +01:00
Juan Linietsky
93a63a5e1a GDScript files are converted to binary on export now. 2017-12-14 15:34:47 -03:00
Rémi Verschelde
fb84b49d87 Fix type mismatch in OS::set_borderless_window
Closes #14663.
2017-12-14 19:16:20 +01:00
Juan Linietsky
f3ad14224e -Add lightmapper
-Fixes to unwrapper (remove degenerates), makes Thekla not crash
-Added optional cancel button in EditorProgress
-Added function to force processing of events (needed for cancel button)
2017-12-14 09:01:27 -03:00
mhilbrunner
966c054fc9 HTTP cleanup & better defaults 2017-12-14 10:59:42 +01:00
mhilbrunner
a7abb459c9 HTTPClient: Add PATCH method and missing HTTP status codes 2017-12-12 10:56:18 +01:00
Rémi Verschelde
2b41afb30e Fix wrong return value in some virtual method bindings 2017-12-10 15:34:08 +01:00
Rémi Verschelde
a845411454 Style: Re-apply clang-format over recent invalid additions 2017-12-10 01:27:02 +01:00
Rémi Verschelde
626eebdec4 PropertyEditor: Fix display of property doc in tooltip 2017-12-09 22:54:12 +01:00
Rémi Verschelde
41e3592041
Merge pull request #13347 from Noshyaar/hang_in_there
Rect2: add function returning same rect with positive w and h
2017-12-09 18:08:09 +01:00
Stefano Bonicatti
c067cf2c6a Fixes vsync setting ignored when using a separate thread for rendering
Setting the vsync in the main thread, after the rendering thread starts
and takes the OpenGL context fails, so we need to do that before.
Also, for some reason, the main thread cannot make current the context
anymore.

Fixes #13447
2017-12-09 01:43:23 +01:00
Rémi Verschelde
13c2ff9320 Style: Apply new clang-format 5.0 style to all files 2017-12-07 08:02:00 +01:00
Rémi Verschelde
d5ca9e2f6f Style: Apply clang-format again on all files
Fixes issues introduced by newer clang-format versions or commits
pushed directly without using the clang-format pre-commit hook.
2017-12-07 08:02:00 +01:00
Rémi Verschelde
a88543c881
Merge pull request #14003 from karroffel/dictionary-iterate-fix
fix Dictionary iteration
2017-12-07 00:22:38 +01:00
Rémi Verschelde
e6f3253f7d
Merge pull request #12603 from GodotExplorer/beautify-json
Add indent and sort keys support for JSON.print
2017-12-06 23:53:05 +01:00
Rémi Verschelde
c033be4528
Merge pull request #14326 from RandomShaper/fix-chmod-error
Fix Windows-to-Linux export error
2017-12-06 23:16:18 +01:00
Juan Linietsky
a496dd4d38 Created internal usage flag to remove non editor properties from doc, closes #13334 2017-12-06 17:16:25 -03:00
Pedro J. Estébanez
7fb9508cfa Fix Windows-to-Linux export error
Now chmod() returns ERR_UNAVAILABLE by default, to signal the caller the problem is lack of support instead of a failed operation.
2017-12-06 20:46:38 +01:00
karroffel
2ba4edbfb7 fix Dictionary iteration 2017-12-05 20:00:44 +01:00
Unknown
fd1b94e307 Improve slang, especially in user-visible parts 2017-12-05 15:41:38 +01:00
Juan Linietsky
d438ac0aed -Implemented Proxy Textures (needed to solve the problem with ViewportTexture)
-Properly use hierarchy to initialize resources local to scene (solves problem of GUI in 3D)
2017-12-04 15:56:17 -03:00
Bastiaan Olij
4f9dac5bb1 Forgot to apply oversampling to Y 2017-12-03 22:32:42 +11:00
Juan Linietsky
9678231b10 Changed the dynamic library open function to allow setting the path of the library to open extra libraries. 2017-11-30 10:00:55 -03:00
Rhody Lugo
a65c0939fd disable caching for targets using helper functions 2017-11-28 23:24:12 -04:00
Rhody Lugo
a4a222d62d use the same cache for all branches for appveyor 2017-11-28 03:23:33 -04:00
Poommetee Ketson
5c9be411eb Rect2: add function returning same rect with positive w and h 2017-11-28 00:41:29 +07:00
Rémi Verschelde
c7e53f1934 Fix javascript build after bc2e8d99 2017-11-27 08:17:28 +01:00
Rémi Verschelde
af9c67db0c Allow customizing user:// path (folder in OS::get_data_path())
This allows to specify any valid folder name (including with subfolders) to use
as user:// on all platforms. The folder is constrained to the platform-specific
OS::get_data_path() (typically what `XDG_DATA_HOME` resolves to).

Fixes #13236.
2017-11-26 19:02:32 +01:00
Juan Linietsky
bc2e8d99e5 Made Vector::ptrw explicit for writing, compiler was sometimes using the wrong function,
leading to unnecesary copy on writes and reduced performance.
2017-11-25 00:09:40 -03:00
Andreas Haas
c76a9b99b0
Core: Bind InputEventGesture events. 2017-11-24 19:23:04 +01:00
Rémi Verschelde
3d0aec7a81
Merge pull request #13244 from bojidar-bg/13243-get-static-indexed
Fix a crash in get_static_property_type_indexed
2017-11-24 15:07:24 +01:00
Bojidar Marinov
0b63e84566
Fix a crash in get_static_property_type_indexed
Fixes #13243
2017-11-24 15:26:32 +02:00
dragmz
b20bb8615f
reduce static memory usage
fixes #13217
2017-11-23 21:16:18 +01:00
Juan Linietsky
62d86b1588 Modified low processor sleep to 8000 and made it customizable (should be customizable for editor too) 2017-11-22 14:41:45 -03:00
Rémi Verschelde
ba891a0e8b
Merge pull request #13143 from willnationsdev/list-insert-before-after-fix
Fixes List<T>::insert_before/after
2017-11-22 18:18:25 +01:00
Rémi Verschelde
c07833f8b5
Merge pull request #13178 from bojidar-bg/13174-tween-fix
Make tween able to be used as before (without the need for ":...")
2017-11-22 13:20:20 +01:00
Rémi Verschelde
71f464e798 i18n: Add support for Serbin (Cyrillic) locale
[ci skip]
2017-11-22 13:19:09 +01:00
Bojidar Marinov
bfe44de2b6
Make tween able to be used as before (without the need for ":...")
Fixes #13174
2017-11-22 14:13:56 +02:00
Juan Linietsky
0300522189
Merge pull request #13176 from bojidar-bg/allow-subproperty-set
Fix combatibility with older .scn files
2017-11-22 08:46:34 -03:00
Bojidar Marinov
3eb7858a3a
Fix combatibility with older .scn files 2017-11-22 13:34:43 +02:00
Rémi Verschelde
9638c9cb5d
Merge pull request #12371 from donkeybonks/color-lighten-darken
Add Color.lighten and Color.darken (like LESS.css or SASS) #2
2017-11-22 01:27:01 +01:00
Rémi Verschelde
3b7e9df255
Merge pull request #13151 from akien-mga/basis-vector3-constructor
Properly implement Basis constructor using Vector3 of Euler angles
2017-11-22 01:20:14 +01:00
Rémi Verschelde
bedcbdd420
Merge pull request #13130 from endragor/gdnative-android-export
Proper GDNative export on Android
2017-11-21 23:59:01 +01:00
Rémi Verschelde
613d374bc5
Merge pull request #12284 from bojidar-bg/allow-subproperty-set
Allow for getting/setting "dotted" properties of objects
2017-11-21 22:44:14 +01:00
Rémi Verschelde
a3f8dde502 Properly implement Basis constructor using Vector3 of Euler angles
Fixes #13104.
2017-11-21 20:52:07 +01:00
Bojidar Marinov
0cf9597758
Allow for getting/setting indexed properties of objects using get/set_indexed
Performance is around the same as using pure set() through GDScript.
2017-11-21 20:58:21 +02:00
Juan Linietsky
640856f4d4
Merge pull request #11895 from m4nu3lf/rendering/separate_thread
Restore rendering on a separate thread
2017-11-21 14:31:14 -03:00
Juan Linietsky
30dadb1228
Merge pull request #11933 from cxong/master
Use "Command" instead of "Meta" for macOS (#1619)
2017-11-21 14:25:09 -03:00
Will Nations
52f73a153d Fixes List<T>::insert_before/after 2017-11-21 10:51:38 -06:00
Ruslan Mustakov
ebf9b80a47 Proper GDNative export on Android 2017-11-21 20:40:31 +07:00
Rémi Verschelde
6c9ee1f125
Merge pull request #13133 from endragor/resurrect-file-logging
Return and repair file logging
2017-11-21 14:25:33 +01:00
Rémi Verschelde
1c2782a7c7
Merge pull request #12590 from poke1024/bsearch
Add bsearch and bsearch_custom to Array
2017-11-21 13:14:08 +01:00
Kyle Van Berendonck
8e4336a729
Add Color.lightened and Color.darkened (like LESS.css or SASS) 2017-11-21 21:48:11 +11:00
Ruslan Mustakov
d42c5646a5 Return and repair file logging
And make it configurable, too.
2017-11-21 16:43:44 +07:00
Bernhard Liebl
80ad8afc85 Native pan and zoom for macOS 2017-11-21 09:11:39 +01:00
poke1024
d6e54de502 Add bsearch and bsearch_custom to Array 2017-11-21 08:50:31 +01:00
Rémi Verschelde
71a3e71b61
Merge pull request #11783 from endragor/ios-export-frameworks
Allow exporting third-party iOS Frameworks
2017-11-20 22:56:15 +01:00
Rémi Verschelde
6065b2d177
Merge pull request #11940 from GodotExplorer/debugger
Enhanced debugger for godot 3.0
2017-11-20 22:55:49 +01:00
Ruslan Mustakov
8f0f327f02 Allow configuring iOS export
- EditorExportPlugin's _export_begin accepts all the arguments related
   to the current export (is_debug, path, flags).

 - EditorExportPlugin API is extended with methods allowing to configure
   iOS export: add_ios_framework, add_ios_plist_content,
   add_ios_linker_flags, add_ios_bundle_file.

 - iOS export template now contains Godot as a static library so that
   it can be linked with third-party Frameworks and GDNative static
   libraries.

 - Adds method to DirAccess for recursive copying of a directory.

 - Fixes iOS export to work with Xcode 9 (released recently).
2017-11-21 01:16:49 +07:00
Rémi Verschelde
450bdda97a
Merge pull request #12387 from santouits/x1111
Fix x11 boot logo position in fullscreen and in maximized
2017-11-20 15:48:08 +01:00
Rémi Verschelde
4d5b82811f
Merge pull request #13006 from hoelzl/pr-placement-delete
Add placement deletes to avoid warnings on VC++
2017-11-20 13:16:23 +01:00
Juan Linietsky
d413f372be Make old scenes readable again 2017-11-20 08:25:43 -03:00
Chip Collier
fd81c001fc Basis accepts Vector3 as constructor argument. 2017-11-20 09:59:42 +01:00
Rémi Verschelde
3fd23da5ee Rename the version's "revision" to "build"
That "revision" was inherited from SVN days but had been since then
used to give information about the build: "custom_build", "official",
"<some distro's build>".

It can now be overridden with the BUILD_NAME environment variable.
2017-11-20 00:51:14 +01:00
Rémi Verschelde
6947bed015 Pass engine name and version parts as proper strings
Removes the need for _MKSTR all over the place which has the drawback of
converting _MKSTR(UNKNOWN_DEFINE) to "UKNOWN_DEFINE" instead of throwing
a compilation error.
2017-11-20 00:51:14 +01:00
Rémi Verschelde
ecf80fbbba
Merge pull request #12988 from akien-mga/xdg-home-paths
Add support for XDG Base Directory spec
2017-11-20 00:42:51 +01:00
Matthias Hoelzl
4c76c6892c Add placement deletes to avoid warnings on VC++
When compiling with VC++ 2017, Godot generates huge numbers of
C4291 warnings about missing placement delete.

I have not found a way to disable these warnings using compiler
options: AFAICT there is no equivalent to `-f-no-exceptions` for
VC++ (there is only /EH to change the exception-handling model,
/GX is deprecated) and adding /wd4291  to the
`disable_nonessential_warnings` list in the `SConstruct` file
or even compiling with `warnings=no` does not disable the
messages.

Placement delete is only called when placement new throws an
exception, since Godot doesn't use exceptions this change should
have no runtime effect.

Fixes #12654 (probably, difficult to say without log)
2017-11-19 21:25:18 +01:00
Rémi Verschelde
32c12a92a5 Add initial support for the XDG Base Directory spec
Spec version 0.7 from https://standards.freedesktop.org/basedir-spec/basedir-spec-0.7.html
(latest as of this commit).

Three virtual methods are added to OS for the various XDG paths we will use:
- OS::get_data_path gives XDG_DATA_HOME, or if missing:
  ~/.local/share on X11, ~/Library/Application Support/ on macOS and %APPDATA% on Windows
- OS::get_config_path gives XDG_CONFIG_HOME, or if missing:
  ~/.config on X11, ~/Library/Application Support/ on macOS and %APPDATA% on Windows
- OS::get_cache_path gives XDG_CACHE_HOME, or if missing:
  ~/.cache on X11, ~/Library/Caches on macOS and %APPDATA% on Windows

So for Windows there are no changes, for Linux we follow the full split spec
and for macOS stuff will move from ~/.godot to ~/Library/Application Support/Godot.

Support for system-wide installation of templates on Unix was removed for now,
as it's a bit hackish and I don't think anyone uses it.

user:// will still be OS::get_data_path() + "/godot/app_userdata/$name" by
default, but when using the application/config/use_shared_user_dir option
it will now use XDG_DATA_HOME/$name, e.g. ~/.local/share/MyGame.

For now everything still goes in EditorSettings::get_settings_dir(), but
this will be changed in a later commit to make use of the new splitting
where relevant.

Part of #3513.
2017-11-19 20:54:24 +01:00
m4nu3lf
f9a38d2309 CommandQueueMT doesn't lock during command execution 2017-11-18 18:37:44 +00:00
Daniel J. Ramirez
59c2e8906a Improved packed scene previews. 2017-11-17 21:42:14 -06:00
Rémi Verschelde
73049d115e Rename OS::get_data_dir to OS::get_user_data_dir
Will be needed to avoid confusion with system data path (XDG_DATA_HOME)
and editor data dir in upcoming refactoring.
2017-11-17 20:55:09 +01:00
Juan Linietsky
ebbe2bd572
Merge pull request #12930 from vnen/gdscrit-output-print
Make tool scripts print on the editor Output panel
2017-11-17 16:05:44 -03:00
Ferenc Arn
d28763a4c1 Rename Rect3 to AABB.
Fixes #12973.
2017-11-17 11:01:41 -05:00
Geequlim
fab66af7e9 Move the remote scene tree to the scene tree dock.
Ignore all script constants in the global section of the breakpoint stack.
Check property size before send to avoid too large of data be sent.
Fix crash while clear the remote objects from the debugger.
2017-11-17 12:01:54 +08:00
geequlim
ccf76798d5 Send script members, contants and globals to debugger
Remove remote inspector panel
2017-11-17 09:20:32 +08:00
geequlim
475cee9c0f Abstract some method for script system 2017-11-17 09:20:32 +08:00
George Marques
1d12470a78
Add print_error function, akin to print_line 2017-11-16 21:56:57 -02:00
Rémi Verschelde
219d735eb2
Merge pull request #12932 from willnationsdev/capitalize-enhancement
Fixes a bug where capitalize didn't work with camelCase names
2017-11-17 00:28:18 +01:00
Will Nations
238d488a04 Fixed a bug where capitalize didn't work with camelCase names 2017-11-14 14:32:37 -06:00
Leon Krause
acb23adad3 Fail when attempting to retrieve a non-existent singleton 2017-11-14 16:15:00 +01:00
Leon Krause
9b7b46143d Move singleton management from ProjectSettings to Engine 2017-11-14 15:15:13 +01:00
Rémi Verschelde
0dd96bccd3
Merge pull request #12867 from eska014/html5-http
Implement HTTPClient in HTML5 platform
2017-11-13 08:32:32 +01:00
Leon Krause
2970061a73 Implement HTTPClient in HTML5 platform
Limitations:

 - Subject to same-origin policy
 - No persistent connection (but simulated for compatibility)
 - No blocking mode
 - No StreamPeer access
 - No chunked responses
 - Cannot disable host verification
2017-11-13 00:58:29 +01:00
Goutte
91ca725f9b Add support for the TAU constant. Fixes #12094. 2017-11-12 13:32:35 +01:00
Rémi Verschelde
ed57f0a0d4 Remove get_default_video_mode definition on OSX/iOS
It had been missed in d09160a8b6 and broke compilation
for those platforms.

Took the opportunity to run clang-format on the code base to fix some corner cases
that went through our static tests/were overlooked recently.
2017-11-09 23:36:08 +01:00
Juan Linietsky
d09160a8b6 Make video mode initialization more intuitive, fixes #12022 2017-11-09 13:02:26 -03:00
Rémi Verschelde
c7cd89c29f
Merge pull request #12780 from karroffel/dictionary-crash
fix dictionary constant access crash
2017-11-09 16:30:07 +01:00
Karroffel
e25b6bf8da fix dictionary constant access crash 2017-11-09 16:27:27 +01:00
Bastiaan Olij
2a230d571d Increase joystick axis from 8 to 10 2017-11-08 19:56:30 +11:00
mhilbrunner
d5b7df8523 Use UTF-8 for locale names. Fixes #12462. 2017-11-07 21:57:43 +01:00
Geequlim
f7168bf217 Add indent and sort keys support for JSON.print 2017-11-07 11:52:45 +08:00
Rémi Verschelde
32dfdc12dc
Merge pull request #12656 from karroffel/dictionary-ordered-hashmap
make Dictionary use OrderedHashMap
2017-11-06 13:00:12 +01:00
Poommetee Ketson
b6db04993f
Merge pull request #12646 from poke1024/geomdocs
Basic docs for Geometry plus two new functions
2017-11-06 09:09:08 +07:00
Karroffel
c937b1f5f9 make Dictionary use OrderedHashMap 2017-11-05 15:27:28 +01:00
Bernhard Liebl
7ec32b6d09 Basic docs for Geometry plus two new functions 2017-11-05 07:56:27 +01:00
Zher Huei Lee
609cf36f8d Fixed dedent() binding did not return result 2017-11-05 09:07:06 +08:00
Karroffel
1386647cdf make ConfigFile sections ordered 2017-11-04 14:08:21 +01:00
Poommetee Ketson
9aebdd2ae8
Merge pull request #12593 from DmDerbin/master
AStar: implementation of get_point_connections
2017-11-04 16:49:29 +07:00
DmDerbin
4c79e58e3f AStar: implementation of get_point_connections 2017-11-04 11:21:03 +03:00
Karroffel
38d56c8351 make ConfigFile use OrderedHashMap 2017-11-03 14:33:19 +01:00
Juan Linietsky
79f81b77e2 -Modules can now add custom version info (added it for Mono)
-Version string takes this version info
-Ability to download templates from the interweb (listing does not work yet)
2017-11-01 23:13:27 -03:00
Zher Huei Lee
0804dd5336 Added String::dedent() to remove text indentation
This functions similarly to Python's textwrap.dedent()

It's also been applied to doc_data.cpp to remove extra whitespace while
parsing the XML.
2017-11-01 07:20:20 +08:00
Rémi Verschelde
ea0e942617
Merge pull request #12035 from Chaosus/wrapfunc
Added new Wrap functions for numbers
2017-10-31 23:30:50 +01:00
Rémi Verschelde
cb3f594b14
Merge pull request #11249 from m4nu3lf/bugfix/get_euler
Fix inertia tensor update & Generic6DOFJoint & Simplify Basis::get_euler()
2017-10-31 23:03:01 +01:00
N0hbdy
f3fc07272c Add Colemak keybindings to editor for osx 2017-10-30 22:51:02 +01:00
Захаров Андрей
e10ee8765f Added difference between function which return value or not
Now ADDFUNC with suffix R add function with return value.
It was changed because addfunc considers that the function
doesn't return a value if it returns NIL.
2017-10-30 22:46:15 +01:00
Rémi Verschelde
4889b80698
Merge pull request #12471 from mhilbrunner/autocomplete
Fix get_node() and $ autocompletion when using single quotes
2017-10-30 22:22:46 +01:00
Unknown
7683ff3e42 Fix get_node() and $ autocompletion when using single quotes 2017-10-30 21:58:32 +01:00
Rémi Verschelde
981ef0be59 Add support for non-ISO locale identifiers via renames map
Windows apparently uses "no" for Norwegian Bokmål, even though its
ISO 639-1 language code is "nb"... Closes #12479.

Also did some non-intrusive cleanup while at it.
2017-10-30 00:02:55 +01:00
Rémi Verschelde
9f4f630adf
Merge pull request #12437 from mhilbrunner/astar-setpointweightscale
AStar: Add setters for point position and scale weight, cleanup
2017-10-29 13:32:08 +01:00
Rémi Verschelde
568e905604
Merge pull request #12423 from tagcup/zstd_1.3.2
Update zstd to 1.3.2.
2017-10-27 20:28:59 +02:00
Unknown
9b4c5989ad AStar: Add setters for point position and scale weight, cleanup 2017-10-27 19:19:01 +02:00
Ferenc Arn
f3436a841a Add an option to use zstd's recently introduced long range matching (off by default). 2017-10-27 12:26:13 -04:00
Rémi Verschelde
b1b11ea411 Merge pull request #12422 from eska014/httpclient-api
Remove HTTPClient::send_body_text and ::send_body_data
2017-10-26 23:29:59 +02:00
Ferenc Arn
01815e9b5f Update zstd to 1.3.2. 2017-10-26 16:41:47 -04:00
Leon Krause
d1102cb37d Remove HTTPClient::send_body_text and ::send_body_data
These were never implemented, the request* methods provide parameters to
send body data as part of the client's requests.
2017-10-26 22:25:35 +02:00
santouits
55fae24710 Fix x11 boot logo position in fullscreen and in maximized 2017-10-26 01:06:26 +03:00
Jerome67000
2609cc9ef4 Removes Script::get_node_type()
used before GDScript, with squirrel apparently
2017-10-25 20:11:30 +02:00
sheepandshepherd
1cd40be491 Add a function to get the full name of a locale 2017-10-25 01:13:17 -05:00
Rémi Verschelde
847c55bcb1 Merge pull request #12365 from neikeq/p
Add ScriptLanguage::supports_builtin_mode and improve ScriptCreateDialog
2017-10-24 18:59:26 +02:00
Cradmon
8da9fd5d23 Small fix in core/set.h and similar fix in core/map.h 2017-10-24 15:59:54 +01:00
Ignacio Etcheverry
e218a13a64 Add ScriptLanguage::supports_builtin_mode and improve ScriptCreateDialog
- Make ScriptCreateDialog disable the built-in script checked button if the language does not support it.
- ScriptLanguage's get_template and make_template now receive the script path as class name if the the script language does not have named classes.
2017-10-24 15:48:58 +02:00
Rémi Verschelde
3c69a40caf Merge pull request #12183 from marcelofg55/err_index
Improved *_FAIL_INDEX error macros to print the index/size
2017-10-23 23:26:34 +02:00
Rémi Verschelde
4e0e513d5f Merge pull request #12341 from jagt/move-button-joy-enums
Move BUTTON and JOY constants to enums
2017-10-23 23:11:05 +02:00
jagt
4e94292573 move button/joy constants to enums 2017-10-23 13:36:50 +08:00
Robert Hernandez
794407e7b6 Fixed memory leak with AStar class 2017-10-22 18:37:02 -04:00
Juan Linietsky
b4f0f59d9f Many fixes to SSAO, should be good now. 2017-10-22 13:52:48 -03:00
Marcelo Fernandez
a97d7d948b Improved *_FAIL_INDEX error macros to print the index/size 2017-10-22 12:17:41 -03:00
Rémi Verschelde
99c8a8c7b1 Merge pull request #11401 from SaracenOne/snapped_drag
Added snapping to spatial drag and drop.
2017-10-22 12:06:00 +02:00
Poommetee Ketson
8265ff4c20 Bind MainLoop.notif_wm_go_back_request 2017-10-22 14:07:24 +07:00
Rémi Verschelde
50306041e5 Merge pull request #11982 from tagcup/get_quat
Added Basis::get_quat().
2017-10-21 23:51:07 +02:00
Rémi Verschelde
6361e24f29 Cleanup unnecessary debug prints 2017-10-21 20:41:07 +02:00
Patrick Yates
c433d83d81 Fix InputEventJoypadMotion::action_match for 0 axis values.
Make action_match ignore the sign if axis value is 0.
This means that an axis value of 0 will match actions defined for both positive and negative values, as expected.

Fixes #12223
2017-10-21 16:06:24 +11:00
Sebastian Krzyszkowiak
110adc80d2 variant.h: Update comments with numeric enum values
Comments got desynchronized with the actual values of the enum.
To avoid anyone making some stupid mistake here, let's fix it as soon
as possible.
2017-10-20 13:18:40 +02:00
Rémi Verschelde
2229056fcc Merge pull request #12247 from endragor/fix-rotated-logger
Fix rotated logger naming and backup deletion

[ci skip]
2017-10-20 12:57:25 +02:00
Rémi Verschelde
5f912a9186 Merge pull request #12241 from eska014/vs-binds
Bind more VisualServer functions

[ci skip]
2017-10-20 12:56:13 +02:00
Ruslan Mustakov
27b537cfca Fix rotated logger naming and backup deletion 2017-10-20 10:34:46 +07:00
Leon Krause
cf3919b228 Bind some VisualServer functions 2017-10-20 00:24:49 +02:00
Marcelo Fernandez
d3a039cb2f Fix Color.r8/g8/b8/a8 being type float instead of type int 2017-10-19 12:36:06 -03:00
Pedro J. Estébanez
d645b80e46 Fix formatting of debug log overflow
Fixes #12087.
2017-10-16 22:10:11 +02:00
Comanche_Ak
51597b6d69 Fix Alpha Border bugfix 2017-10-13 20:19:33 +03:00
Chaosus
216a8aa643 Added new wrap functions 2017-10-13 11:10:45 +03:00
Ruslan Mustakov
6106fd88d4 Remove junk output
Remove several prints that were added for engine debugging, but are
of no use to the end user, and only pollute the editor and game logs.
2017-10-13 12:40:19 +07:00
Rémi Verschelde
c30ab882d7 Merge pull request #11539 from BastiaanOlij/remove_directory_scan
Removed directory scan from project load
2017-10-11 23:37:10 +02:00
Rémi Verschelde
20a32d6a2e Merge pull request #12039 from Hinsbart/expose_joy_connection
Input: expose joy_connection_changed()

[ci skip]
2017-10-11 23:01:33 +02:00
Ferenc Arn
8861cc40fa Added Basis::get_quat() and set_quat(). 2017-10-11 16:56:47 -04:00
Andreas Haas
8f1ed9aaee
Input: expose joy_connection_changed() 2017-10-11 18:55:57 +02:00
Ignacio Etcheverry
740ef3dc97 Merge pull request #11954 from neikeq/d
Added 'exposed' field to ClassInfo for registered classes
2017-10-11 13:54:34 +02:00
Andreas Haas
1d8a546a07 Merge pull request #11919 from Toizi/array_sort_ref
Array::sort/invert now return reference to Array
2017-10-10 20:31:48 +02:00
Ignacio Etcheverry
8ac43bb1de Merge pull request #11987 from endragor/define-va-copy
Define va_copy with --std=c++03 (fixes #11979)
2017-10-10 16:35:39 +02:00
BastiaanOlij
e9c606fd29 Made directory scan optional 2017-10-10 23:45:54 +11:00
Ruslan Mustakov
73e86187bc Define va_copy with --std=c++03 (fixes #11979) 2017-10-10 12:09:59 +07:00
Ignacio Etcheverry
0c2e882210 Adds 'exposed' field to ClassInfo
This field represents if the class is exposed to the scripting API.
The value is 'true' if the class was registered manually ('ClassDB::register_*class()'), otherwise it's false (registered on '_post_initialize').
- Added missing registration of classes that are meant to be exposed.
2017-10-09 23:49:17 +02:00
Marius Guggenmos
2f173a67ab Array::sort, sort_custom and invert now return reference to Array to allow chaining of operations 2017-10-09 16:36:09 +02:00
Rémi Verschelde
e8b9cca614 Merge pull request #11810 from marcelofg55/osx_export_improv
OS X export code improvements
2017-10-09 12:20:39 +02:00
Emmanuel Leblond
80b15fba1d
Fix trailing whitespaces in project settings header comment 2017-10-09 08:34:32 +02:00
Rémi Verschelde
e5fcf0ee76 Merge pull request #11947 from eska014/fix-obj-marshalling
Fix exporting projects with custom input event actions
2017-10-09 00:04:28 +02:00
Leon Krause
c05c334de7 Fix binary marshalling of Objects 2017-10-08 20:13:46 +02:00
Emmanuel Leblond
d17951f57e
[GDnative] Add string_name api 2017-10-08 16:47:10 +02:00
Cong
dd684eaaa0 Use "Command" instead of "Meta" for macOS (#1619) 2017-10-08 17:23:05 +10:00
Andreas Haas
fd1d886cf8 Merge pull request #11853 from endragor/long-string-logging
Fix logging of long strings via RotatedFileLogger
2017-10-06 13:16:21 +02:00
Juan Linietsky
d938de67ff Make sure to obey hidpi to off by default, as present in project settings. Set it to on by default for editor.
Many integrated GPUs can't really get enough performance to play games at hidpi, so this should be enabled manually.
2017-10-05 16:41:42 -03:00
Juan Linietsky
3d87b70f7a Added the set/get_setting function in Editor/Project settings. Renamed has() to has_setting. Fixes #11844 2017-10-05 15:34:34 -03:00
Ruslan Mustakov
01ebcfe841 Fix logging of long strings via RotatedFileLogger 2017-10-05 16:16:20 +07:00
Gilles Roudiere
2e6f2ed032 Merge pull request #11812 from NathanWarden/fix_validate_ssl
Fixed a bug where ssl would force validation even though you told it not to.
2017-10-04 20:40:53 +02:00
Gilles Roudiere
5b9b158354 Merge pull request #11823 from endragor/virtual-keyboard-height
Allow to obtain virtual keyboard height
2017-10-04 18:16:28 +02:00
Ruslan Mustakov
275e537058 Allow to obtain virtual keyboard height
On mobile platforms virtual keyboards take up significant amount of
screen space and UI containing a text box may need to be adjusted
after the keyboard appears to keep the text box visible to user. This
commit adds a way to obtain virtual keyabord height so that controls
are aware of how much they need to move.
2017-10-04 17:21:05 +07:00
Juan Linietsky
3cadecf17b fixed the OS.has_feature() API, and added support for 32 and 64. 2017-10-03 17:36:14 -03:00
Nathan Warden
310a8eb902 Fixed a bug where ssl would force validation even though you told it not to. 2017-10-03 13:53:23 -05:00
Marcelo Fernandez
4b695c3bdf OS::execute can now read from stderr too when executing with a pipe 2017-10-03 15:09:04 -03:00
Hein-Pieter van Braam
2bece6bbd3 Merge pull request #11782 from eska014/persistent-userfs-test
Add OS::is_userfs_persistent, allow starting HTML5 platform in private mode
2017-10-03 12:24:11 +02:00
Andreas Haas
132ba0ed97 Merge pull request #11568 from endragor/loggers
Extract logging logic
2017-10-02 23:51:26 +02:00
Andreas Haas
5303efb2fa Merge pull request #11659 from AndreaCatania/prephysics
Renamed fixed_process to physics_process
2017-10-02 23:10:36 +02:00
Andreas Haas
2fbffb7cde Merge pull request #11730 from gabrielformiga/fix-small-png-texture-import
Change to Image::shrink_x2 function preventing it set a 0 width/height for mipmapped textures
2017-10-02 22:42:38 +02:00
Leon Krause
7b23665e72 Add OS::is_userfs_persistent to check user:// persistence
Allows starting HTML5 export when IndexedDB is not available.
2017-10-02 21:07:05 +02:00
Poommetee Ketson
478fd21e07 Merge pull request #11575 from marcelofg55/move_path_to_trash
FileSystemDock will now remove files/dirs to trashcan using OS::move_to_trash
2017-10-02 23:52:09 +07:00
Gabriel
40dcf4a2e7 Change to shrink_x2 function preventing it set a 0 width/height 2017-09-30 17:21:10 -03:00
AndreaCatania
4537977d6d Renamed fixed_process to physics_process 2017-09-30 16:19:07 +02:00
Hein-Pieter van Braam
350fcb6d98 Build MSVC safe_refcount in a separate compilation unit
Including windows.h in a globally included header gives all kinds of
issues. Move the MSVC implementation for safe_refcount back into a .cpp
file to prevent this from happening.
2017-09-27 00:01:02 +02:00
Marcelo Fernandez
20918587d3 FileSystemDock will now remove files/dirs to trashcan using OS::move_to_trash 2017-09-25 21:49:01 -03:00
Rémi Verschelde
e9e1753c3c Merge pull request #11445 from Cradmon/refactorCoreMap
Refactor core/map.h
2017-09-25 23:53:18 +02:00
Rémi Verschelde
c79fc6716e Merge pull request #11518 from hpvb/gdscript-direct-dispatch
Some more GDScript performance optimizations
2017-09-25 23:25:42 +02:00
Rémi Verschelde
78aa7b382a Merge pull request #11567 from QuLogic/scons-var-types
Add types to scons command-line options
2017-09-25 22:44:05 +02:00
Juan Linietsky
c5da28f24c Fixed constness of variant functions, as well as visual script sequence ports. Closes #11258 2017-09-25 17:09:27 -03:00
Elliott Sales de Andrade
45a9a680a3 Use BoolVariable for third-party options. 2017-09-25 14:36:30 -04:00
Hein-Pieter van Braam
758accdcc2 Make variant_op jumptable const
Not doing this was a bit of an oversight
2017-09-25 18:29:44 +02:00
Hein-Pieter van Braam
158c3fbf3c Allow inlining of all parts of safe_refcount
Differences with this aren't huge but the effort is minimal, in some
workloads gain a couple of percent of performance.
2017-09-25 18:29:18 +02:00
Ruslan Mustakov
1a2311e350 Extract logging logic
Previously logging logic was scattered over OS class implementations
with plenty of duplication. Major changes in this commit:

 - Extracted logging logic into a separate Logger hierarchy. It allows
   easy configuration of logging mechanism depending on compile-time or
   run-time configuration.

 - Implemented RotatedFileLogger which is usually used with StdLogger,
   providing persistency of logs. It is often important to be able to
   obtain logs of the game even in production to be able to understand
   what happened prior to some problem. On mobile there previously was
   no way to obtain the logs aside from having the device connected to
   your machine.

 - flush() is not performed in release mode for every logged line. It
   is only performed for errors.
2017-09-25 16:19:21 +07:00
Hein-Pieter van Braam
a124651280 Merge pull request #11549 from hpvb/fix-11543
Fix Dictionary set_named
2017-09-24 20:22:53 +02:00
Marcelo Fernandez
57d438eb7a Fix Variant::get_named return when p_index is invalid 2017-09-24 14:50:51 -03:00
Hein-Pieter van Braam
4d14d61bbc Fix Dictionary set_named
Reduz optimized field indexing in 3c85703 but the changes didn't apply
to dictionary so this code remained untouched. However, the logic for
validity checking was changed but not updated for the dictionary case.
2017-09-24 19:44:49 +02:00
Rémi Verschelde
ebaf2d89e9 Merge pull request #11473 from hpvb/fix-11466
Implement operator != on Pool*Array types
2017-09-24 15:59:59 +02:00
Elliott Sales de Andrade
a408388623 Enable building against system zstd. 2017-09-23 23:46:47 -04:00
Juan Linietsky
3c857033df Massive optimization to Variant::set_named/get_named. Should give a nice boost to GDScript. 2017-09-23 21:05:35 -03:00
m4nu3lf
3df217b1a1 Fix Basis::get_euler_xyz() 2017-09-22 20:19:11 +01:00
Hein-Pieter van Braam
7b492e6a23 Implement operator != on Pool*Array types
These types previously had equality checks but not inequality checks.
Add these too.

This fixes #11466
2017-09-22 14:40:42 +02:00
Rémi Verschelde
be60689812 Merge pull request #11461 from hpvb/add-likely-macros
Implement Linux-style likely()/unlikely() macros
2017-09-22 09:15:45 +02:00
Ross Hadden
1a97d6455d Fixed a bunch of typos, including an error code. 2017-09-21 23:58:29 -04:00
Hein-Pieter van Braam
22358babda Implement Linux-style likely()/unlikely() macros
This implement branch prediction macros likely() and unlikely() like in
Linux. When using these macros please ensure that when you use them the
condition in the branch really is very, very likely or unlikely. Think
90+% of the time. Primarily useful for error checking. (And I implement
these macros for all our error checking macros now)

See this article for more information:
https://kernelnewbies.org/FAQ/LikelyUnlikely

There are more places where these macros may make sense in renderer and
physics engine. Placing them will come in another commit down the line.
2017-09-21 18:28:28 +02:00
Juan Linietsky
423ca9bcaf Fix import order, so scenes are imported after textures.
Also fix bugs when meshes are always generated.
2017-09-20 21:04:20 -03:00
Cradmon
98f8e7df16 Refactor core/map.h to be similar to core/set.h 2017-09-20 23:57:18 +01:00
Juan Linietsky
71e4fae3a1 Merge pull request #11437 from hpvb/allow-compare-to-null
Allow equality checks between null and arbitrary types
2017-09-20 17:49:18 -03:00
Hein-Pieter van Braam
6565cf3360 Allow equality checks between null and arbitrary types
Uninitialzed values in GDScript are of type NIL so not allowing null
comparisons did end up breaking some code.

This commit reenables NULL equality checks for all types. We're going to
have to figure out how to make this fast for the compiler later.
2017-09-20 22:14:38 +02:00
Cradmon
0a1db473fb Refactor core/set.h 2017-09-20 18:52:40 +01:00
Rémi Verschelde
e3617cb187 Merge pull request #11409 from MarufSarker/PR-core-math-is_nan
Verbose and Platform-specific implementation for is_nan
2017-09-20 14:29:01 +02:00
letheed
5ad9be4c24 Rename pos to position in user facing methods and variables
Rename user facing methods and variables as well as the corresponding
C++ methods according to the folloming changes:

* pos -> position
* rot -> rotation
* loc -> location

C++ variables are left as is.
2017-09-20 13:11:10 +02:00
ABU MD. MARUF SARKER
7744bb153f verbose and platform specific implementation for is_nan 2017-09-20 08:20:08 +06:00
SaracenOne
2e22c07f42 Added snapping to spatial drag and drop. 2017-09-20 01:54:01 +01:00
Rémi Verschelde
593511b2b8 Merge pull request #10748 from Cradmon/fixCoreSet
Refactor core/set.h
2017-09-19 23:47:39 +02:00
Rémi Verschelde
27fb329c82 Merge pull request #11208 from kitsune/hex-color-shortcuts
Adds 3 and 4 digit html shortcuts to Color
2017-09-19 23:33:25 +02:00
Rémi Verschelde
d58b0a5c9a Merge pull request #11388 from hpvb/fix-missing-return-fail
Be type-strict checking on equality checks
2017-09-19 19:03:25 +02:00
Hein-Pieter van Braam
833c3917b2 Allow booleanization of all types
We now allow booleanization of all types. This means that empty versions
of all types now evaluate to false. So a Vector2(0,0), Dictionary(),
etc.

This allows you to write GDScript like:
if not Dictionary():
  print("Empty dict")

Booleanization can now also no longer fail. There is no more valid flag,
this changes Variant and GDNative API.
2017-09-19 18:55:31 +02:00
Rémi Verschelde
67aa409f59 Merge pull request #11405 from karroffel/new-hashmap
added OAHashMap type
2017-09-19 16:57:58 +02:00
Karroffel
add040d381 added OAHashMap type 2017-09-19 16:48:53 +02:00
Hein-Pieter van Braam
85641c545b Be type-strict checking on equality checks
After a short discussion with @reduz and @karroffel we decided to make
all non number/number comparisons return type errors on comparisons.

Now bool == bool is allowed but Vector2 == Vector3 is a type error and
no longer 'not equal'. The same has been done for the != operators.

In addition I forgot to add some failures to some Object operators
meaning that there was a potential for a crasher.
2017-09-19 16:00:19 +02:00
Rémi Verschelde
33e1716f13 Merge pull request #11402 from hpvb/remove-gdscript-checks-on-release
Various GDScript performance tweaks
2017-09-19 15:48:14 +02:00
Hein-Pieter van Braam
d05965963d Don't call Variant::reference() unnecessarily
operator= does not need to call reference() if the new value is of the
same type as the old. This saves us zeroing the Variant, This speeds
up reuse of a Variant in a loop by roughly 50%.
2017-09-19 15:27:57 +02:00
Rémi Verschelde
ba4439c491 Merge pull request #11386 from kosz78/fix-msvc-compile-errors
Fix MSVC compilation errors
2017-09-19 14:58:19 +02:00
Hein-Pieter van Braam
36e8bee752 Fix accidental cast to Vector3 for Vector2 iter 2017-09-19 14:18:12 +02:00
Indah Sylvia
13b630eb0c Fixed Typo: 'Seperate' to 'Separate' 2017-09-19 15:51:00 +07:00
Konstantin Zaitsev
c386a02654 Fix MSVC compilation errors 2017-09-19 10:33:07 +07:00
Hein-Pieter van Braam
137f8a58a8 Move Variant::evaluate() switch to computed goto
In an effort to make GDScript a little faster replace the double
switch() with a computed goto on compilers that set __GNUC__. For
compilers that don't support computed goto it will fall back to regular
switch/case statements.

In addition disable using boolean values in a mathematical context. Now
boolean values can only be compared with other booleans. Booleans will
also no longer be coerced to integers.

This PR replaces #11308 and fixes #11291
2017-09-17 22:49:23 +02:00
Marcelo Fernandez
3528b1e571 Fix x11 exported executables not getting the +x flag 2017-09-17 14:40:58 -03:00
Thomas Herzog
41715c1e8f Merge pull request #11294 from karroffel/json-object
added JSON singleton
2017-09-17 16:31:27 +02:00
Rémi Verschelde
a1b4e4c607 Merge pull request #11272 from Rubonnek/move-to-initializer-list
Moved class_name and return_val to initializer list
2017-09-17 12:52:46 +02:00
Rémi Verschelde
2db9973ad4 Merge pull request #11176 from bncastle/master
Implement +,-,/, * and negate operators for Color type
2017-09-17 12:43:21 +02:00
Rémi Verschelde
6dd8dd935e Merge pull request #11343 from BastiaanOlij/fix_basename
Fixed naming of pck file
2017-09-17 12:03:39 +02:00
Bastiaan Olij
913e5cabbd Fixed naming of pck file 2017-09-17 11:59:56 +10:00
Poommetee Ketson
a9229d37c8 Merge pull request #11223 from GodotExplorer/pr-undoredo
Expose more methods for UndoRedo
2017-09-17 08:48:38 +07:00
bncastle
9d9cfc6f61 Implement +,-,/, * and negate operators for Color type. 2017-09-16 13:09:49 -04:00
Ignacio Etcheverry
f1f8fd1b68 Adds _OS::PowerState enum 2017-09-16 12:28:23 +02:00
karroffel
308d20aba5 added JSON singleton
There was no way to access JSON functionality in scripting languages
apart from GDScript because the JSON class wasn't exposed to ClassDB.
2017-09-15 15:40:27 +02:00
Thomas Herzog
7dffed485b Merge pull request #11230 from maxim-sheronov/fix_enum_bindings
Fix enums bindings
2017-09-15 08:43:35 +02:00
Wilson E. Alvarez
0f4643a4f6 Moved class_name and return_val to initializer list 2017-09-14 12:54:37 -04:00
Ruslan Mustakov
f08bc0df7c Construct Variants from Reference properly in GDNative
Previously godot_variant_new_object constructed Variant without
accounting for the fact that the Object can be a Reference, so refcount
was not increased and References were destructed prematurely.

Also, Reference::init_ref did not propagate refcount increment to the
script instance, which led to desync of refcount info on the script
side and Godot side.
2017-09-14 19:40:36 +07:00
Rémi Verschelde
ae4cd72e62 Drop unused EventQueue class
Thanks to @Marqin for the notice.
2017-09-13 20:56:23 +02:00
Maxim Sheronov
0fffa45158 Fix enums bindings
Add missed bindings for enums
Move some enums to class to have correct output of api.json
2017-09-13 20:57:07 +03:00
Marcelo Fernandez
83fe937362 Added a crash handler to dump the backtrace on Windows, Linux and OS X 2017-09-13 10:07:23 -03:00
Rémi Verschelde
42504ef0d4 Merge pull request #11062 from BastiaanOlij/osx_datapack
Fixed loading package from resource folder, exporting textures to bun…
2017-09-13 11:11:01 +02:00
Rémi Verschelde
e73e00d369 Style: Apply clang-format to @reduz's changes
[ci skip]
2017-09-13 09:13:34 +02:00
Geequlim
ae18b1f83f Expose more methods for UndoRedo 2017-09-13 12:18:51 +08:00
Dylan Enloe
8bff891f3c Adds 3 and 4 digit html shortcuts to Color
Color::html now expands 3 and 4 digit hex values into 6 and 8 digit
values by repeating each digit. This is to bring it in line with how
html handles these values

fixes #10997
2017-09-12 14:05:33 -07:00
Juan Linietsky
4f929a0fdf Changed the doc class generation to individual files per class. It is also possible to save module files in module directories and the build system will
recognize them.
2017-09-12 17:45:41 -03:00
Cradmon
15fa2194a6 Refactor core/set.h 2017-09-12 14:10:35 +01:00
Rémi Verschelde
aebf4fb48c Merge pull request #11106 from hpvb/documentation-fix-poolarrays
Correct the Pool*Array documentation
2017-09-12 15:02:22 +02:00
Rémi Verschelde
26017499a5 Merge pull request #11049 from scayze/astar_get_points
Add get_points() method to AStar
2017-09-12 14:07:06 +02:00
Rémi Verschelde
4f51211dfb Merge pull request #11028 from mrawlingst/color-RGBA32
Change Color.to_32() to Color.to_rgba32() and lowercase other functions
2017-09-12 13:44:43 +02:00
Rémi Verschelde
aabbd00284 Merge pull request #10908 from hpvb/fix-unused-variables
Fix unused variable warnings
2017-09-12 12:55:53 +02:00
Rémi Verschelde
cf941fdc35 Merge pull request #11026 from hpvb/fix-assign-in-if
Remove assignment and declarations in if statements
2017-09-12 11:57:49 +02:00
Rémi Verschelde
2b50dc5d4f Merge pull request #11057 from hpvb/fix-various-warnings
Fix various assorted warnings
2017-09-12 11:39:47 +02:00
Rémi Verschelde
8da1732013 Merge pull request #11044 from hpvb/fix-enum-as-bool
Fix using enum as bool value
2017-09-12 11:18:27 +02:00
Rémi Verschelde
dbb28559db Merge pull request #11040 from hpvb/fix-enum-compare
Fix warnings comparing enums of different types
2017-09-12 11:17:28 +02:00
Rémi Verschelde
3941e01a57 Merge pull request #11041 from hpvb/fix-clang-format-error
Fix serveral recent new clang-format errors

[ci skip]
2017-09-12 11:16:36 +02:00
geequlim
20442d0a89 Add user data directory support for ProjectSettings::globalize_path 2017-09-10 16:33:54 +08:00
Hein-Pieter van Braam
daa66cd5c2 Correct the Pool*Array documentation 2017-09-09 16:39:22 +02:00
Hein-Pieter van Braam
b2a38854fd Fix unused variable warnings
The forth in my quest to make Godot 3.x compile with -Werror on GCC7
2017-09-08 15:03:53 +02:00
Hein-Pieter van Braam
8230bf0a2f Remove assignment and declarations in if statements
After discussing with @reduz and @akien-mga it was decided that we do
not allow assignments or declarations in if statements. This PR removes
the instances of this I could find by automated means.
2017-09-08 14:59:15 +02:00
Hein-Pieter van Braam
67a706fc1b Fix various assorted warnings
Fix various warnings that don't have enough instances to merit
individual commits. Also fixes a potential bug in audio_server.cpp.
2017-09-08 14:57:48 +02:00
BastiaanOlij
099546ac00 Fixed loading package from resource folder, exporting textures to bundle and added a bit of feedback for a debug compile 2017-09-08 11:39:32 +10:00
Hein-Pieter van Braam
5e18967d77 Fix serveral recent new clang-format errors 2017-09-08 00:20:16 +02:00
Juan Linietsky
eedb39091a Several fixes to directional shadows, closes #10926
Added option to change directional light range mode, between optimized and stable. For Orthogonal, you might need to use optimized.
2017-09-07 18:00:47 -03:00
mrawlingst
6aa5bc2347 Change Color.to_32() to to_rgba32() and format as RGBA 2017-09-07 16:19:44 -04:00
Scayze
6872cc7b12 Add get_points method to AStar 2017-09-07 19:15:46 +02:00
Hein-Pieter van Braam
6fb86dda8a Fix using enum as bool value
This warning actually hid a bug. The value of ERR_INVALID_DATA is
actually 30, returning this as a bool returns true while false was
required.
2017-09-07 11:39:14 +02:00
Hein-Pieter van Braam
0b23a31b43 Fix warnings comparing enums of different types
This fixes a source of many compiler warnings regarding comparing the
enum VARIANT_TYPE to Variant::Type. This changes the local value to a
static const Variant::Type value rather than an unrelated enum, this
also saves us a cast.
2017-09-07 09:03:11 +02:00
Juan Linietsky
c771e03ee2 -Fixed changes to default input actions not working, closes #10502
-Added Array.duplicate() method, needed to fix above
2017-09-06 18:14:04 -03:00
Ignacio Etcheverry
96b205d2ed Fixes ERR_EXPLAIN being overwritten 2017-09-06 04:43:07 +02:00
Thomas Herzog
dcdde2f5a9 Merge pull request #10993 from endragor/nativescript-property-order
Provide NativeScript properties in definition order
2017-09-05 11:47:51 +02:00
Ruslan Mustakov
269203a022 Provide NativeScript properties in definition order 2017-09-05 12:45:23 +07:00
Evgeny Zuev
a0bdb6e2f6 Optimize memory allocations in VariantParser::get_token 2017-09-05 11:04:33 +07:00
Evgeny Zuev
cae0059d5f Add StringBuffer class 2017-09-05 11:04:11 +07:00
Rémi Verschelde
efa50fbdfd Merge pull request #10975 from hpvb/remove-null-check-from-cast-to
Remove NULL check from Object::cast_to()
2017-09-05 00:14:35 +02:00
Thomas Herzog
84c33cfe6b Merge pull request #10860 from karroffel/bob-the-string-builder
added StringBuilder class
2017-09-04 23:44:23 +02:00
Hein-Pieter van Braam
f8cb9f5516 Remove NULL check from Object::cast_to()
After discussing this with @reduz on IRC we agreed to remove these
checks. We now consider cast_to() to be NULL safe
2017-09-04 22:29:43 +02:00
Juan Linietsky
6d233c651b -Changed KinematicBody API yet again to make it friendlier
-Fixed get_scale functions (and added set_scale) to make it more coherent when decomposing and composing (fixes bugs in transform interpolation)
2017-09-04 07:49:42 -03:00
Rémi Verschelde
b5d2d0a9a5 Merge pull request #10939 from neikeq/fix-overridden-external-editors
Fixes language overridden external editors
2017-09-04 08:12:29 +02:00
Ignacio Etcheverry
52a7be4eef Fixes language overridden external editors 2017-09-03 21:23:36 +02:00
Juan Linietsky
ce28452109 -Fixed EditorDirDialog, which was really old and needed to use EditorFileSystem
-Fixed refactoring tools to work with imported scenes (properly move .import files)
2017-09-03 00:24:36 -03:00
Rémi Verschelde
53e7f55a89 Merge pull request #10903 from neikeq/fix-defval-order-definitely-i-promise
Fixes order of default arguments in MethodInfo
2017-09-03 01:38:30 +02:00
Ignacio Etcheverry
d1e00130e9 Fixes order of default arguments in MethodInfo
This time for real
2017-09-02 20:43:40 +02:00
Poommetee Ketson
459f526119 Fix typos 'a' and 'an' 2017-09-02 21:19:06 +07:00
Hein-Pieter van Braam
9c63ab99f0 Fix use of unitialized variables
The second in my quest to make Godot 3.x compile with -Werror on GCC7
2017-09-02 01:59:26 +02:00
Rémi Verschelde
dac150108a Merge pull request #10846 from hpvb/fix-sign-compare
Fix signed and unsigned comparisons
2017-09-01 21:52:55 +02:00
Ignacio Etcheverry
6209b72b07 Merge pull request #10862 from neikeq/fix-defvals-methodinfo
Fixes reversed order of default arguments in MethodInfo
2017-09-01 21:19:58 +02:00
Karroffel
95a0886f93 added StringBuilder class
When doing large string concatenations the default push_back on the
String class can slow down things quite a bit. This is because it
has to constantly reallocate the memory and copy the contents. This
StringBuilder class delays the concatenation until the size of the
resulting string is known.
2017-09-01 19:52:32 +02:00
Ignacio Etcheverry
27ca7e7313 Fixes reversed order of default arguments in MethodInfo 2017-09-01 16:33:16 +02:00
Poommetee Ketson
ed606ded52 Fix files header 2017-09-01 21:07:55 +07:00
Rémi Verschelde
1e0fc4dc4e Merge pull request #10318 from endragor/ordered-hash-map
Implement OrderedHashMap
2017-09-01 13:09:30 +02:00
Hein-Pieter van Braam
2ea5d33358 Has_method is already provided by Object
c812c17633 introduces some extra gdscript bindings for signal discovery
and adds a binding for has_method() to Script objects. This method is
already provided by the ancestor Object.

This fixes the startup message:
ERROR: bind_methodfi: Class Script already has a method has_method
   At: core/class_db.cpp:1178.
2017-09-01 09:04:08 +02:00
Hein-Pieter van Braam
f9467ec1ea Fix signed and unsigned comparisons
The first in my quest to make Godot 3.x compile with -Werror on GCC7
2017-09-01 08:13:12 +02:00
Juan Linietsky
d39e79e7ec Fix issues regarding reload of resources in imported scenes. Closes #10017 2017-08-31 18:57:44 -03:00
Rémi Verschelde
f00760b22c Merge pull request #10382 from toger5/dark_icons
Light Theme
2017-08-31 11:47:18 +02:00
toger5
426c6b2c49 added to_ABGR32() to core/Color 2017-08-30 21:20:01 +02:00
Ferenc Arn
5ad8d310f2 Add a new decomposition to Basis.
This new decomposition splits the basis into a rotation-reflection matrix and a positive scaling matrix, which is required for physics calculations.
2017-08-30 09:37:18 -04:00
Ferenc Arn
a0bbf5c9af Remove Basis::set_scale and Basis::set_rotation_* functions.
Those functions were added in #8277 but they did more harm than good. They're subtle, don't do what people think and requires users to understand the non-uniqueness of polar decomposition. They ended up confusing people.

Until we store additional information enough to make a unique polar decomposition, these functions shouldn't be a part of Basis.
2017-08-29 21:47:59 -04:00
Juan Linietsky
145ff58277 Fix constant reimport on broken files, closes #9930 2017-08-29 20:17:59 -03:00
Juan Linietsky
9c3bddfac2 Merge pull request #10745 from neikeq/fix-docdata-and-stuff
DocData and virtual method type hints fixes
2017-08-29 20:11:07 -03:00
Ignacio Etcheverry
ddb1ce08c3 Fixes missing default arguments in MethodInfo 2017-08-29 19:40:28 +02:00
Ignacio Etcheverry
c16d00591b DocData and type hints fixes
- Makes vararg methods automatically use PROPERTY_USAGE_NIL_IS_VARIANT on return types
- Completely removes the ":type" suffix for method names. Virtual methods must use the MethodInfo constructors that takes Variant::Type or PropertyHint as the first parameter for the return type (with CLASS_INFO as a helper to get the PropertyInfo). Parameters must use PROPERTY_HINT_RESOURCE_TYPE and hint string.
- PROPERTY_USAGE_NIL_IS_VARIANT is no longer needed for parameters, because parameters cannot be void.
- Adds missing PROPERTY_USAGE_NIL_IS_VARIANT to virtual and built-in methods that return Variant.
2017-08-29 19:40:21 +02:00
Juan Linietsky
c812c17633 Made some methods to check method/signal availability in GDScript, closes #9800 2017-08-29 14:33:27 -03:00
Wilson E. Alvarez
b9d0579be9 Removed ParamDef and ParamHint structs 2017-08-29 04:28:17 -04:00
Juan Linietsky
8fce79aaee -Some fixes to code completion.
-Fix getter in code completion being displayed when it shouldn't
-Clean up preview generation for editors and exposed it as editor plugin
2017-08-28 00:04:24 -03:00
Matthias Hoelzl
b6e1e47e3a Make build scripts Python3 compatible
- The Windows, UWP, Android (on Windows) and Linux builds are
  tested with Scons 3.0 alpha using Python 3.
- OSX and iOS should hopefully work but are not tested since
  I don't have a Mac.
- Builds using SCons 2.5 and Python 2 should not be impacted.
2017-08-27 23:05:39 +02:00
Rémi Verschelde
7ad14e7a3e Dead code tells no tales 2017-08-27 22:13:45 +02:00
Rémi Verschelde
bd282ff43f Use HTTPS URL for Godot's website in the headers 2017-08-27 14:16:55 +02:00
Rémi Verschelde
c90bfcb1c6 Re-apply clang-format to all files
Some badly formatted code has managed to pass through our CI...
2017-08-27 14:16:32 +02:00
Ignacio Etcheverry
b50a937fe6 MethodBind: Adds operator== to compare by id 2017-08-26 21:41:25 +02:00
Rémi Verschelde
53c0010932 Merge pull request #10658 from henkz1/android-build
Fix Android build
2017-08-26 20:32:23 +02:00
Poommetee Ketson
4950ef7478 Fix double single quotes in connect error print 2017-08-27 00:46:33 +07:00
Henrik Andersson
3cd3c1da5f Fix refactored Object::cast_to in NO_SAFE_CAST branch 2017-08-26 18:59:37 +02:00
Rémi Verschelde
9f1e3903df Merge pull request #10648 from Xrayez/image-get-size
Add handy get_size() method to Image class
2017-08-26 18:37:08 +02:00
Rémi Verschelde
565600e844 Cleanup tons of obsolete commented out code
Mostly in EditorNode, dropping some obsolete editor plugins and also a
cleanup of ProjectSettings/EditorSettings.
2017-08-26 17:47:57 +02:00
Andrii Doroshenko (Xrayez)
4de96518c8 Add handy get_size() method to Image class 2017-08-26 15:01:21 +03:00
Hein-Pieter van Braam
cacced7e50 Convert Object::cast_to() to the static version
Currently we rely on some undefined behavior when Object->cast_to() gets
called with a Null pointer. This used to work fine with GCC < 6 but
newer versions of GCC remove all codepaths in which the this pointer is
Null. However, the non-static cast_to() was supposed to be null safe.

This patch makes cast_to() Null safe and removes the now redundant Null
checks where they existed.

It is explained in this article: https://www.viva64.com/en/b/0226/
2017-08-24 23:08:24 +02:00
Hein-Pieter van Braam
4aa2c18cb4 Add a static version of Object::cast_to()
This is to prepare to replace all instances of the member version of
cast_to().
2017-08-24 23:08:24 +02:00
volzhs
62bb600b5c Show proper string with InputEvent.as_text() 2017-08-25 01:14:36 +09:00
Juan Linietsky
05a6785344 GCC fixes 2017-08-24 00:50:16 -03:00
Juan Linietsky
36e0a72c77 -Code completion for enumerations
-Disabled GDNative and GDNativeScript so build compiles again
2017-08-24 00:06:56 -03:00
Juan Linietsky
3d1c031871 Changed MethodBind API to request information from methods. It's much claner now.
Also changed PropertyInfo to include informatino about class names.
2017-08-23 19:11:11 -03:00
Wilson E. Alvarez
298a6934b6 Moved member variables to initializer list 2017-08-22 11:47:50 -04:00
Juan Linietsky
8a4e05a440 Merge pull request #10520 from RandomShaper/fix-double-parsing
Fix tokenization of doubles
2017-08-22 10:02:42 -03:00
Rémi Verschelde
7f49e2a7a0 Merge pull request #10487 from marcelofg55/curscr_as_default
p_screen param from get_screen_* funcs now default to the current screen
2017-08-22 08:12:04 +02:00
Rémi Verschelde
df590fc2d3 Merge pull request #10340 from Rubonnek/remove-unnecessary-assignments
Removed unnecessary assignments
2017-08-22 00:58:12 +02:00
Rémi Verschelde
13f879587d Merge pull request #10254 from marcelofg55/master
Added notification const NOTIFICATION_WM_ABOUT
2017-08-22 00:56:31 +02:00
Juan Linietsky
2cc8309249 Merge pull request #10351 from neikeq/enums-are-for-the-weak
ClassDB: Provide the enum name of integer constants
2017-08-21 19:56:08 -03:00
Rémi Verschelde
92410df24c Merge pull request #10415 from tagcup/euler_hack
Fix incorrect workaround for pure Y (X) rotations in XYZ (YXZ) conven…
2017-08-22 00:54:39 +02:00
Rémi Verschelde
135027a2f6 Merge pull request #10225 from Noshyaar/map
GDScript Built-in: add inverse_lerp & range_lerp
2017-08-22 00:31:46 +02:00
Pedro J. Estébanez
6759a28050 Fix tokenization of doubles
Fixes #9600.
2017-08-21 23:59:29 +02:00
Rémi Verschelde
e9c43cecbf Merge pull request #10433 from djrm/pr_svg_support
SVG support
2017-08-21 23:49:07 +02:00
Marcelo Fernandez
63f847b306 p_screen param from get_screen_* funcs now default to the current screen 2017-08-21 18:28:29 -03:00
Rémi Verschelde
de261ef380 Merge pull request #10484 from Sipaha/pr_mt_queue_deadlock_fix
Fix deadlock in CommandQueueMT
2017-08-21 22:55:07 +02:00
Wilson E. Alvarez
738d2ab969 Removed unnecessary assignments 2017-08-21 15:15:55 -04:00
Rémi Verschelde
4717d37bfa Merge pull request #10471 from akien-mga/args-doubledash
Third take at making command-line arguments more UNIX-like + main.cpp and help cleanup
2017-08-21 21:01:19 +02:00
Juan Linietsky
1be30f35a6 Fix binary object marshalling, closes #9472 2017-08-21 11:22:08 -03:00
Rémi Verschelde
93f1fb1c2f Fixes for new two-dash long command line arguments
- Fixes some single-dash leftovers that were missed in the previous commit
- Reorder the help output for clarity, and document missing options
- Drop obsolete options: --noop, --pack, --editor-scene, --level, --import, --import-script, --no-quit
- Improve error message on malformed arguments and do not display help on error
- Always use long form of arguments when starting a new Godot process from C++, for clarity and easy grepping
- Cleanup obsolete code here and there
2017-08-21 08:09:22 +02:00
Juan Linietsky
533014b88c simplify the way window is allowed to steal focus, no longer relying on project.godot. Closes #9459 2017-08-20 23:42:54 -03:00
Ignacio Etcheverry
32dd9a9f66 ClassDB: Provide the enum name of integer constants 2017-08-20 22:07:43 +02:00
Daniel J. Ramirez
da8fecf25e Added support for SVG 2017-08-20 13:53:02 -05:00
Sipaha
f6ee4cac39 Move wait_for_flush out of queue lock 2017-08-21 01:10:44 +07:00
Juan Linietsky
541fdffc0a Merge pull request #10319 from neikeq/pr-engine-editor-hint
Adds Engine::is_editor_hint() method
2017-08-20 12:55:46 -03:00
Rémi Verschelde
f6c39830cb Merge pull request #10481 from neikeq/water-store-remark
Fixes Ref's GetTypeInfo missing with ptrcall disabled
2017-08-20 16:34:38 +02:00
Ignacio Etcheverry
af4c4397df Fixes Ref's GetTypeInfo missing with ptrcall disabled 2017-08-20 14:28:22 +02:00
Przemysław Gołąb (n-pigeon)
6d56c73de7 Exposed Transform.interpolate_with()
Additionaly changed values names for 2D version to more descriptive ones.
2017-08-20 00:09:45 +02:00
Juan Linietsky
b9dcebb37c Revert "Second take at making command-line arguments more UNIX-like + main.cpp and help cleanup" 2017-08-19 17:47:27 -03:00
Rémi Verschelde
70b0857f6c Fixes for new two-dash long command line arguments
- Fixes some single-dash leftovers that were missed in the previous commit
- Reorder the help output for clarity, and document missing options
- Drop obsolete options: --noop, --pack, --editor-scene, --level, --import, --import-script, --no-quit
- Improve error message on malformed arguments and do not display help on error
- Cleanup obsolete code here and there
2017-08-19 16:48:11 +02:00
Ignacio Etcheverry
fd69604bd9 Adds editor_hint to Engine class 2017-08-19 01:03:12 +02:00
Rémi Verschelde
18a7315381 Rename localization method to tr again
Partial revert of #10380 based on contributor ~~bullying~~ feedback.
2017-08-18 22:38:38 +02:00
Juan Linietsky
72be8876ea Properly manage drawing of primitives when they lack an area, fixes #8930 2017-08-18 15:12:48 -03:00
Poommetee Ketson
d28da86f9f GDScript Built-in: add inverse_lerp & range_lerp 2017-08-18 21:49:03 +07:00
Juan Linietsky
dc62389739 -Properly check limits to objects sent (regarding to size), fixes #9034
-Changed the way objects are marshalled and sent to the debugger
-Editing debugged objects happens in the remote inspector now
2017-08-18 10:59:31 -03:00
Rémi Verschelde
1a92906b68 Merge pull request #10406 from marcelofg55/closest_power_of_2
Add closest_power_of_2 func and implement mix_rate/latency on OS X
2017-08-18 08:12:56 +02:00
Ferenc Arn
94aa4092f5 Fix incorrect workaround for pure Y (X) rotations in XYZ (YXZ) convention.
Fixes #10352.
2017-08-18 01:45:36 -04:00
Marcelo Fernandez
eab850524e Add closest_power_of_2 func and implement mix_rate/latency on OS X 2017-08-17 19:51:13 -03:00
Rémi Verschelde
ee59e627de Merge pull request #10380 from akien-mga/XL_MESSAGE
Rename `XL_MESSAGE`/`tr` to `localize`
2017-08-17 22:41:55 +02:00
Rémi Verschelde
c72529baf0 Rename XL_MESSAGE aka tr to localize
Also renames `set_message_translation` to `set_message_localization`
for consistency.
2017-08-17 18:10:22 +02:00
Marcelo Fernandez
aae29c7a0e Added notification const NOTIFICATION_WM_ABOUT 2017-08-17 11:28:45 -03:00
Rémi Verschelde
a8a6082dc0 Merge pull request #8899 from toger5/BetterFlatStylebox
Better flat stylebox with rounded corners
2017-08-16 18:15:04 +02:00
TwistedTwigleg
00f6c85928 Synchronize parameter names in definition and declaration
Fixes #10244.
2017-08-16 17:22:23 +02:00
Rémi Verschelde
035d74f54a Rename cull_AABB to cull_aabb
Part of #8830.
2017-08-16 17:01:05 +02:00
Rémi Verschelde
a8207b2dc7 Merge pull request #10264 from Rubonnek/use-const-reference
Use const reference where favorable
2017-08-16 16:41:35 +02:00
kubecz3k
edd6dce622 Merge pull request #10334 from Faless/fix_spbuffer_utf8
Fix StreamPeer put_utf8_string not working
2017-08-15 23:06:40 +02:00
toger5
c39ac8650d Added Corner Enum 2017-08-15 19:36:34 +02:00
Andreas Haas
155402dc1b
Removing a Resource also deletes imported files. 2017-08-15 01:13:41 +02:00
Wilson E. Alvarez
21d281c4a9 Use const reference where favorable 2017-08-14 13:28:06 -04:00
Juan Linietsky
b7571582ed Ability to save objects to binary format 2017-08-14 11:59:23 -03:00
Fabio Alessandrelli
74795b98da Fix StreamPeer put_utf8_string not working 2017-08-14 13:19:02 +02:00
Rémi Verschelde
0e81053de8 Merge pull request #10296 from raymoo/fixstreampeerbuffer
Fix broken stream reading in StreamPeerBuffer
2017-08-13 17:24:49 +02:00
Ruslan Mustakov
8d26748f80 Implement OrderedHashMap 2017-08-13 17:38:00 +07:00
Andreas Haas
5052cb2b91
InputEventJoypadMotion: Add missing is_pressed() method. 2017-08-12 13:04:14 +02:00
Raymoo
f87100780e Fix broken stream reading in StreamPeerBuffer 2017-08-12 01:19:50 -07:00
Rémi Verschelde
5c6e41cc13 Merge pull request #10190 from tagcup/euler_yxz
Use YXZ convention for Euler angles.
2017-08-11 10:38:46 +02:00
Rémi Verschelde
7ed64327a9 Merge pull request #10163 from ISylvox/resoucre-to-resource
Core/io: Fix typo in resource_format_binary
2017-08-11 10:36:33 +02:00
Rémi Verschelde
5cb09d31d8 Merge pull request #10142 from bruvzg/3.0-osx-ime
Add IME support (macOS)
2017-08-11 10:35:10 +02:00
Rémi Verschelde
306c0471f7 Merge pull request #9987 from Rubonnek/move-members-to-initilization-list
Moved member variables from constructor to initialization list
2017-08-11 10:31:04 +02:00
Ignacio Etcheverry
78619a5866 Fixes method definitions with extra number of arguments 2017-08-10 07:17:51 +02:00
Ignacio Etcheverry
b8420cda9c Removes type information from vararg method binds 2017-08-10 07:17:51 +02:00
Ignacio Etcheverry
2f290038d6 Removes type information from method binds 2017-08-10 07:17:50 +02:00
Ignacio Etcheverry
1e74f27f8f Adds missing type information to virtual method binds 2017-08-10 07:17:50 +02:00
Ignacio Etcheverry
46fdf16399 Improves method bind detection of signature types 2017-08-10 07:17:44 +02:00
bruvzg
8aa86cb9bc Implement NSTextInputClient protocol for IME 2017-08-09 19:09:33 +03:00
Ferenc Arn
53c23b0222 Use YXZ convention for Euler angles.
As discussed in issues #1479 and #9782, choosing the up axis (which is Y in Godot) as the axis of the last (or first) rotation is helpful in practical use cases.
This also aligns Godot's convention with Unity, helping with a smoother transition for people who are used to working with Unity (issue #9905).

Internally, both XYZ and YXZ functions are kept, for potential future applications.
2017-08-09 09:05:37 -04:00
Wilson E. Alvarez
6d112a68b6 Moved member variables from constructor to initialization list 2017-08-08 21:43:19 -04:00
Juan Linietsky
90a595ac42 Set some reasonable limits for sending information to the debugger, closes #5848 2017-08-08 20:55:22 -03:00
Indah Sylvia
51f56a4282 core/io: fix typo 'resoucre' to 'resource' 2017-08-08 12:02:49 +07:00
Juan Linietsky
cd9539f85d Display the Y angle properly when rotating from gizmo, partially helps #1479 2017-08-07 15:09:08 -03:00
Rémi Verschelde
e12b422c90 Merge pull request #10112 from ISylvox/completely-renaming-path_db
Renames Leftover 'path_db' -->> 'node_path'

[ci skip]
2017-08-07 15:09:43 +02:00
Indah Sylvia
83691fec4e renames leftover 'path_db' to node_path 2017-08-07 20:03:58 +07:00
Indah Sylvia
5ae78fdf6a Makes all Godot API's methods Lower Case 2017-08-07 18:24:35 +07:00
Juan Linietsky
134b3edf5a Merge pull request #10123 from bojidar-bg/7695-key-kp-enter
Rename KEY_RETURN to KEY_ENTER and KEY_ENTER to KEY_KP_ENTER
2017-08-06 21:04:11 -03:00
Bojidar Marinov
7b7c7c8dc0
Rename KEY_RETURN to KEY_ENTER and KEY_ENTER to KEY_KP_ENTER
Closes #7695
2017-08-06 16:26:07 +03:00
Juan Linietsky
475e8b28b2 keep default exported script values unless overriden, closes #8127 2017-08-06 09:33:59 -03:00
Ruslan Mustakov
789815466a Fix is_class check typo in ObjectDB::cleanup 2017-08-06 16:04:35 +07:00
Ignacio Etcheverry
97e942dd42 Merge pull request #10117 from neikeq/pr-classdb-getpropidx
ClassDB: Adds get_property_index method
2017-08-06 07:26:49 +02:00
Juan Linietsky
37adf936ab few bugs fixed thanks to explicit bool constructor and clang.
explicit bool constructor has thus now been removed, as it served it's mission!
2017-08-05 21:43:10 -03:00
Ignacio Etcheverry
aee99ab59f ClassDB: Adds get_property_index method 2017-08-06 02:04:10 +02:00
Juan Linietsky
a3a7fb83e6 Made bool constructor explicit in Variant to avoid bugs, fixes #7843 2017-08-05 19:50:53 -03:00
Juan Linietsky
cfe4b30941 renamed node path, closes #5691 2017-08-05 09:13:59 -03:00
Juan Linietsky
5c361485db -Added GLTF scene support (still missing animations and .glb extension)
-Fixed bugs regarding tangent generation in SurfaceTool
2017-08-02 15:43:49 -03:00
Pedro J. Estébanez
02607b3103 Use atomics for memory use tracking
Plus:
- An allocation is counted only after checking its success.
- Max usage is updated after growing reallocs as well.
- Drop unused header.
- Changed the 0xFFF.. at get_mem_available() to -1 with a comment telling it's the same, but more universal.
2017-08-01 01:50:56 +02:00
Rémi Verschelde
597ffa03b3 Merge pull request #9826 from RandomShaper/improve-atomics
Improve/add atomics
2017-07-31 23:30:07 +02:00
Rémi Verschelde
62464839ad Merge pull request #8567 from BastiaanOlij/ar_vr_server
AR/VR base classes and position tracker support
2017-07-31 13:29:18 +02:00
Rémi Verschelde
76005a8e75 Style: Apply clang-format on all files
Thus fixing some invalid changes that had still made it to the master branch.
2017-07-30 22:53:40 +02:00
Ruslan Mustakov
5804308c57 Fix passing Refs via ptrcall
There was no constructor for Ref from const pointer, so compiler decided
to construct Variant from pointer and then construct Ref from Variant
which turned it into NULL, because the Variant had null ref field.
2017-07-28 22:51:17 +07:00
Rémi Verschelde
3866829115 Merge pull request #9879 from RandomShaper/fix-mutating-settings-file
Fix mutating project.godot
2017-07-28 11:10:59 +02:00
BastiaanOlij
d2ba2d0873 Adding base classes and structures for ARVR support
Added ArVrScriptInterface

Added ARVRCamera, ARVRController and ARVROrigin helper objects
2017-07-28 10:39:15 +10:00
Karroffel
135c2112ad added an optional parameter to OS symbol lookup
When looking up a symbol from a library, previously an error was
shown when the symbol did not exist. That caused confusion when the
lookup was completely optional.
This adds a new parameter to that method so that those errors can
be handled manually if needed.
2017-07-27 11:13:21 +02:00
Rémi Verschelde
6645c7cc18 Merge pull request #9872 from bruvzg/3.0-num-enter-fix
Remove duplicate keycode constant for Numpad Enter key (3.0)
2017-07-27 08:52:52 +02:00
Pedro J. Estébanez
9aecc83cda Merge pull request #9892 from RandomShaper/fix-err-format
Fix misplaced quote in error messsage
2017-07-27 01:29:22 +02:00
Pedro J. Estébanez
748240b090 Fix misplaced quote in error messsage 2017-07-27 01:26:30 +02:00
Thomas Herzog
18e23ad4dc Merge pull request #9882 from endragor/nativescript-refcount
Forward refcount changes to NativeScriptInstance
2017-07-26 21:29:26 +02:00
Ruslan Mustakov
db9dcbddbc Forward refcount changes to NativeScriptInstance
This also changes Reference::unreference() to always invoke
refcount_decremented. Previously it was not invoked until the count
reached zero due to short-circuit evalution of boolean expressions.
2017-07-26 22:36:57 +07:00
Pedro J. Estébanez
1619aabfe1 Fix mutating project.godot
Namely:
- comment block lost on first save;
- config_version doubled as 3 and null on second save;
- format change on first save.
2017-07-26 16:13:38 +02:00
Thomas Herzog
9caf9fa76f Merge pull request #9720 from endragor/stack-bottom
Add a way to retrieve stack bottom of the main thread
2017-07-26 15:30:04 +02:00
Rémi Verschelde
668f4f437f Merge pull request #9873 from Noshyaar/pr-prop
Fix various property not found errors
2017-07-26 15:20:15 +02:00
Poommetee Ketson
0154098531 Fix various property not found errors 2017-07-26 20:03:13 +07:00
bruvzg
7de7ca8ae4 Remove duplicate keycode constant for Numpad Enter key. 2017-07-26 14:43:02 +03:00
Marcelo Fernandez
2144093fe6 Fix cvs files freezing the editor when a double quote is not closed 2017-07-25 22:38:28 -03:00
Rémi Verschelde
a931052c79 Merge pull request #9731 from Xrayez/gdscript-completion
Update GDScript completion names for Pool*Arrays
2017-07-25 21:05:42 +02:00
Rémi Verschelde
e4fe194fe5 Add newline after config_version and fix custom_features hint
Fixes #9818.
2017-07-25 21:02:38 +02:00
Andrii Doroshenko (Xrayez)
72436956dd Update GDScript completion names for Pool*Arrays
Notice: GDScript tokenizer used the old PoolFloatArray name.
Renamed PoolFloatArray to PoolRealArray.

Moved "project_settings.h" down one line to comply with the clang-format rules.

Fixes #9638

Closed pull request #9714 because I messed up with commits, sorry!
2017-07-25 12:14:40 +03:00
Ruslan Mustakov
3b88476130 Add a way to retrieve stack bottom of the main thread
I'm working on Nim bindings and Nim GC needs to know the stack
boundaries to check whether certain pointers are located on the stack
or in the heap. This commit adds godot_get_stack_bottom procedure
to gdnative module which returns pointer to the stack bottom of the
main thread. Later on this may be improved to return stack bottom of
the current thread.
2017-07-25 10:53:31 +07:00
Pedro J. Estébanez
27637b9e7f Improve/add atomics
- Remove use of non-builtin overloaded `InterlockedExhangeSubtract()` for Windows. Moreover, it was wrongly being used as if it hadn't a 64-bit version instead of being overloaded.
- Implement exchange-if-greater (as a CAS loop).
2017-07-25 01:49:22 +02:00
Rémi Verschelde
374cffaa11 Merge pull request #9764 from Noshyaar/pr-fix2
Add object type hint for docs
2017-07-24 08:07:32 +02:00
George Marques
f514fabf61
UWP: Fix build issue caused by atomic operations 2017-07-23 21:29:01 -03:00
Juan Linietsky
cf286ed287 Requesting for dictionary keys also respects insertion order, closes #9161 2017-07-23 12:24:03 -03:00
Thomas Herzog
9e483604a5 Merge pull request #9718 from endragor/ptrcall-fixes
Use specific size for numeric types in ptrcall
2017-07-23 16:35:10 +02:00
Poommetee Ketson
2777f81d29 Add object type hint for docs 2017-07-23 18:57:03 +07:00
L. Krause
aa798ebf8f Fix atomic operations in NO_THREADS builds 2017-07-22 22:06:01 +02:00
Juan Linietsky
3b2dfae5af function to add script and instance at once, as needed by neikeq 2017-07-22 16:57:56 -03:00
Juan Linietsky
0ad1a8f3d0 Script languges are uninitialized properly now. 2017-07-22 16:11:56 -03:00
Ruslan Mustakov
30176b0bb1 Use specific size for numeric types in ptrcall
The script system does not provide information about specific int
sizes, so we should establish convention to use the largest size
(64 bits). For real types double is always used.
2017-07-20 11:50:18 +07:00
Juan Linietsky
25678b1876 -Renamed GlobalConfig to ProjectSettings, makes more sense.
-Added system for feature overrides, it's pretty cool :)
2017-07-19 17:06:03 -03:00
Thomas Herzog
45b498c4e0 Merge pull request #9699 from RameshRavone/master
[gdnative] `Object::_get` return type and dynamic property
2017-07-19 13:07:06 +02:00
Rémi Verschelde
c5ba9d9b7c Merge pull request #9703 from Noshyaar/docs
Add object type hint for docs
2017-07-19 10:00:20 +02:00
geequlim
5a2500f580 Fix errors with global config names no more sorrys please 2017-07-19 09:25:50 +08:00
Poommetee Ketson
49c7620326 Add object type hint for docs 2017-07-19 02:03:34 +07:00
Ramesh Ravone
826c51c70e
_get return type fix 2017-07-18 21:09:46 +05:30
Rémi Verschelde
e089989777 Merge pull request #9608 from RandomShaper/more-atomics
Implement more atomic ops
2017-07-18 07:48:25 +02:00
Juan Linietsky
bbada82f80 -Reorganized all properties of project settings (Sorry, Again).
(Lot's of bloat accumulated, so it was time for clean up.)
-Made EditorSettings and ProjectSettings search more useful (search in sections too)
2017-07-17 22:18:58 -03:00
Pedro J. Estébanez
00d60125df Implement add & subtract atomics 2017-07-17 23:26:53 +02:00
Rémi Verschelde
8691355158 Merge pull request #9634 from vnen/gzip-compression
Add GZIP compression support
2017-07-17 22:40:47 +02:00
Juan Linietsky
4366b7c8b0 Added a simpler/faster way to bind script languages instance wrappers to Godot 2017-07-16 12:40:23 -03:00
Andreas Haas
2b7b67b7b1
Bindings: Fix Object::get_meta return type.
The method was shown as void in the docs.
2017-07-16 11:57:08 +02:00
Juan Linietsky
741145febd -Fix for multiple reflection probes causing issues.
-Fix for positional sound corruption to avoid making people deaf.
2017-07-15 18:42:06 -03:00
Juan Linietsky
2e73be99d8 Lots of work on Audio & Physics engine:
-Added new 3D stream player node
-Added ability for Area to capture sound from streams
-Added small features in physics to be able to properly guess distance to areas for sound
-Fixed 3D CollisionObject so shapes are added the same as in 2D, directly from children
-Fixed KinematicBody API to make it the same as 2D.
2017-07-15 08:32:34 -03:00
George Marques
0f765c86e5
Add GZIP compression support
- Fix a wrong call in PoolByteArray::compress
2017-07-13 14:41:10 -03:00
Poommetee Ketson
fdd2a87b8f Ignore fuzzy translations 2017-07-12 21:49:22 +07:00
Pedro J. Estébanez
9a868cd846 Add atomics for 64-bit integers
The public API looks the same but with added overloads.
The implementation uses templates or overloads depending on the context
to avoid code duplication.
2017-07-11 17:17:25 +02:00
Rémi Verschelde
a5bb77d523 Merge pull request #9366 from GodotExplorer/pr-ime-position-flow-cursor
IME window follow the input cursor.
2017-07-11 17:07:14 +02:00
Rémi Verschelde
faae28c955 Merge pull request #9607 from Noshyaar/astar
AStar: add bool has_point(id)
2017-07-11 16:45:38 +02:00
Rémi Verschelde
b708546f50 Merge pull request #9602 from ducdetronquito/master
[#7212] Fixed missing 'Variant' return values in documentation.
2017-07-11 16:44:21 +02:00
Poommetee Ketson
2c9f6312e2 AStar: add bool has_point(id) 2017-07-11 21:06:30 +07:00
Rémi Verschelde
711ebafa71 Revert "Improve reliability of memory stats" 2017-07-11 14:26:34 +02:00
Pedro J. Estébanez
6758ba0d93 Merge pull request #9014 from RandomShaper/improve-mem-stats
Improve reliability of memory stats
Memory block byte tagging
2017-07-11 14:19:45 +02:00
ducdetronquito
074801e7a9 [#7212] Fixed missing 'Variant' return values in documentation. 2017-07-11 13:25:51 +02:00
geequlim
7358766ff6 IME window follow the input cursor.
Abstruct set_ime_position to OS class.
Update ime position for LineEdit and TextEdit.
2017-07-11 18:36:20 +08:00
Poommetee Ketson
5a9eb5ef58 Include Git hash in the engine 2017-07-11 15:57:52 +07:00
Poommetee Ketson
2fd204c35e Refactor 'treshold' to 'threshold' 2017-07-08 22:24:56 +07:00
ducdetronquito
566655adc1 [#9292] Renamed Image.put_pixel() to set_pixel(). 2017-07-07 19:05:45 +02:00
Rémi Verschelde
6f63a01302 Merge pull request #8943 from RandomShaper/fix-error-handling
Implement well-defined handling of unrecoverable errors
2017-07-05 10:55:11 +02:00
Pedro J. Estébanez
779693a79b Implement byte-tagging of memory
Using a magic value for memory allocated but uninitialized and another one for memory about-to-be-released. Helps in debugging unitialized members, dangling pointerts, etc.

Disabled by default. Can be enabled for debug builds by defining `DEBUG_MEMORY_TAGGING`.
2017-07-05 10:31:13 +02:00
Pedro J. Estébanez
490a2ff0b9 Improve reliability of memory stats
The allocation count is managed atomically and where it actually should
change (for instance, not counting an allocation before its success has
been checked).

Bonus: Improve readability of the pre-pad checks.
2017-07-05 10:26:55 +02:00
Pedro J. Estébanez
211c451890 Implement well-defined handling of unrecoverable errors
Plus the addition of some convenience CRASH_* error macros.
Plus transient avoidance of the flood of warnings emitted by Clang when checking 'this' for NULL.
Plus explanation about the do-while(0) loop in some error macros.
2017-07-05 09:31:44 +02:00
Juan Linietsky
7263137dba Implemented environment arrays for skybox reflection and roughness, quality increase is enormous. 2017-07-04 23:53:08 -03:00
Rémi Verschelde
e54c7d5715 Merge pull request #9457 from TwistedTwigleg/Fixed_Vector3_snap
Fixed syntax inconsistency in Vector3.snap and Vector3.snapped
2017-07-03 23:43:33 +02:00
TwistedTwigleg
44ecfb028d Fixed syntax inconsistency in Vector3.snap and Vector3.snapped 2017-07-03 16:29:03 -04:00
Juan Linietsky
2a3e00c8c7 -Many fixes to VisualScript, fixed property names, etc.
-Added ability to set/get a field in GetSet, as well as assignment ops
-Added a Select node
-Fixed update bugs related to variable list and exported properties, closes #9458
2017-06-30 21:35:05 -03:00
Juan Linietsky
db3b05d289 Reworked translation system
-Label and Button reload translation on the fly
-Resources are loaded and reload depending on locale
2017-06-28 17:01:35 -03:00
Rémi Verschelde
6f0762ba5d Merge pull request #9195 from kubecz3k/obj-incoming-connections
Ability to get a list of signals that are targeting given object
2017-06-27 00:06:42 +02:00
Juan Linietsky
760cdbe1a3 -Added folding to property editor, persistent on objects it edits
-Some changes to tree to support this properly
2017-06-25 17:31:22 -03:00
geequlim
4b2a44054a Fix crash with String copy from with NULL string parameter 2017-06-25 21:57:06 +08:00
Rémi Verschelde
87fd71244b Merge pull request #9334 from Noshyaar/pr-genh
BuildSystem: generated files have .gen.extension
2017-06-25 11:08:36 +02:00
Rémi Verschelde
8efd835009 Merge pull request #9348 from bojidar-bg/9299-save-device-ids
Make the InputEvent device property get saved
2017-06-25 10:55:03 +02:00
Poommetee Ketson
e3998528e0 BuildSystem: generated files have .gen.extension 2017-06-25 07:55:01 +07:00
Rémi Verschelde
9c186a754f Merge pull request #8783 from bojidar-bg/fix-range-loop-type
Fix for..in range() resulting in floats instead of ints
2017-06-24 23:39:55 +02:00
dumitru-stama
9ce0538ab3 Added 'blit_rect_mask' for 3.0 too 2017-06-24 08:53:54 -07:00
Bojidar Marinov
7542896046
Make the InputEvent device property get saved
Fixes #9299
2017-06-24 16:28:19 +03:00
Juan Linietsky
00e5ba3143 Remove methods from code completion which are already exposed by properties, makes completion cleaner and more close to the documentation. 2017-06-23 15:10:46 -03:00
Ignacio Etcheverry
a87c7f1328 Image: Fix wrong method DEFVAL 2017-06-23 03:51:36 +02:00
Juan Linietsky
3f2cd75c6f Fix shortcuts, make them visible again and work. 2017-06-22 19:57:59 -03:00
Bojidar Marinov
26a51c3c0b
Reimplement for..in range() so that it always results in ints
Fixes #8278, fixup of bfef8de1bc
2017-06-22 20:41:52 +03:00
Pedro J. Estébanez
0b776f9a30 Add atomics for 64-bit integers 2017-06-22 05:29:58 +02:00
Karroffel
40bb90fabd fixed ptrcall cast for const Ref<T>
Some methods require a const Ref<T> argument,
the ptrcall method wrappers cast `void *` to the
apropriate types. The problem is that there is no `Ref(const T *)`
constructor, but since Ref modifies the refcount of a Reference
anyway there's no point in a const version.

The problem is that with a `const T *` constructor call, the
argument gets converted to Variant first and loses all the
reference information, resulting in a null reference as the
argument to the constructor.
2017-06-20 21:38:21 +02:00
dumitru-stama
82d8da2a48 Fixed a string class bug 2017-06-19 20:08:31 -07:00
Thomas Herzog
b6b225f4c5 Merge pull request #8870 from tagcup/pathfollow
Fix PathFollow rotations.
2017-06-19 23:30:40 +02:00
Thomas Herzog
9d67be447a Merge pull request #9274 from vnen/compress-functions
Expose compression functions to GDScript
2017-06-19 22:59:24 +02:00
George Marques
5c779c574a
Add compression support for File object 2017-06-19 16:38:37 -03:00
George Marques
af7d590206
Add basic compression functions to PoolBaseArray 2017-06-19 16:38:10 -03:00
d
053a4fdcd9 Added two new methods to 3.0 'blend_rect_mask' and 'fill' 2017-06-18 11:29:37 -07:00
Juan Linietsky
5c6cac4e53 Add normalmap support for drawing in all low level primitives. Only added support in Sprite so far. 2017-06-17 23:27:42 -03:00
George Marques
b1537da605 Merge pull request #9231 from dumitru-stama/constimg
Fixed a bug in get_pixel not being const
2017-06-16 22:09:26 -03:00
Juan Linietsky
b19225bfce -Fix freezes caused by etccomp2, closes #9183
-Normalmaps are now detected and imported as RGTC, both in S3TC and ETC2, this improves their quality.
2017-06-16 21:49:37 -03:00
dumitru.stama
7787700aca Fixed a bug in get_pixel not being const 2017-06-16 17:29:05 -07:00
Rémi Verschelde
3fadbe2172 Merge pull request #9201 from vnen/rename-extensions
Rename Godot-specific resource extensions
2017-06-16 13:01:10 +02:00
Marc Gilleron
4dbe0967d5 Fixed memory leaks
- PoolVector leak
- mesh_remove_surface leak
2017-06-16 02:39:16 +02:00
George Marques
e42d59f01e
Rename Godot-specific resource extensions 2017-06-15 21:35:20 -03:00
Rémi Verschelde
43a84429ff doc: Sync classref with current source
Tried to salvage what I could of the Image and InputEvent changes.
2017-06-15 20:52:51 +02:00
Rémi Verschelde
4f8d9f0915 Merge pull request #9177 from tagcup/gcc5_isinf
Use inline code for isinf with gcc versions <6.
2017-06-15 20:46:10 +02:00
Jakub Grzesik
8ff5e50513 Ability to get a list of signals that are targeting object 2017-06-15 15:32:30 +02:00
Ferenc Arn
cd1e14b1da Use inline code for isinf as a workaround for libstdc++ versions from gcc 5.x era.
Fixes #9166.
2017-06-14 18:30:22 -05:00
Rémi Verschelde
108d8bcfc0 Merge pull request #9157 from capnm/fix-https-request
Don't append standard ports to the request header.
2017-06-14 23:15:38 +02:00
Rémi Verschelde
19017a760c Merge pull request #9158 from Hinsbart/script_templates
Add ability to use custom script templates.
2017-06-14 23:11:41 +02:00
Rémi Verschelde
a91b62e4c7 Merge pull request #9175 from bd339/iss9156
Correct Image::blit_rect
2017-06-14 22:46:10 +02:00
Rémi Verschelde
c769a38c07 Merge pull request #9155 from kubecz3k/check-process-type
Ability to check if we are in fixed thread, solves: #3698
2017-06-14 17:21:54 +02:00
Benjamin Dahse
075997c563 Rewrite Image::blit_rect to use the following algorithm:
1. Let r1 be the source rectangle clipped against the entire source image rectangle.
2. Let r2 be r1 offset by p_dest, clipped against the entire destination image rectangle.
3. Copy pixels from r1 to r2.
2017-06-14 15:56:58 +02:00
Juan Linietsky
a8e845a474 Merge pull request #8548 from tagcup/etc2comp
Add ETC1/ETC2 compression support though etc2comp.
2017-06-13 19:17:13 -03:00
Martin Capitanio
5cabe5f0fc Don't append standard ports to the request header.
Breaks the SSL communication with some servers,
do the same that the other curl, wget, firefox & co clients do.

Fixes #9146
2017-06-13 22:58:23 +02:00
Andreas Haas
8361b1ce07 Add ability to use custom script templates.
Templates will be loaded from .godot/script_templates
For now they're disabled for GDNative.

Ideas for further improvements:

- Add a "Save as Template" option to the script editor, as it can normally only save to res://
- Support more placeholders / custom placeholders
2017-06-13 20:03:08 +00:00
kubeczek
a81b706e09 Fixed thread check, solves: #3698 2017-06-13 17:49:28 +02:00
Ferenc Arn
98261e2df2 Expose zstd and zlib compression levels as global config. 2017-06-11 20:27:07 -05:00
Juan Linietsky
12b2652ecb Merge pull request #9104 from tagcup/zstd
Add zstd compression support.
2017-06-11 18:41:56 -03:00
Zher Huei Lee
9ecdf522bd Added EditorPlugin.remove_import_plugin()
Allows addons with import extensions to clean up properly on
removal.
2017-06-11 17:18:22 +08:00
alexholly
935f730170 renamed all Rect3.pos to Rect3.position 2017-06-09 15:54:02 +02:00
Ferenc Arn
f177c15347 Add zstd compression support.
zstd has much better compression speed and ratio, and better decompression speed than currently available methods.
Also set zstd as the default compression method for Compression as well as FileAccessCompressed functions.
2017-06-08 23:48:14 -05:00
Juan Linietsky
612ab8fcdb -Restored multithread capability to VisualServer
-Restored resource previews!
2017-06-09 00:24:18 -03:00
Poommetee Ketson
fcaddeccbb
Fix build error, commit bee81d5 2017-06-08 12:48:59 +07:00
Rémi Verschelde
b52466f793 Merge pull request #9002 from Hinsbart/key_action_match
InputEvent: Restore old behaviour for matching key events to actions.
2017-06-08 07:43:18 +02:00
Rémi Verschelde
bee81d5214 Merge pull request #8981 from toger5/addedGrowFunction
implemented grow(left,top,right,bottom) function
2017-06-08 07:41:54 +02:00
Rémi Verschelde
71ada5bc2c Merge pull request #9015 from mcanders/mcanders/ParseObjectVariantFix
Fix Variant::OBJECT token parsing
2017-06-07 07:51:32 +02:00
toger5
66b308925c added grow functions to Rect2
- grow_individual
 - grow_margin
2017-06-05 01:11:00 -07:00
Carter Anderson
0a8de39bb1 Fix Variant::OBJECT token parsing 2017-06-04 21:33:09 -07:00
alexholly
a3c90b0293 renamed all Rect2.pos to Rect2.position 2017-06-04 02:09:17 +02:00
Andreas Haas
9bc5348961
InputEvent: Renamed "pos" property to "position"
Make the naming consistent with other classes.
2017-06-03 11:26:39 +02:00
Rémi Verschelde
5a6d4971e1 Merge pull request #8973 from thomas-goerlich/8957_rand_range_bugfix
Fixed rand_range not returning correct random values on windows
2017-06-03 08:44:07 +02:00
Rémi Verschelde
59322d4cc4 Merge pull request #9011 from karroffel/ptrcall-nightmare-fix
fixed PowerState enum cast
2017-06-01 09:42:05 +02:00
Ferenc Arn
6a9c990da7 Add ETC1/ETC2 compression support though etc2comp.
Remove rg-etc1 code. Also updated travis to use ubuntu 14.04.

Fixes #8457.
2017-05-31 18:59:00 -05:00
Juan Linietsky
a134f58fb3 rewritten PBR implementation to make it friendlier with Blender 2017-05-31 20:29:56 -03:00
Karroffel
6bda2876f1 fixed PowerState enum cast
Quite a while ago I made a commit (131631b) where I did a weird
thing to fix compilation with PTRCALL_ENABLED. And I couldn't
sleep because of this after all these months. So here is the
proper version.
2017-06-01 00:16:33 +02:00
Ferenc Arn
a1c8896d9d Fix PathFollow rotations.
Used parallel transport to move the object along the curve. Also introduced a few more math checks useful for debugging.
2017-05-31 13:58:31 -05:00
Andreas Haas
c218390864
InputEvent: Restore old behaviour for matching key events to actions.
Original code in 9100db7
2017-05-30 22:27:55 +02:00
Juan Linietsky
5567e898d1 Several fixes related to PBR and Environment 2017-05-30 08:56:19 -03:00
Thomas Görlich
2c6449c4fc Changed enum to const because enum with uint64 size does not work on VSC++ Compiler 2017-05-29 23:56:21 +02:00
Poommetee Ketson
ff03d846eb NaturalSort: strings start with . treated differently 2017-05-29 09:59:02 +07:00
Juan Linietsky
bb20f230ad -Added .hdr format support
-Added default environment editor setting
-Added environment created by default in new projects
-Removed default light and ambient from spatial editor, to make the editor more PBR compliant
2017-05-28 21:48:05 -03:00
Rémi Verschelde
378ebffb23 Merge pull request #8936 from Hinsbart/fix_action
Fix InputEvent actions.
2017-05-27 11:29:05 +02:00
Andreas Haas
3204befd1e
Fix InputEvent actions.
The `InputEvent::is_action(pressed|released)` methods weren't implemented yet.
Also fixed a typo in `InputDefault` that prevented `Input.is_action(pressed|released)` from working.
2017-05-27 10:52:57 +02:00
Juan Linietsky
f89641907f -Added EXR supprot for HDR (no BC6 compression yet though)
-Improvements to texture importer
-Proper detection of S3TC compression modes, and added all modes to Image
-Fixes to non-power of 2 compressed textures, which should all be supported by GLES3
2017-05-26 22:31:32 -03:00
Andreas Haas
3744d9fd55
Fix virtual methods in InputEventKey.
This fixes a lot of problems with key input in the engine.
2017-05-25 21:56:54 +02:00
Juan Linietsky
7c89e00d46 Merge pull request #8590 from tagcup/s3tc_stuff
Use libsquish to decompress DXT textures.
2017-05-25 16:29:04 -03:00
Rémi Verschelde
7592c2380d Merge pull request #8898 from vnen/screentouch-struct-class
Change InputEventScreenTouch from struct to class
2017-05-25 08:40:27 +02:00
George Marques
452caf3f80
Change InputEventScreenTouch from struct to class 2017-05-24 16:06:07 -03:00
Martin Capitanio
29c5b4c7e6 Fix 2D-editor mouse wheel zoom (x11).
Fixes #8888
2017-05-24 10:02:43 +02:00
Juan Linietsky
afcce9eb12 -Fix the "set_val" call deferred, it was the only one.. closes #8742
-Removed redundant bind in input_event
2017-05-23 09:06:22 -03:00
Juan Linietsky
6161e731d0 fixed crash on code that checks InputEvent 2017-05-23 08:13:11 -03:00
Rémi Verschelde
ce51138b38 Merge pull request #8786 from bojidar-bg/fix-astar-weight-scale
Fix weigth scale of A* being applied to the whole estimation
2017-05-22 15:16:20 +02:00
Bojidar Marinov
bd91730347
Fix weigth scale of A* being applied to the whole path and estimation
Attempt to fix #8584
2017-05-22 15:55:49 +03:00
Ferenc Arn
e4eb093c62 Avoid overestimating the cost in AStar heuristics.
This is a necessary condition for finding optimal solutions.
This is achieved by simply requiring/ensuring that no weights are smaller than 1.

Fixes #8584.
2017-05-21 15:13:09 -05:00
Juan Linietsky
5b3709d309 Removal of InputEvent as built-in Variant type..
this might cause bugs I haven't found yet..
2017-05-20 17:05:38 -03:00
Rémi Verschelde
c7650c363b Merge pull request #8829 from supagu/astar-bidirectional
Added bool to allow astar points to be connected in one direction only
2017-05-20 09:49:28 +02:00
Emmanuel Leblond
abcb044bf3
Finish implementation of GDnative builtins bindings 2017-05-19 23:28:15 +02:00
Fabian Mathews
2262a59ab3 Added bool to allow astar points to be connected in one direction only 2017-05-19 20:46:45 +09:30
Ferenc Arn
3c175115eb Use libsquish to decompress DXT textures. 2017-05-18 16:57:53 -05:00
Rémi Verschelde
1f62c33141 Merge pull request #8807 from RandomShaper/mq-flush-reentrant
Make MessageQueue::flush() reentrant
2017-05-18 18:52:55 +02:00
Rémi Verschelde
c2854381b3 Merge pull request #8649 from neikeq/pr-ringbuffer-find
RingBuffer: Adds find() method
2017-05-18 13:42:56 +02:00
Pedro J. Estébanez
983fd3a7bb Make MessageQueue::flush() reentrant 2017-05-18 13:02:49 +02:00
Rémi Verschelde
c3baf5eb3c Fix two typos from previous commit
Also cleanup comments on variant types.
2017-05-17 18:45:56 +02:00
Juan Linietsky
98a3296702 Removal of Image from Variant, converted to a Resource. 2017-05-17 07:37:45 -03:00
Damian Day
f2564ca97f Fix natural sorting order in EditorFileDialog, FileDialog and EditorFileSystemDirectory
Make EditorFileDialog, FileDialog and EditorFileSystemDirectory alphanumerical sorting more natural

Added a new method 'naturalnocasecmp_to' and comparator 'NaturalNoCaseComparator' to String.

Fixes #8712.
2017-05-12 13:02:25 +01:00
Marcelo Fernandez
bba8f1db30 Fixed the IP resolver code blocking the main thread, it uses a Mutex now to lock its own thread. 2017-05-08 21:30:48 +02:00
toger5
304a1f5b5a Implemented scrolling factor for smooth trackpad scrolling
Working platforms platform: OSX, Windows.
Support for almost all ui elements, including project list.
2017-05-07 14:23:56 +02:00
Rémi Verschelde
18df047f0b Merge pull request #8658 from Faless/explain_out_of_mem_msg_queue_master
Better explain out of memory error in message queue
2017-05-05 23:09:30 +02:00
Rémi Verschelde
e58519eb31 Merge pull request #8642 from RandomShaper/fix-pack-get-curr-dir
Fix infinite loop in DirAccessPack::get_current_dir()
2017-05-05 23:02:07 +02:00
Fabio Alessandrelli
1a7aafa90d Better explain out of memory error in message queue
Also effectively saves one unnecessary call when everything is fine.
2017-05-05 19:56:54 +02:00
Ignacio Etcheverry
803a54d93c RingBuffer: Adds find() method 2017-05-05 02:09:43 +02:00
Pedro J. Estébanez
5c0188b5c3 Fix infinite loop in DirAccessPack::get_current_dir() 2017-05-04 02:20:53 +02:00
Rémi Verschelde
7ce8342ac5 Rename project file to "project.godot"
Slimmed down variant from the reverted #8375.
The rationale behind the name change is to give Godot's project file a unique
extension (".godot") that can be registered on the OS to be associated with
the Godot binary (OS registration not implemented here).

This PR also adds the possibility to start the game or editor if launched
with the project.godot passed as argument, which paves the way for allowing
a similar behaviour on a double-click in the OS file manager (code originally
by @Hinsbart).

Closes #6915.
2017-05-01 17:50:19 +02:00
Rémi Verschelde
de7eba887e Merge pull request #8572 from akien-mga/thirdparty
Moving more thirdparty stuff (minizip, some single-file external libs) to the thirdparty directory
2017-04-29 22:57:49 +02:00
Juan Linietsky
6d2f985db4 Revert "Use .godot as file extension for project files." 2017-04-29 17:56:51 +02:00
Rémi Verschelde
d4029aa51a Move other lone thirdparty files to thirdparty/misc
Also move Box2D ConvexDecomposition contrib code to
thirdparty/b2d_convexdecomp.
2017-04-28 21:19:25 +02:00
Rémi Verschelde
c5f830d6b9 Split thirdparty smaz.c out of compressed_translation.cpp
Code comes from 150e125cba/smaz.c

With a small modification to match Godot expectations:
```
diff --git a/thirdparty/core/smaz.c b/thirdparty/core/smaz.c
index 9b1ebc2..555dfea 100644
--- a/thirdparty/core/smaz.c
+++ b/thirdparty/core/smaz.c
@@ -14,7 +14,7 @@ THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
 #include <string.h>

 /* Our compression codebook, used for compression */
-static char *Smaz_cb[241] = {
+static const char *Smaz_cb[241] = {
 "\002s,\266", "\003had\232\002leW", "\003on \216", "", "\001yS",
 "\002ma\255\002li\227", "\003or \260", "", "\002ll\230\003s t\277",
 "\004fromg\002mel", "", "\003its\332", "\001z\333", "\003ingF", "\001>\336",
@@ -89,7 +89,7 @@ static char *Smaz_rcb[254] = {
 "e, ", " it", "whi", " ma", "ge", "x", "e c", "men", ".com"
 };

-int smaz_compress(char *in, int inlen, char *out, int outlen) {
+int smaz_compress(const char *in, int inlen, char *out, int outlen) {
     unsigned int h1,h2,h3=0;
     int verblen = 0, _outlen = outlen;
     char verb[256], *_out = out;
@@ -167,7 +167,7 @@ out:
     return out-_out;
 }

-int smaz_decompress(char *in, int inlen, char *out, int outlen) {
+int smaz_decompress(const char *in, int inlen, char *out, int outlen) {
     unsigned char *c = (unsigned char*) in;
     char *_out = out;
     int _outlen = outlen;
@@ -192,7 +192,7 @@ int smaz_decompress(char *in, int inlen, char *out, int outlen) {
             inlen -= 2+len;
         } else {
             /* Codebook entry */
-            char *s = Smaz_rcb[*c];
+            const char *s = Smaz_rcb[*c];
             int len = strlen(s);

             if (outlen < len) return _outlen+1;
diff --git a/thirdparty/core/smaz.h b/thirdparty/core/smaz.h
index a547d89..a9d8a33 100644
--- a/thirdparty/core/smaz.h
+++ b/thirdparty/core/smaz.h
@@ -14,7 +14,7 @@ THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
 #ifndef _SMAZ_H
 #define _SMAZ_H

-int smaz_compress(char *in, int inlen, char *out, int outlen);
-int smaz_decompress(char *in, int inlen, char *out, int outlen);
+int smaz_compress(const char *in, int inlen, char *out, int outlen);
+int smaz_decompress(const char *in, int inlen, char *out, int outlen);

 #endif
```
2017-04-28 21:19:24 +02:00
Rémi Verschelde
2398eb6ed4 Move core thirdparty files to thirdparty/{minizip,misc} 2017-04-28 21:19:23 +02:00
Andreas Haas
c530d8f43c
Fix recognition of resource extensions.
Also removes a related debug print.
2017-04-26 23:07:23 +02:00
volzhs
ec1c7ce6c3 Fix wrong fallback for locale 2017-04-26 04:48:03 +09:00
Rémi Verschelde
1dc689b513 Merge pull request #8506 from iam13islucky/patch-1
[3.0] Fix bug in Image::_get_pixelb
2017-04-24 12:02:10 +02:00
Rémi Verschelde
bd885ed704 Merge pull request #8469 from Melix19/patch-2
Update snake_case splitting
2017-04-24 11:38:36 +02:00
Rémi Verschelde
68870af214 Merge pull request #8420 from magyar123/pr-script-files-as-base
Added the ability to select files as base when creating scripts
2017-04-24 11:28:36 +02:00
Rémi Verschelde
5ae1e172da Merge pull request #8277 from tagcup/math_checks
Added various functions basic math classes. Also enabled math checks …
2017-04-24 11:16:20 +02:00
iam13islucky
73a9a85bc9 [3.0] Fix bug in Image::_get_pixelb
Fixes issue:
 https://github.com/godotengine/godot/issues/8158
2017-04-23 22:51:35 -06:00
Marco Melorio
4677c0fbb8 Update snake_case splitting 2017-04-23 23:03:16 +02:00
Rémi Verschelde
515f92d03b Fix property warnings and hide some debug prints
"ALL IS GOOD" was a lie.

In particular, removes verbose "path not recognized" false positive.

The actual logic is to (somewhat naively) check all ResourceFormatLoaders
and to pick the first good match, so no need to warn about the formats
that do not match the type hint.
2017-04-23 11:17:32 +02:00
Rémi Verschelde
99529fb80d Move VERSION_MKSTRING logic to version.h
Fixes a bug where the VERSION_PATCH define is not yet in scope if
typedefs.h is included before version.h at compilation time.

(cherry picked from commit 3b687c5474)
2017-04-20 12:14:34 +02:00
Rémi Verschelde
22b9c0207b Merge pull request #8417 from neikeq/hello-there
External editor improvements and fixes
2017-04-20 02:20:04 +02:00
Marco Melorio
1ac38846e8 Fixed that playing the project opens the project manager
Fixes #8445
2017-04-18 15:46:37 +02:00
Rémi Verschelde
7088d9e30f Merge pull request #8441 from tagcup/seed_fix
Fix PRNG randomization.
2017-04-18 00:06:41 +02:00
Rémi Verschelde
474f18512a Merge pull request #8375 from Hinsbart/project_extension
Use .godot as file extension for project files.
2017-04-17 23:28:15 +02:00
Ferenc Arn
ceb699f5ec Fix PRNG randomization.
PCG32 doesn't like small seeds, which leads to zero random values (prior to #7532, zero values were handled as special cases).

Use a large default seed, and also add a shift in Math::randomize.

Fixes #8423.
2017-04-17 14:05:02 -05:00
Ignacio Etcheverry
4b8568006d External editor improvements and fixes
Notable changes:

- Now ScriptLanguages have the option to override the global external editor setting.
If `ScriptLanguage::open_in_external_editor()` returns `ERR_UNAVAILABLE` (which it does by default), then the global external editor option will be used.
- Added formatting to the external editor execution arguments. Now it's possible to write something like this: `{project} -g {file}:{line}:{col}`.
- `VisualScript::get_member_line()` now can return the line of functions (well, it returns the id of the _Function_ node of the function). I guess there is nothing else we can get a "line" from.

Fixes:

- Fixes a bug where `ScriptEditor::script_goto_method()` would not work if the script is not already open in the built-in editor.
- Fixes wrong DEFVAL for `cursor_set_column` and `cursor_set_line` in TextEdit.
- `Script::get_member_line()` now returns -1 ("found nothing") by default.
2017-04-17 01:51:30 +02:00
Andreas Haas
c06a2db63a
Use .godot as file extension for project files.
Now project files don't have to be named "godot.cfg" anymore, they can have any name so as long as it ends with *.godot.
Also godot will automatically start the editor now if launched with a project file as an argument.
This allows for double-clicking of projects to open them :)

Code-wise this should be complete, but there's still work to do:

- Make a nice icon for godot projects.
- Work on installers/packaging -> register the extension and icon with godot.
- Update the 2.1 to 3.0 exporter.

Tested on linux and windows so far.
2017-04-16 10:19:07 +02:00
mbalint12
a3afec588c Added the ability to select files as base when creating scripts 2017-04-15 23:29:09 +02:00
Hein-Pieter van Braam
8ff6e53833 Correct Variant::hash_compare()
There was a logic error in #7815 which made
Variant.hash_compare() == Variant.hash_compare() always true.
In an attempt to short-circuit the NaN check I made an (in hindsight) obvious
error: 10 == 12 || is_nan(10) == is_nan(12)

This will be true for all inputs, except for the NaN, not-NaN case. The macro
has been updated to now generate:

(10 == 12) || (is_nan(10) && is_nan(10))

so:

(10 == 12)   || (is_nan(10)  && is_nan(12))  = false
   False  or (False and False) is False
(10 == 10)   || (is_nan(10)  && is_nan(10))  = true
   True or (False and False) is True
(Nan == 10)  || (is_nan(NaN) && is_nan(10))  = false
   False or (True and False) is False
(Nan == Nan) || (is_nan(NaN) && is_nan(NaN)) = true
   False or (True and True) is True

Which is correct for all cases.

This bug was triggered because the hash function for floating point numbers
can very easily generate collisions for the tested Vector3(). I've also added
an extra hashing step to the float hash function to make this less likely to
occur.

This fixes #8081 and probably many more random weirdness.
2017-04-14 11:31:18 +02:00
Bojidar Marinov
c37840c69f
Fix a pesky bug in marshalls.cpp/encode_variant
Fixes #7556 running game from editor on LLVM builds.
2017-04-11 20:17:56 +03:00
Sergey Pusnei
8589ca3903 Rename [gs]et_pos to [gs]et_position for Controls
Control set_pos -> set_position
Control set_global_pos -> set_global_position
[gs]et_mouse_pos -> [gs]et_mouse_position
[gs]et_global_mouse_pos -> [gs]et_global_mouse_position
fixes #8005
2017-04-10 08:27:34 +02:00
Rémi Verschelde
f29dc079dc Merge pull request #8333 from touilleMan/classdb-class_sget_property-binding
Add _ClassDB.class_[g|s]et_property to ClassDB exposed methods
2017-04-09 17:46:35 +02:00
Emmanuel Leblond
42eba57bad
Add return value in ClassDB.class_[g|s]et_property bindings 2017-04-09 14:04:01 +02:00
Emmanuel Leblond
23c310be7b
Add _ClassDB.class_[g|s]et_property to ClassDB exposed methods 2017-04-09 13:27:07 +02:00
Juan Linietsky
4286aef693 Particle system is complete. Rejoice! 2017-04-08 22:40:06 -03:00
Rémi Verschelde
df61dc4b2b Add "Godot Engine contributors" copyright line 2017-04-08 00:11:42 +02:00
Juan Linietsky
74808ac4d9 New particle system, mostly working, some small features missing. 2017-04-06 23:49:27 -03:00
Ferenc Arn
9a37ff1e34 Added various functions basic math classes. Also enabled math checks only for debug builds.
Added set_scale, set_rotation_euler, set_rotation_axis_angle. Addresses #2565 directly.
Added an euler angle constructor for Basis in GDScript and also exposed is_normalized for vectors and quaternions.
Various other changes mostly cosmetic in nature.
2017-04-06 13:03:56 -05:00
Rémi Verschelde
1a33d5e06f Merge pull request #8286 from Hinsbart/memleaks
Core: fix possible memory leaks.
2017-04-06 14:34:21 +02:00
Andreas Haas
a2734df7ed
Core: fix possible memory leaks. 2017-04-06 13:43:13 +02:00
Rémi Verschelde
2c4e4432af Merge pull request #8214 from tagcup/bounce_reflect_slide
Made slide and reflect active verbs acting on itself in Vector2 and V…
2017-04-05 01:23:09 +02:00
Rémi Verschelde
46bc14e66f Merge pull request #8246 from GodotNativeTools/dlscript-module
DLScript module
2017-04-04 00:25:03 +02:00
Karroffel
fd55308786 added dlscript module
This module was written by bojidar-bg and me, with the help of ClikCode and touilleMan.

This adds a module to Godot that enables the use of dynamic libraries as a source for scripts.
That also allows third party libraries to be linked to Godot more easily and without creating modules.

For a readme see https://github.com/GodotNativeTools/godot_headers/blob/master/README.md
2017-04-03 17:20:11 +02:00
Ferenc Arn
1a620bd5fa Made slide and reflect active verbs acting on itself in Vector2 and Vector3.
This is in alignment with other functions in vector classes.
Also added checks for normalization, fixed the sign of reflect (which now corresponds to reflection along a plane mathematically), added bounce method and updated docs.

Fixes #8201.
2017-04-03 10:02:12 -05:00
Karroffel
67f59bc2d9 increased maximum number of scripting languages 2017-04-03 16:10:26 +02:00
Rémi Verschelde
5b09dde3fe Merge pull request #8146 from supagu/astar
Added ability to change A-star cost function
2017-04-03 13:52:59 +02:00
Fabian Mathews
b541402417 Added ability to change A-star cost function 2017-04-01 16:36:22 +10:30
Karroffel
2281942fb3 Added methods for opening dynamic libraries to OS 2017-03-29 23:05:15 +02:00
Ferenc Arn
97d510531a Fix polar decomposition in 2D.
When performing polar decomposition in 2D as B = R.S, where R is rotation (with determinant +1) and S is scaling, use the convention that reflections are absorbed into S through a reflection around y axis.
In 3D, this is done by using a reflection along all three axes, but since the dimensionality is even in 2D, one axis needs to be chosen.

Fixes Matrix32::get_rotation and Matrix32::get_scale (which weren't properly fixed in #7445).
2017-03-29 12:04:49 -05:00
Rémi Verschelde
5cad9147f9 Merge pull request #8133 from Hinsbart/joy_constants
Input: Refactor JOY_* constants.
2017-03-24 22:53:16 +01:00
Rémi Verschelde
60a9debb99 Merge pull request #8132 from tagcup/vector3_angle_to
Use atan2 rather than acos in Vector3.angle_to.
2017-03-24 22:52:46 +01:00
Rémi Verschelde
beba97c0c3 Merge pull request #8122 from tagcup/axis_check_normalization
Explicitly documented that Transform.basis is not necessarily an orth…
2017-03-24 22:51:27 +01:00
Rémi Verschelde
98baec6880 Merge pull request #8109 from RandomShaper/warped-panning
Implement warped mouse panning for 2D & 3D editors
2017-03-24 22:50:39 +01:00
Rémi Verschelde
ca3596b043 Merge pull request #8098 from bojidar-bg/configfile-get-value-suppress
Suppress error messages when using ConfigFile::get_value and a default is given
2017-03-24 22:49:50 +01:00
Rémi Verschelde
296ece2c6a Merge pull request #7985 from Faless/enet_godot_sock_squash
Update ENet to use Godot sockets.
2017-03-24 22:47:18 +01:00
Rémi Verschelde
debeee56f7 Fix typos in source code using codespell
From https://github.com/lucasdemarchi/codespell
2017-03-24 21:45:31 +01:00
Andreas Haas
0d8f5660f6
Input: Refactor JOY_* constants.
**Breaking change**

Removed the `JOY_SNES_*` and `JOY_SEGA_*` constants. Imho there's no reason for a modern game engine to provide button aliases for decades-old hardware.
Also renamed `JOY_ANALOG_{0,1}_{X,Y}` to `JOY_ANALOG_{L,R}{X,Y}` and removed `JOY_ANALOG_2_*`.
2017-03-24 18:04:36 +01:00
Ferenc Arn
3730e0533c Use atan2 rather than acos in Vector3.angle_to.
Fixes #8111.
2017-03-24 12:03:33 -05:00
Fabio Alessandrelli
5f681d0b0f Allow non blocking UDP put_packet in C++.
- Add blocking mode option to PacketPeerUDP.
- put_packet returns ERR_UNAVAILABLE when operation would block.
- ENet module uses non-blocking UDP.
2017-03-24 02:30:11 +01:00
Ferenc Arn
6bb9b58b09 Explicitly documented that Transform.basis is not necessarily an orthogonal matrix.
Also added a check that in axis-angle rotations, axis is a normalized vector, and modified the docs accordingly.

Fixes #8113.
2017-03-23 12:27:00 -05:00
Pedro J. Estébanez
f5004b78d0 Implement warped mouse panning for 2D & 3D editors
Enabled by default as in Blender, but can be disabled separately for 2D & 3D;
the core functionality is in Input so this could be reused or even exposed to scripts in the future
2017-03-22 21:36:52 +01:00
Bojidar Marinov
927d15b815
Suppress error messages when using ConfigFile::get_value and a default is given
Fixes #8097
2017-03-21 19:56:54 +02:00
Andreas Haas
a69e449782
Input: bind parse_input_event()
When using get_tree().input_event(ev), the engine will JUST send the event down the SceneTree.
However, you won't get any of the benefits of the Input singleton:
- No InputMap actions will be emitted
- The internal input state won't be modified, so methods like `Input.get_mouse_pos()` or `Input.is_joy_button_pressed` won't return the expected output after sending the event.

This is fixed by using `Input.parse_input_event(ev)` instead.
I guess we'll also have to update the docs to reflect that this is the preferred method of sending custom InputEvents.
2017-03-19 09:20:44 +01:00
Karroffel
6ab3213a55 fixed ClassDB inconsistencies
fixes #7960
2017-03-13 21:17:31 +01:00
Rémi Verschelde
5dbf1809c6 A Whole New World (clang-format edition)
I can show you the code
Pretty, with proper whitespace
Tell me, coder, now when did
You last write readable code?

I can open your eyes
Make you see your bad indent
Force you to respect the style
The core devs agreed upon

A whole new world
A new fantastic code format
A de facto standard
With some sugar
Enforced with clang-format

A whole new world
A dazzling style we all dreamed of
And when we read it through
It's crystal clear
That now we're in a whole new world of code
2017-03-05 16:44:50 +01:00
Rémi Verschelde
45438e9918 Style: prevent bogus macro formatting by clang-format
Also prevent formatting of thirdparty snippet
2017-03-05 16:29:53 +01:00
Karroffel
1531f6fe01 really fixed PTRCALL now 2017-03-05 16:20:20 +01:00
Rémi Verschelde
f4fb19d11a Merge pull request #7958 from karroffel/powerstate-ptrcall-fix
Added PowerState casting operator to Variant
2017-03-05 15:48:06 +01:00
Rémi Verschelde
e1c1d7d1d7 Add a bunch of missing Godot headers in own files 2017-03-05 15:47:28 +01:00
Karroffel
15838f3702 Added PowerState casting operator to Variant
Without it Godot does not build with PTRCALL_ENABLED
2017-03-05 15:32:16 +01:00
Rémi Verschelde
e6952cad3a Merge pull request #7950 from RandomShaper/expose-more-geom
Expose uncapped versions of closest-point-to-segment utilities
2017-03-05 12:04:23 +01:00
Pedro J. Estébanez
0e0b6ec443 Expose uncapped versions of closest-point-to-segment utilities 2017-03-04 23:02:27 +01:00
Julian Murgia
94103c0c02 Add API to access battery power state
Done:
- X11, server (tested)
- Windows (developed, would be nice to retest)
- OSX (not tested)
Prepared (not developed):
- Android (code is here, but may not compile)
- iphone
- winrt
- bb10
- haiku
- javascript
2017-03-04 18:04:29 +01:00
Rémi Verschelde
de530c1b23 Merge pull request #7940 from RandomShaper/expose-geometry
Expose Geometry::get_closest_point_to_segment_2d()
2017-03-04 17:00:34 +01:00
Pedro J. Estébanez
eaa6433b3b Expose Geometry::get_closest_point_to_segment_2d() 2017-03-04 01:55:12 +01:00
Rémi Verschelde
74eace2b14 Merge pull request #7911 from RandomShaper/single-field-prop-edit
Implement single-field property change for multinode edit
2017-03-02 11:47:11 +01:00
Pedro J. Estébanez
1e867cb9d4 Implement single-field property change for multinode edit 2017-03-02 10:42:05 +01:00
Rémi Verschelde
ee53f85bea Merge pull request #7882 from AlexHolly/PoolStringArray-join
added join to PoolStringArray
2017-03-02 08:00:28 +01:00
Leandro Motta Barros
0e5863c86a Fix RANDOM_MAX, which is 2^32-1 with PCG32. 2017-03-01 14:33:45 -03:00
AlexHolly
9f7ce79ea3 added join to PoolStringArray 2017-03-01 16:30:34 +01:00
Rémi Verschelde
a1cbe8e22b Merge pull request #7878 from RebelliousX/else
Bunch of missing `else` statements and general logic
2017-02-28 23:03:10 +01:00
Saracen
5e938f0001 Inf and NaN support added to GDScript. 2017-02-28 21:52:33 +00:00
Thaer Razeq
f50488a361 Various fixes detected using PVS-Studio static analyzer.
- Add FIXME tags comments to some unfixed potential bugs
- Remove some checks (always false: unsigned never < 0)
- Fix some if statements based on reviews.
- Bunch of missing `else` statements
2017-02-28 07:52:02 -06:00
Rémi Verschelde
9c2542cf26 Merge pull request #7830 from volzhs/str-format-3
Fix zero padding formatting
2017-02-26 20:15:10 +01:00
Juan Linietsky
de0045cf1b -renamed globals.h to global_config.cpp (this seems to have caused a few modified files)
-.pck and .zip exporting redone, seems to be working..
2017-02-21 00:06:30 -03:00
volzhs
b8e58b2b7b Fix zero padding formatting 2017-02-18 00:20:05 +09:00
Hein-Pieter van Braam
b696beea65 Correct hash behavior for floating point numbers
This fixes HashMap where a key or part of a key is a floating point
number. To fix this the following has been done:

* HashMap now takes an extra template argument Comparator. This class
gets used to compare keys. The default Comperator now works correctly
for common types and floating point numbets.

* Variant implements ::hash_compare() now. This function implements
nan-safe comparison for all types with components that contain floating
point numbers.

* Variant now has a VariantComparator which uses Variant::hash_compare()
safely compare floating point components of variant's types.

* The hash functions for floating point numbers will now normalize NaN
values so that all floating point numbers that are NaN hash to the same
value.

C++ module writers that want to use HashMap internally in their modules
can now also safeguard against this crash by defining their on
Comperator class that safely compares their types.

GDScript users, or writers of modules that don't use HashMap internally
in their modules don't need to do anything.

This fixes #7354 and fixes #6947.
2017-02-16 18:44:29 +01:00
Juan Linietsky
da11d6d9e8 Many fixes to make exported scenes work better, still buggy. 2017-02-15 08:34:02 -03:00
Juan Linietsky
d7fd86d51a -begin of export work, not done yet
-fixes to make scenes exported from godot 2.x work
2017-02-15 08:30:32 -03:00
Juan Linietsky
04a6d2789e Revert "Make nan==nan true for GDScript" 2017-02-14 17:05:16 -03:00
Hein-Pieter van Braam
adcc211feb Make nan==nan true for GDScript
After discussing this with Reduz this seemed like the best way to
fix #7354. This will make composite values that contain NaN in the same
places as well as the same other values compare as the same.

Additionally non-composite values now also compare equal if they are
both NaN. This breaks IEEE specifications but this is probably what most
users expect. There is a GDScript function check for NaN if the user
needs this information.

This fixes #7354 and probably also fixes #6947
2017-02-14 13:32:23 +01:00
Hein-Pieter van Braam
411ee71b4d Rename the _MD macro to D_METHOD
This new name also makes its purpose a little clearer

This is a step towards fixing #56
2017-02-13 12:50:02 +01:00
Hein-Pieter van Braam
0f687f0ccb Remove use of _SCS from ADD_METHOD
This saves typing and is a step towards fixing #56
2017-02-13 10:37:47 +01:00
Rémi Verschelde
70b9aa379d Merge pull request #7581 from Faless/v6_wild_bind
TCP/UDP listen bind to address and bugfixes
2017-02-12 23:31:40 +01:00
Rémi Verschelde
70fff42df5 Merge pull request #7749 from Faless/fix_7697
HTTPClient properly handle partial data in non-blocking mode
2017-02-12 23:18:59 +01:00
Rémi Verschelde
5ce18cbdb9 Merge pull request #7743 from karroffel/json_parsing-3.0
JSON::parse reports errors on open-ended objects (master)
2017-02-12 23:17:08 +01:00
Nuno Donato
6b5c595e40 Added "Scots" locale name, fixing #7630 2017-02-08 14:54:28 +00:00
Fabio Alessandrelli
833994b294 HTTPClient properly handle partial data in non-blocking mode
Use block to send DVector::Write out of scope in
HTTPClient::read_response_body_chunk()
2017-02-07 11:01:53 +01:00
Juan Linietsky
6bfaa0f12c shadows were not working in-editor for nvidia, fixed now 2017-02-06 20:18:35 -03:00
Karroffel
d5071a940d JSON::parse reports errors on open-ended objects 2017-02-06 19:34:34 +00:00
Juan Linietsky
6f2e16306a Several bugfixes, improving the import workflow 2017-02-06 00:38:39 -03:00
Juan Linietsky
af3fabeb77 Ensure proper config version when reading the new configuration file. 2017-02-04 21:02:52 -03:00
Juan Linietsky
102b5fce85 Renamed engine.cfg to godot.cfg, to forcefully break compatibility with 2.x 2017-02-04 20:53:55 -03:00
volzhs
e3cf472651 Match ERROR_QUERY_FAILED enum with others 2017-02-02 21:15:47 +09:00
Rémi Verschelde
40e4c1f6ab Merge pull request #7689 from eska014/webgl2
Enable WebGL2 in web export, start fixing build
2017-02-02 08:18:42 +01:00
Rémi Verschelde
a506898137 Merge pull request #7681 from karroffel/classdb_type
corrected ClassDB::instance() return type
2017-02-02 08:15:43 +01:00
Rémi Verschelde
af6d59eed6 Merge pull request #7649 from Faless/fix_input_master
Keyboard Input modifiers do not block actions.
2017-02-02 08:07:47 +01:00
Juan Linietsky
b3aebcf6df CSV translation import plugin 2017-02-01 20:41:05 -03:00
Juan Linietsky
2cd2ca7bbc Lot of work in new importer, importing textures now works. 2017-02-01 09:46:36 -03:00
eska
e06edc67c0 Enable WebGL2 in web export, start fixing build
Will not yet compile
2017-02-01 10:21:04 +01:00
Karroffel
a7b1f9ee5a corrected ClassDB::insatnce() return type 2017-01-30 14:13:13 +01:00
Juan Linietsky
96de0141cc Removed import/export system, will start new one from scratch. 2017-01-25 21:57:08 -03:00
Fabio Alessandrelli
9100db7b94 Keyboard Input modifiers do not block actions.
This means, if you press "F" while holding "shift" and there is and
action registered for "F" that action should be pressed.
This commit restore this behaviour, lost when implementing
is_action_just_pressed.
If you want "blocking modifiers" you should code it via script.

Fixes 6826
2017-01-25 21:21:19 +01:00
Rémi Verschelde
831d9b925a Merge pull request #7563 from RayKoopa/extended_list_dir_begin
Add parameters to Directory.list_dir_begin() to skip navigational or hidden entries
2017-01-25 20:22:34 +01:00
Ilija Boshkov
1005a56e5a Added focus tracking in X11 and Windows classes, added new confined mouse mode (#7162) 2017-01-25 19:21:41 +01:00
Juan Linietsky
4c28f35b2c Merge pull request #7002 from RandomShaper/vcs-friendliness
Greater VCS friendliness
2017-01-25 14:52:40 -03:00
Juan Linietsky
7e1afeafd4 Audio bus editing is COMPLETE! 2017-01-25 14:31:52 -03:00
Ray Koopa
1ce9bbc8ed Added parameters to skip hidden and/or navigational file system entries 2017-01-24 21:07:02 +01:00
Juan Linietsky
87bb6cdc6f Ability to drag and drop around audio effects! 2017-01-24 00:19:31 -03:00