Commit graph

463 commits

Author SHA1 Message Date
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
df61dc4b2b Add "Godot Engine contributors" copyright line 2017-04-08 00:11:42 +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
4989cc3617 Fix URLs to moved docs pages
Closes #8266.
2017-04-05 07:34:27 +02: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
Rémi Verschelde
3f3f5a5359 Merge remote-tracking branch 'origin/gles3' into gles3-on-master
Various merge conflicts have been fixed manually and some mistakes
might have been made - time will tell :)
2017-01-02 21:52:26 +01:00
Rémi Verschelde
c9366f8b56 Merge pull request #7410 from nounoursheureux/master
Add the 'finished' signal to AnimatedSprite
2017-01-02 15:54:58 +01:00
Rémi Verschelde
0b2771bd65 Merge pull request #7271 from Faless/ipv6_cleanup
Fixes and improvementes for IPv6 implementation.
2017-01-02 15:51:45 +01:00
Bruno Ortiz
7e0d0d0bb9 Exposing edit_resource method of EditorNode in the EditorPlugin (#7355) 2017-01-02 13:37:22 +01:00
Wilhem Barbier
f6262fde11 Add the 'finished' signal to AnimatedSprite 2017-01-02 12:24:37 +01:00
Rémi Verschelde
c7bc44d5ad Welcome in 2017, dear changelog reader!
That year should bring the long-awaited OpenGL ES 3.0 compatible renderer
with state-of-the-art rendering techniques tuned to work as low as middle
end handheld devices - without compromising with the possibilities given
for higher end desktop games of course. Great times ahead for the Godot
community and the gamers that will play our games!
2017-01-01 22:03:33 +01:00
Rémi Verschelde
f8e6cdd89d Merge pull request #7322 from Jerome67000/classref-edit
doc improvement for get_colliding_bodies() methods
2016-12-23 15:48:47 +01:00
Ivan P. Skodje
da950cd0f2 PopupMenu upgrade: Hide on item selection (#7306)
* Added the option to set hide on item selection. Usable in GDScript and from within the source code when you want to specify popup menus you don't want to close immediately when selecting an item

* Renamed getter from get_ to is_, fixed parent/child behavior, renamed bool variable to match most code and added ADD_PROPERTYNO to save some memory
2016-12-23 15:43:45 +01:00
Jerome67000
3cd5c86b1a doc improvement for get_colliding_bodies() methods 2016-12-17 17:18:33 +01:00
Fabio Alessandrelli
c18c5013f8 Migrate int.IP_TYPE_ constants to IP.TYPE_ 2016-12-09 18:24:59 +01:00
Rémi Verschelde
440c37fbd9 Revert "Do not emit NOTIFICATION_READY more than once (breaking change)"
This reverts commit b6eab006db.

This commit broke compatibility in an undesired way, as outlined in
https://github.com/godotengine/godot/issues/3290#issuecomment-263388003
2016-11-30 00:08:01 +01:00
Rémi Verschelde
35e754db59 Merge pull request #7138 from bojidar-bg/ready_guard
Do not enter _ready twice
2016-11-28 15:19:50 +01:00
George Marques
a692b7a1c1 Merge pull request #7149 from Kazuo256/array-last
Add Array.front() and Array.back()
2016-11-22 08:08:59 -02:00
romeojulietthotel
f8d523b68b Correct description for the return values from get_status. (#7137) 2016-11-21 11:55:57 +01:00
Kazuo256
bf4fda64fd Add Array.front() and Array.back() 2016-11-18 18:45:51 -02:00
Bojidar Marinov
b6eab006db
Do not emit NOTIFICATION_READY more than once (breaking change)
Currently, there is no notification with the old behaviour, so probably breaks all cpp code relying on that notification as well.
2016-11-17 18:46:45 +02:00
Rémi Verschelde
f0f04d5082 Merge pull request #6862 from Faless/fix_6388
Fix Keyboard Input Hangs when using modifiers
2016-11-11 10:47:10 +01:00
ISylvox
b5c383fd61 vsnc --> vsync 2016-11-08 21:06:57 +07:00
Rémi Verschelde
9f7b781657 Merge pull request #7050 from DTV96Calibre/master
Fixed minor typo
2016-11-06 12:09:40 +01:00
DTV96Calibre
37098419c5 Fixed minor typo 2016-11-06 01:38:41 -05:00
George Marques
411faaa6f4
Rename remaining WinRT references to UWP 2016-11-03 14:51:08 -02:00
Rémi Verschelde
f34151ff0f style: Various other PEP8 fixes in Python files
Done with `autopep8 --select=E7`, fixes:

- E701 - Put colon-separated compound statement on separate lines.
- E702 - Put semicolon-separated compound statement on separate lines.
- E703 - Put semicolon-separated compound statement on separate lines.
- E711 - Fix comparison with None.
- E712 - Fix (trivial case of) comparison with boolean.
- E713 - Fix (trivial case of) non-membership check.
- E721 - Fix various deprecated code (via lib2to3).
2016-11-01 00:35:16 +01:00
Rémi Verschelde
817dd7ccbb style: Fix PEP8 blank lines issues in Python files
Done with `autopep8 --select=E3,W3`, fixes:

- E301 - Add missing blank line.
- E302 - Add missing 2 blank lines.
- E303 - Remove extra blank lines.
- E304 - Remove blank line following function decorator.
- E309 - Add missing blank line.
- W391 - Remove trailing blank lines.
2016-11-01 00:35:16 +01:00
Rémi Verschelde
d4c17700aa style: Fix PEP8 whitespace issues in Python files
Done with `autopep8 --select=E2,W2`, fixes:

- E201 - Remove extraneous whitespace.
- E202 - Remove extraneous whitespace.
- E203 - Remove extraneous whitespace.
- E211 - Remove extraneous whitespace.
- E221 - Fix extraneous whitespace around keywords.
- E222 - Fix extraneous whitespace around keywords.
- E223 - Fix extraneous whitespace around keywords.
- E224 - Remove extraneous whitespace around operator.
- E225 - Fix missing whitespace around operator.
- E226 - Fix missing whitespace around operator.
- E227 - Fix missing whitespace around operator.
- E228 - Fix missing whitespace around operator.
- E231 - Add missing whitespace.
- E231 - Fix various deprecated code (via lib2to3).
- E241 - Fix extraneous whitespace around keywords.
- E242 - Remove extraneous whitespace around operator.
- E251 - Remove whitespace around parameter '=' sign.
- E261 - Fix spacing after comment hash.
- E262 - Fix spacing after comment hash.
- E265 - Format block comments.
- E271 - Fix extraneous whitespace around keywords.
- E272 - Fix extraneous whitespace around keywords.
- E273 - Fix extraneous whitespace around keywords.
- E274 - Fix extraneous whitespace around keywords.
- W291 - Remove trailing whitespace.
- W293 - Remove trailing whitespace.
2016-11-01 00:35:16 +01:00
Rémi Verschelde
97c8508f5e style: Start applying PEP8 to Python files, indentation issues
Done with `autopep8 --select=E1`, fixes:

- E101 - Reindent all lines.
- E112 - Fix under-indented comments.
- E113 - Fix over-indented comments.
- E115 - Fix under-indented comments.
- E116 - Fix over-indented comments.
- E121 - Fix a badly indented line.
- E122 - Fix a badly indented line.
- E123 - Fix a badly indented line.
- E124 - Fix a badly indented line.
- E125 - Fix indentation undistinguish from the next logical line.
- E126 - Fix a badly indented line.
- E127 - Fix a badly indented line.
- E128 - Fix a badly indented line.
- E129 - Fix a badly indented line.
2016-11-01 00:33:51 +01:00
Fabio Alessandrelli
7f42da0330 Update docs to IPv6 2016-10-30 17:46:05 +01:00
Rémi Verschelde
21828209ec Merge pull request #6950 from rdb/master
Add "Never" underline mode to LinkButton
2016-10-30 12:11:49 +01:00
rdb
d517bc908f Add "Never" underline mode to LinkButton 2016-10-28 10:52:57 +02:00
Juan Linietsky
53d8f2b1ec PBR more or less working, still working on bringing gizmos back 2016-10-27 11:50:26 -03:00
Zher Huei Lee
c3b4686082 Added global sub and bounds checking to RegEx 2016-10-27 10:27:40 +01:00
Zher Huei Lee
439d439321 RegEx re-implemented as a module
Re-wrote nrex as a module using godot-specific parts and new
features:

 * Added string substitutions.
 * Named groups are now supported.
 * Removed use of mutable variables in RegEx. RegExMatch is returned
   instead.
2016-10-27 10:27:40 +01:00
Rémi Verschelde
afd86ee240 Merge pull request #6090 from WalasPrime/raytrace_force
Added force_raycast_update GDScript method for RayCast[2D]
2016-10-22 12:40:14 +02:00
Fabio Alessandrelli
17d7e6a142 Fix Keyboard Input Hangs when using modifiers
Main input parsing loop only update actions for keyboard if the state has changed.
`InputMap::event_is_action` now ignores keyboard modifiers if the event is not pressed.
Clarify difference between `InputMap::action_has_event` and `InputMap::event_is_action` in docs.

Fixes #6388.
2016-10-19 17:52:49 +02:00
Rémi Verschelde
e96c49f849 Merge pull request #6850 from akien-mga/pr-scsub-shebang
SCsub: Add python shebang as a hint for syntax highlighting
2016-10-17 20:13:18 +02:00
Rémi Verschelde
fc8ccd5b8c SCsub: Add python shebang as a hint for syntax highlighting
Also switch existing shebangs to "better" /usr/bin/env python.
2016-10-17 20:10:46 +02:00
Rémi Verschelde
345f82d4ca Merge pull request #6779 from WalasPrime/rpc_docs
Documentation of RPC-related methods and classes
2016-10-17 09:58:34 +02:00
Rémi Verschelde
292132ef6b Merge pull request #6821 from akien-mga/pr-bye-speex
Remove speex support, it is obsoleted by opus
2016-10-14 18:14:33 +02:00
Rémi Verschelde
d3d0507c05 Remove speex support, it is obsoleted by opus
As mentioned by upstream, Xiph.Org [0]:
> The Speex codec has been obsoleted by Opus. It will continue to be
> available, but since Opus is better than Speex in all aspects,
> users are encouraged to switch.

[0] http://www.speex.org/
2016-10-13 18:58:56 +02:00
Karol Walasek
5687fa4709 Fixed Particle2D docs - radians to degrees for some params 2016-10-13 18:25:06 +02:00
Karol Walasek
61cca26ddf Documentation of RPC-related methods and classes 2016-10-13 18:00:24 +02:00
Rémi Verschelde
abfa42dd39 Merge pull request #6781 from volzhs/unnecessary-parentheses
Remove unnecessary parentheses

[ci skip]
2016-10-10 20:06:46 +02:00
volzhs
42c72eee66 Remove unnecessary parentheses 2016-10-11 02:59:29 +09:00
Rémi Verschelde
ddf2acad4e Merge pull request #6613 from pkowal1982/tween
Tween reset/stop/resume/remove for all object properties at once
2016-10-09 13:56:33 +02:00
Juan Linietsky
22d83bc9f6 Begining of GLES3 renderer:
-Most 2D drawing is implemented
-Missing shaders
-Missing all 3D
-Editor needs to be set on update always to be used, otherwise it does not refresh
-Large parts of editor not working
2016-10-03 21:35:16 +02:00
Karol Walasek
8d57640d37 Added general notes on RayCast[2D] updating behaviour and force_raycast_update() 2016-10-03 12:40:25 +02:00
Karol Walasek
db0a46d7f7 Filled blanks and normalized documentation on RayCast[2D] 2016-10-01 16:21:33 +02:00
Rémi Verschelde
3ecd8560fd Classref: Sync template with current source 2016-10-01 13:01:44 +02:00
Pawel Kowal
acc242fd6a Tween reset/stop/resume/remove for all object properties at once 2016-09-25 23:25:52 +02:00
George Marques
7cd64c3c8d
Add docs for XMLparser, VideoPlayer and most of Tree 2016-09-19 18:39:36 -03:00
George Marques
98e7c1edba
Add a function to plugin get the main screen parent
- Fix a bug where the main screen button did not disappear when the plugin
  was deactivated.
2016-09-16 15:02:01 -03:00
Andreas Haas
cef70a5f8b
Update documentation on joystick vibration.
Added a note that long vibration durations are not recommended because of hardware limitations.
For example, my ps4 controller can only vibrate for ~3s on linux.
2016-09-16 11:08:32 +02:00
Juan Linietsky
2a003d7b4e fix get_selected_nodes() 2016-09-10 17:50:20 -03:00
Juan Linietsky
65b93d177e -Added bindings to the resource filesystem for editor
-Added set_child_rect, which was unavailable for script
2016-09-10 17:34:27 -03:00
Juan Linietsky
2da3aaefc2 small clarification in doc 2016-09-10 16:46:00 -03:00
Juan Linietsky
491dde2eb4 Made it possible to properly draw over the 2D canvas for 2D objects. Arranged some functions to achieve this. 2016-09-10 16:44:03 -03:00
Juan Linietsky
67d3935eb1 -Added way to generate resource previews from script plugin.
-Updated documentation
2016-09-10 15:32:17 -03:00
Juan Linietsky
6abd1437cd Merge pull request #5879 from gau-veldt/subarray_patch
Subarray patch
2016-09-10 12:22:31 -03:00
Juan Linietsky
026c7913cf Merge pull request #5942 from pkowal1982/scroll
ScrollContainer expand children bug fix
2016-09-10 12:14:33 -03:00
Paulb23
7d455fca71 Added ItemList get_v_scroll to docs 2016-09-09 15:28:01 +01:00
Gastronok
cd82fafd58 Change the documentation to reflect that Directory.list_dir_begin()
returns true (not false) when a stream could not be initialized. (See, for
example,
https://github.com/godotengine/godot/blob/master/drivers/windows/dir_access_windows.cpp#L76
)
2016-09-07 16:32:59 -07:00
Rémi Verschelde
a40309b532 Merge pull request #6420 from Paulb23/itemlist_tooltip_disable_issue_6240
Itemlist tooltip disable issue 6240
2016-09-07 20:42:26 +02:00