Commit Graph

495 Commits

Author SHA1 Message Date
Jared A. Scheel 11947b4584 Add note to Array#sort_custom about the dangers of using random return values 2017-09-03 15:56:34 -05:00
Rémi Verschelde 0da386a9ea doc: Sync classref to fix default args and enum returns
Following #10903 and #10906.
2017-09-03 12:27:29 +02:00
Poommetee Ketson 459f526119 Fix typos 'a' and 'an' 2017-09-02 21:19:06 +07:00
Rémi Verschelde 4d580d76ca doc: Sync classref with current source
Lots of changes due to new MethodBind logic, a few issues here and there
that will need to be fixed later on (wrong default values, imprecise return types).
2017-09-02 11:47:54 +02:00
Poommetee Ketson e5aec72bae Fix typo 'inetria' to 'inertia' 2017-09-01 01:32:29 +07:00
toger5 2aa735757a unified draw_center naming for (9patch,StyleBoxes)
- filled -> draw_center
 - is_draw_center -> is_draw_center_enabled
 - get_draw_center -> is_draw_center_enabled
2017-08-31 15:25:24 +02: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
Evgeny Zuev 1a2622d344 Add stretching to `TextureProgress`
Now `TextureProgress` has `nine_patch_stretch` flag. With this flag enabled,
it's being rendered as 9-path using `stretch_margin_*` properties as texture margins.

Stretching doesn't support `FILL_CLOCKWISE` and `FILL_COUNTER_CLOCKWISE` fill modes.
2017-08-22 13:46:59 +07:00
Rémi Verschelde d37bd15cb9 Merge pull request #10443 from karroffel/propagate_call
add "propagate_call" method to Node
2017-08-21 23:21:47 +02: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 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
Karroffel 390f7def39 add "propagate_call" method to Node
It is possible to propagate a notification down the Node tree by
using `propagate_notification`, but there was no such method for
doing the same but with method calls.

This commit adds the `propagate_call` method, which calls a method
on a node and all child nodes. An optional paramter `parent_first`
determines whether the parent node gets called before or after the
children have been visited. It defaults to false, so the parent
gets called last.
2017-08-19 15:22:37 +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
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
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
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
Naughty ce543bc079 Added missing descriptions to Vector2 methods abs and clamped. 2017-08-07 19:55:59 -07:00
Indah Sylvia 5ae78fdf6a Makes all Godot API's methods Lower Case 2017-08-07 18:24:35 +07: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
Poommetee Ketson c6740ddc05 Docs: fix method/type renames, fill some blanks 2017-08-02 14:47:34 +07:00
Rémi Verschelde 7348fbbea2 Merge pull request #9909 from kubecz3k/docs-collobject-collshapes
firsts docs for CollisionObject -> collision shape api
2017-07-31 22:44:36 +02:00
Rémi Verschelde 2d162a60da Merge pull request #9863 from kubecz3k/move-docs
Documentation update for KinematicBody.move()
2017-07-28 11:06:23 +02:00
Jakub Grzesik bb4b98defe Documentation update for KinematicBody.move() 2017-07-27 18:41:44 +02:00
Jakub Grzesik fe7365dcde firsts docs for CollisionObject -> collision shape api 2017-07-27 11:30:19 +02:00
bruvzg 7de7ca8ae4 Remove duplicate keycode constant for Numpad Enter key. 2017-07-26 14:43:02 +03:00
Julian Murgia 61572a57e9 Corrects usage of 'is' instead of 'extends' for testing node inheritance. 2017-07-26 13:12:44 +02:00
ISylvox cefc02a4f9 tagents --> tangents 2017-07-26 15:14:52 +07:00
Rémi Verschelde b6665c6c93 Merge pull request #9690 from 648trindade/classref-edit
Improved math functions descriptions and added many AStar descriptions
2017-07-25 21:08:34 +02:00
Jakub Grzesik d3d4ad193e documentation for EditorPlugin and ScriptEditor 2017-07-25 18:27:42 +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
Poommetee Ketson 2777f81d29 Add object type hint for docs 2017-07-23 18:57:03 +07:00
Poommetee Ketson 90c2c1e7f8 Docs: fix broken ref tags 2017-07-22 22:15:59 +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
Rafael Gauna Trindade 5dee7161b6 Improved math functions descriptions and added many AStar descriptions 2017-07-19 12:35:39 -03:00
Rémi Verschelde 1bed4c6783 Merge pull request #9629 from kubecz3k/tabs-addons
Tabs enhancements: get_tab_rect(), move_tab()
2017-07-18 18:12:26 +02:00
Jakub Grzesik b5de36b29d Tabs enhancements: get_tab_rect(), move_tab_from_to()
exposed: get_tab_rect(tab_idx)
new and exposed: move_tab_from_to(idx_from, idx_to)
2017-07-18 17:57:02 +02:00
Rémi Verschelde f36cd77feb Merge pull request #9639 from rminderhoud/primitives
Moved binds of PRIMITIVE_* contants from ArrayMesh to Mesh
2017-07-18 00:44:57 +02:00
Jakub Grzesik fb33644652 missing object.get_incoming_connections() documentation 2017-07-17 20:22:38 +02:00
dumitru-stama 06831d5088 Added documentation for blit_rect_mask 2017-07-15 09:40:52 -07:00
dumitru-stama 03425fe088 sync doc template 2017-07-15 09:38:46 -07:00
Rémi Verschelde e70d36071e doc: Sync classref with current source
Some descriptions were lost for refactored APIs, but they cannot be matched 1:1
with the new ones, so will need to be rewritten anyway.
2017-07-14 17:56:27 +02:00
Ralph Minderhoud bf18c35dd7 Moved binds of PRIMITIVE_* contants from ArrayMesh to Mesh 2017-07-14 08:46:21 -05:00
Jakub Grzesik 90bcb345b4 EditorPlugin ability to open and reload scns from filepath 2017-07-11 10:22:44 +02:00
ducdetronquito 566655adc1 [#9292] Renamed Image.put_pixel() to set_pixel(). 2017-07-07 19:05:45 +02:00
ducdetronquito 76e6b2d33b Improved GDScript parse_json() doc about numerical values conversion. 2017-07-06 16:46:37 +02:00
mdraw 070384c9c9 docs: Correct xform descriptions in class_basis 2017-06-27 08:59:08 +02:00
Thomas Herzog 86407aebc5 Merge pull request #8407 from Jylhis/popup_item_select_hide
Update PopupMenu hiding
2017-06-20 00:20:21 +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 34b6922caa
Add documentation to compression functions 2017-06-19 16:52:01 -03:00
d 053a4fdcd9 Added two new methods to 3.0 'blend_rect_mask' and 'fill' 2017-06-18 11:29:37 -07:00
Rémi Verschelde 5fc3a9956e doc: Sync classref with current source 2017-06-17 11:29:55 +02: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
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
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
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
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
Pedro J. Estébanez b69d4ebff4 Add extended check option to GDFunctionState::is_valid() 2017-05-17 14:55:59 +02:00
Rémi Verschelde 1b5c579166 Merge pull request #8762 from honix/master
Docs: ERR_EOF -> ERR_FILE_EOF
2017-05-14 20:02:19 +02:00
Christian Winter 25776dbf76 fixed typo 'one short connection' to 'one shot' 2017-05-14 19:56:58 +02:00
honix 78c7847d1d docs: ERR_EOF -> ERR_FILE_EOF 2017-05-14 20:35:40 +03:00
Rémi Verschelde 32afcbc482 Put brave old bb10 platform to a well-deserved rest
Add some 🔥 to appease @reduz. Fixes #8692.
2017-05-08 22:22:20 +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
Juan Linietsky 6d2f985db4 Revert "Use .godot as file extension for project files." 2017-04-29 17:56:51 +02:00
clayjohn 478817abad added documentation for SurfaceTool 2017-04-25 21:35:25 -06:00
clayjohn 5fdc7ac88a added descriptions for WorldEnvironment node in documentation 2017-04-24 13:45:57 -06: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
Chris Bradfield d9149847ed Clarification of degrees/radians in angle methods 2017-04-20 01:59:36 +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
Jylhis 8ccb9d13c3 Update PopupMenu hiding
Make PopupMenu hiding distinguish between checkable item and non checkable
item.
2017-04-14 15:00:38 +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 3708d88719 classref: Sync with current source 2017-04-07 19:44:42 +02: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 02f9851d0d Merge pull request #8259 from bojidar-bg/move-slide-wall-fix
Fix is_move_and_slide_on_wall, make move_and_slide floor angle configurable
2017-04-05 01:24:19 +02:00
Bojidar Marinov 289abd3710
Fix is_move_and_slide_on_wall, make move_and_slide floor angle configurable
Fixes #7313
2017-04-04 18:32:27 +03: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
Bojidar Marinov 669956849a
Update classes.xml to master version, add a small feature to doc_status 2017-03-29 22:27:59 +03: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 debeee56f7 Fix typos in source code using codespell
From https://github.com/lucasdemarchi/codespell
2017-03-24 21:45:31 +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
CrazyGuy108 9589936d6e
List Control::has_point as a virtual method
According to Issue #8018, a BIND_VMETHOD macro wasn't present in scene/gui/control.cpp, while it was declared to be a virtual method in scene/gui/control.h.

classes.xml was updated to also list this method in Control.
2017-03-14 19:08:13 -07:00
Rémi Verschelde 630158c992 Merge pull request #7916 from RebelliousX/tab_container
TabContainer's signal changes (v3)
2017-03-05 12:03:09 +01:00
Thaer Razeq c9bda06dfd - `tab_changed` signal emits only by selecting a different tab.
- Added `tab_selected` signal. Which emits a signal by selecting any tab, if current tab is selected again.
- Added `get_previous_tab()`. Which returns the previous shown tab. **Note:** only `tab_changed` can modify previous tab index.
- Add documentation for the added function and signals. Fix a typo too.
2017-03-05 02:47:09 -06:00
Karol Walasek 29908d32ba Added a SceneTree.has_network_peer, closes #7922 2017-03-04 11:35:44 +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
Juan Linietsky 102b5fce85 Renamed engine.cfg to godot.cfg, to forcefully break compatibility with 2.x 2017-02-04 20:53:55 -03:00
Chris Bradfield 10176228b2 grammar fixes, it's -> its 2017-01-29 23:01:34 -08:00
Fabio Alessandrelli e5e4e7b6a9 Update docs reference for TCP_Server::listen and UDPPacketPeer::listen 2017-01-23 20:18:23 +01:00
Ferenc Arn 4c9004671a Replace the existing PRNG (Xorshift31) with (minimal) PCG (XSH-RR variant with 32-bit output, 64-bit state).
PCG is better than many alternatives by many metrics (see www.pcg-random.org) including statistical quality with good speed.
2017-01-15 19:15:16 -06:00
Rémi Verschelde 7b9f2d9929 Finish renaming *Frame GUI classes to *Rect
ReferenceFrame had been overlooked, and the cpp files still used the old
names. Also ripgrep'ed it all to find some forgotten references.
2017-01-14 10:52:54 +01:00
Rémi Verschelde f392b340ff Tween: Rename times_in_sec (sic) param to duration 2017-01-13 19:40:18 +01:00
Juan Linietsky da477b76a9 some class renames
TextureFrame -> TextureRect
Patch9Frame -> NinePatchRect
ColorFrame -> ColorRect
2017-01-12 18:28:12 -03:00
Juan Linietsky 710692278d Merge pull request #7426 from m4nu3lf/bugfix/physics
Fixed inertia tensor computation and center of mass
2017-01-10 22:27:32 -03:00
Juan Linietsky 0acd4fccd5 Merge pull request #7438 from tagcup/matrix3_rotate_fix
Fix the order in which additional transformations are applied
2017-01-10 22:22:56 -03:00
Emmanuel Leblond 0fbf3b990d Remove deprecated Vector2.floorf method 2017-01-10 09:11:36 +01:00
m4nu3lf 2e38b32e0f Fixed inertia tensor computation and center of mass 2017-01-09 00:13:54 +00:00
Ferenc Arn 6b1252cdfa Fix the order in which additional transformations are applied in Matrix3 and Transform.
This is a part of the breaking changes proposed in PR #6865, solving the issue regarding the order of affine transformations described in #2565. This PR also fixes the affected code within Godot codebase. Includes improvements to documentation too.

Another change is, Matrix3::get_scale() will now return negative scaling when the determinant of the matrix is negative. The rationale behind this is simple: when performing a polar decomposition on a basis matrix M = R.S, we have to ensure that the determinant of R is +1, such that it is a proper rotation matrix (with no reflections) which can be represented by Euler angles or a quaternion.

Also replaced the few instances of float with real_t in Matrix3 and Transform.

Furthermore, this PR fixes an issue introduced due to the API breakage in #6865. Namely Matrix3::get_euler() now only works with proper rotation matrices. As a result, the code that wants to get the rotation portion of a transform needs to use Matrix3::get_rotation() introduced in this commit, which complements Matrix3::get_scaled(), providing both parts of the polar decomposition.

Finally, it is now possible to construct a rotation matrix from Euler angles using the new constructor Matrix3::Matrix3(const Vector3 &p_euler).
2017-01-08 10:36:14 -06:00
Emmanuel Leblond 28d7486267 Fix codeblock tag in classes.xml for EditorSettings 2017-01-08 12:34:39 +01:00
Ferenc Arn bd7ba0b664 Use right handed coordinate system for rotation matrices and quaternions. Also fixes Euler angles (XYZ convention, which is used as default by Blender).
Furthermore, functions which expect a rotation matrix will now give an error simply, rather than trying to orthonormalize such matrices. The documentation for such functions has be updated accordingly.

This commit breaks code using 3D rotations, and is a part of the breaking changes in 2.1 -> 3.0 transition. The code affected within Godot code base is fixed in this commit.
2017-01-03 17:41:04 -06:00