Commit Graph

255 Commits

Author SHA1 Message Date
Rémi Verschelde
df61dc4b2b Add "Godot Engine contributors" copyright line 2017-04-08 00:11: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
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
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
AlexHolly
9f7ce79ea3 added join to PoolStringArray 2017-03-01 16:30:34 +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
2a0ddc1e89 Style: Various fixes to play nice with clang-format 2017-01-16 08:49:52 +01:00
Rémi Verschelde
f44ee891be Style: Fix statements ending with ';;' 2017-01-16 08:49:52 +01:00
Rémi Verschelde
3890256fc5 Style: Cleanups, added headers, renamed files
Made sure files in core/ and tools/ have a proper Godot license header
when written by us. Also renamed aabb.{cpp,h} and object_type_db.{cpp,h}
to rect3.{cpp,h} and class_db.{cpp,h} respectively.

Also added a proper header to core/io/base64.{c,h} after clarifying
the licensing with the original author (public domain).
2017-01-16 08:04:23 +01:00
Juan Linietsky
7c4167de64 Merge pull request #7010 from AlexHolly/format-string2
advanced string format
2017-01-14 11:56:24 -03:00
Rémi Verschelde
93ab45b6b5 Style: Fix whole-line commented code
They do not play well with clang-format which aligns the `//` part
with the rest of the code block, thus producing badly indented commented code.
2017-01-14 14:52:23 +01:00
Juan Linietsky
d9d77291bc rename String.extension() -> String.get_extension() / String.basename() -> String.get_basename() 2017-01-14 00:51:09 -03:00
Juan Linietsky
6e88b1096a Vector2.get_aspect() renamed to Vector2.aspect() to keep consistent method naming 2017-01-13 20:00:43 -03:00
Juan Linietsky
e6583117df Both Array and Dictionary are always in shared mode (removed copy on write). 2017-01-11 08:54:17 -03:00
Juan Linietsky
bc26f90581 Type renames:
Matrix32 -> Transform2D
	Matrix3 -> Basis
	AABB -> Rect3
	RawArray -> PoolByteArray
	IntArray -> PoolIntArray
	FloatArray -> PoolFloatArray
	Vector2Array -> PoolVector2Array
	Vector3Array -> PoolVector3Array
	ColorArray -> PoolColorArray
2017-01-11 00:52:51 -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
Emmanuel Leblond
0fbf3b990d Remove deprecated Vector2.floorf method 2017-01-10 09:11:36 +01:00
Juan Linietsky
62273e51a2 Moved JSON functions to built-in to_json, parse_json, validate_json 2017-01-08 22:40:00 -03:00
m4nu3lf
2e38b32e0f Fixed inertia tensor computation and center of mass 2017-01-09 00:13:54 +00:00
Juan Linietsky
547a57777b renamed joystick to joypad everywhere around source code! 2017-01-08 17:06:33 -03:00
Juan Linietsky
2ab83e1abb Memory pool vectors (DVector) have been enormously simplified in code, and renamed to PoolVector 2017-01-07 18:26:38 -03: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
0b2771bd65 Merge pull request #7271 from Faless/ipv6_cleanup
Fixes and improvementes for IPv6 implementation.
2017-01-02 15:51:45 +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
Fabio Alessandrelli
c18c5013f8 Migrate int.IP_TYPE_ constants to IP.TYPE_ 2016-12-09 18:24:59 +01:00
Kazuo256
bf4fda64fd Add Array.front() and Array.back() 2016-11-18 18:45:51 -02:00
AlexHolly
d8129719c2 advanced string format 2016-11-01 15:14:48 +01:00
Ariel Manzur
887a897c02 adding ipv6 2016-10-18 18:53:18 -03: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
Rémi Verschelde
917f5e9bbc Merge pull request #6675 from J08nY/issue-vector3-angle-to
Adds Vector.angle_to(Vector other), fixes #3912

[ci skip]
2016-10-03 13:53:46 +02:00
J08nY
deb36b44d1
Vector3: added angle_to(Vector3 other) 2016-10-03 13:41:59 +02:00
Rémi Verschelde
cf4693cf18 Merge pull request #6304 from razvanc-r/master
(Array) .pop_front, .pop_back & .remove return values instead of void
2016-10-03 11:34:03 +02:00
Andreas Haas
c21412fa7e
Expose Vector2::clamped() to scripts
Needed this and wondered that there's no built-in function for it.
So I wanted to implement it and saw that it's actually already there, just wasn't bound ^^
2016-09-19 23:10:30 +02:00
Răzvan Cosmin Rădulescu
1a7aae7443 (Array) pop_front, pop_back return values
pop_front, pop_back now return values instead of `void`. Things
I didn't know how to properly implement:

1. pop_front & pop_back shows in the help menu Object as return value.
   I know this is incorrect but if not Object than what? Cause it
   can't be void. It needs to be a generic type that includes all the
   Array types
2016-09-11 17:37:21 +02:00
Juan Linietsky
6abd1437cd Merge pull request #5879 from gau-veldt/subarray_patch
Subarray patch
2016-09-10 12:22:31 -03:00
Rémi Verschelde
7d600caa16 Merge pull request #6352 from hurikhan/fix_release_build_II
Fix release build. (II)
2016-09-05 07:44:31 +02:00
Juan Linietsky
89702d545b Basic type constants for visual script 2016-09-02 02:13:12 -03:00
Mario Schlack
588e124c53 Fix release build. (II) 2016-09-01 00:19:31 +08:00
Juan Linietsky
d8af6330e5 More progress on visual script editing 2016-08-03 11:28:43 -03:00
Juan Linietsky
c9d0053754 Merge pull request #5524 from pkowal1982/master
Array has(var value) function
2016-07-24 12:21:29 -03:00
Gau o fthe Veldt
82d4cb5114 Added slicing operation to DVector via DVector.subarray(int start,int end) method.
Negative indices index from the end of the array.
Indices are range checked before attempting and return appropriate error when out of range.
Binding for RawArray in gdscript to access DVector.subarray() provided.
Documentation of RawArray.subarray() in classes.xml provided.
2016-07-23 12:52:41 -07:00
Rémi Verschelde
a15de80942 classref: Fix arg name for is_action_pressed/released
Also position TEXTURE_SPHERE constant properly.
2016-07-08 23:40:43 +02:00
Pawel Kowal
96eb97cbbf Array has(var value) function 2016-07-07 11:40:38 +02:00
George Marques
29b62ce5d0
Make sure builtin types' constants remain in order
This adds a list of constants for VariantCall to make sure the order of
register is kept when showing in the editor help and in the documentation.

This also remove the sorting of constants from the doctool, so it keeps
the natural order in classes.xml.
2016-07-05 17:09:16 -03:00
George Marques
a6ec3af349
Expose *Array.invert() to script
Properly solve #4601.
2016-06-25 14:16:28 -03:00
George Marques
98b02209a4
Add sha256_buffer() function to String 2016-06-23 13:59:23 -03:00
J08nY
797168e62d
*Array: added bindings for other DVector methods
- affects {RAW,INT,REAL,STRING,VECTOR2,VECTOR3,COLOR}_ARRAY
 - adds bindings for append(),append_array(),remove(),insert()
 - broadens #4245
2016-06-22 11:51:59 +02:00
Rémi Verschelde
3668768463 Merge pull request #5196 from vnen/similarity-code-completion
Improve code completion search
2016-06-20 13:37:24 +02:00
Juan Linietsky
5e816fd8c8 Property reporty base type when a function fails, fixes #4581 probably also closes other issues 2016-06-20 01:15:02 -03:00
George Marques
1b8d0a16b7
Add similarity comparison to String
Uses the Sorensen-Dice coefficient to calculate similarity. This also adds
String.bigrams() as a convenience function needed by the comparison.
2016-06-19 11:39:01 -03:00
Bojidar Marinov
7073bb0bb2
Add sha256 to String and File/FileAccess.
Probably does #4166
2016-06-17 10:55:16 +03:00
Rémi Verschelde
78b745bb0a Merge pull request #5192 from J08nY/issue-5190
Dictionary: rename param in .has() .has_all() .erase()
2016-06-15 11:13:59 +02:00
J08nY
58a891265a
String documentation: .ord_at() returns int not String
fixes #5189
2016-06-14 14:52:32 +02:00
J08nY
7a19e3c6ae
Dictionary: rename param in .has() .has_all() .erase()
fixes #5190, param should be named key, not value
2016-06-13 19:08:04 +02:00
George Marques
a6c37d2b5d
Add 'is_subsequence_of' function to String 2016-06-12 14:52:54 -03:00
George Marques
46b6bb9dc4
Add 'rfind' function to Array 2016-06-10 17:46:57 -03:00
George Marques
269d570420
Add 'from' argument to Array.find() 2016-06-10 15:43:07 -03:00
J08nY
8a4eca8aa8
Exposed Image.INTERPOLATE_* 2016-06-07 11:46:07 +02:00
Juan Linietsky
736b65e566 Merge pull request #4977 from SaracenOne/scripting_expose
Expose extra methods and constants to scripts
2016-06-06 20:27:40 -03:00
J08nY
dcce477f5e
Added Dictionary.values() 2016-06-05 14:50:06 +02:00
J08nY
5f5ca8cd9b Added Array.find_last() and Array.count() 2016-06-03 23:36:02 +02:00
Saracen
4bcc60008d Expose Vector2 abs method to scripts 2016-06-01 15:47:53 +01:00
Saracen
7ebc422945 Expose string 'erase' method to script 2016-06-01 15:47:46 +01:00
Mattias Cibien
49c473bb36 Added possibility to strip left and right to strip_edges (#4594) 2016-05-11 09:22:59 +02:00
Rémi Verschelde
c556a97b27 Variant: readd String.ends_with and Dict.has_all
Erroneously removed in cfd3efd097.
2016-05-06 10:45:09 +02:00
Ariel Manzur
cfd3efd097 export fix_alpha_edges 2016-05-05 18:41:06 -03:00
Alexander Holland
a379ed56ea string ends_with 2016-04-17 23:49:21 +02:00
Alexander Holland
a8ebd43ab7 dictionary has_all 2016-04-04 18:37:43 +02:00
Juan Linietsky
c247f5ad61 Removed get() function from many variant typed arrays, fixes #2135 2016-01-24 01:00:42 -03:00
Juan Linietsky
4fdab4f555 added a new function to escape properly json, fixes #3282 2016-01-10 15:01:06 -03:00
George Marques
5be9ff7b67 Update copyright to 2016 in headers 2016-01-01 11:50:53 -02:00
Juan Linietsky
9a7ff65751 make popup emit index when id is not defined 2015-12-12 09:07:43 -03:00
Juan Linietsky
b191e740d2 add pop_back/pop_front/push_back/push_front to array, to make it according to doc, fixes #3040 2015-12-12 08:27:30 -03:00
Franklin Sobrinho
3c4b0236cb Add constructor for Image built-in type 2015-12-06 09:12:14 -03:00
Juan Linietsky
200b7bb87c -Display on animation editor which keys are invalid and which tracks are unresolved
-Added a tool to clean up unresolved tracks and unused keys
2015-12-05 14:18:22 -03:00
est31
a23e29ab36 Correct retvals of String::to_ascii() and String::to_utf8()
Both return RawArray, not String.

My fault from commit f83f96cb44.
2015-11-24 05:11:39 +01:00
Juan Linietsky
d3eb9e8c54 -remove Vector2.atan2() replaced by Vector2.angle(), fixes #2260 2015-11-19 10:41:20 -03:00
Franklin Sobrinho
541812e999 Implement Quat multiply operator, and xform method 2015-11-11 11:30:55 -03:00
MrGreenTea
ec11762006 added floor() and ceil() to Vector3 2015-07-15 01:59:35 +02:00
Jaguar
e6fb0cf970 Added helper methods to InputEvent 2015-06-23 16:24:48 -04:00
James McLean
bb659fa875 Added rot/pos constructor for Matrix32 variant. 2015-06-09 10:55:23 -04:00
est31
f83f96cb44 Add String.to_utf8() and String.to_ascii() 2015-06-04 01:48:52 +02:00
romulox_x
79c36ea5f7 fixed ColorArray constructor when taking array as parameter 2015-04-27 14:45:54 -07:00
Juan Linietsky
66c71c21df resolved some cases wehre built-in doc is not properlt generated, fixes #1719 2015-04-22 00:25:13 -03:00
Juan Linietsky
fdaa2920eb Updated copyright year in all headers 2015-04-18 14:38:54 -03:00
Juan Linietsky
22997294fa -Concatenating arrays keeps the shared property if any of the arrays is shared. Fixes #1646 2015-04-07 21:18:46 -03:00
Alex Bonfim
2d4cad7057 Fix for InputEvent::set_as_action 2015-03-15 23:17:48 -03:00
Juan Linietsky
2d4cec0cb6 fix return value of slide and reflect
closes #1311
2015-02-15 11:26:31 -03:00
Juan Linietsky
a36a774897 Fixes
-=-=-=

-Added missing quaternion constructor
-code completion fixes
-winrt fixes
2014-12-20 15:30:06 -03:00
Juan Linietsky
abbea4d945 UDP Fixes
-=-=-=-=-

Curse the day I decided to port UDP code, as it ended up
being two nights of work.  At least It's done now (I hope).

-Fixed UDP Support, API seems stable
-Added UDP Chat demo (chat that can lose your packets, heh)
-Added helpers to areas and bodies to get list of collided bodies and contained bodies.
-Sped up screen/viewport capture code.
-Added code to save an image as PNG
-Small fix so scripts register their singletons after modules did.
2014-11-13 00:53:12 -03:00
Juan Linietsky
0dbedd18fc SceneMainLoop -> SceneTree
-=-=-=-=-=-=-=-=-=-=-=-=-=-

*YOUR SOURCE MIGHT NOT WORK*
For mor information on fix:
https://github.com/okamstudio/godot/wiki/devel_scene_tree

Other stuff:
-Shower of bullets demo
-Fixes all around
2014-11-05 21:20:42 -03:00
Juan Linietsky
b24fe3dd20 Huge Amount of BugFix
-=-=-=-=-=-=-=-=-=-=-

-Fixes to Collada Exporter (avoid crash situtions)
-Fixed to Collada Importer (Fixed Animation Optimizer Bugs)
-Fixes to RigidBody/RigidBody2D body_enter/body_exit, was buggy
-Fixed ability for RigidBody/RigidBody2D to get contacts reported and bodyin/out in Kinematic mode.
-Added proper trigger support for 3D Physics shapes
-Changed proper value for Z-Offset in OmniLight
-Fixed spot attenuation bug in SpotLight
-Fixed some 3D and 2D spatial soudn bugs related to distance attenuation.
-Fixed bugs in EventPlayer (channels were muted by default)
-Fix in ButtonGroup (get nodes in group are now returned in order)
-Fixed Linear->SRGB Conversion, previous algo sucked, new algo works OK
-Changed SRGB->Linear conversion to use hardware if supported, improves texture quality a lot
-Fixed options for Y-Fov and X-Fov in camera, should be more intuitive.
-Fixed bugs related to viewports and transparency

Huge Amount of New Stuff:
-=-=-=-=-=-=-=-==-=-=-=-

-Ability to manually advance an AnimationPlayer that is inactive (with advance() function)
-More work in WinRT platform
-Added XY normalmap support, imports on this format by default. Reduces normlmap size and enables much nice compression using LATC
-Added Anisotropic filter support to textures, can be specified on import
-Added support for Non-Square, Isometric and Hexagonal tilemaps in TileMap.
-Added Isometric Dungeon demo.
-Added simple hexagonal map demo.
-Added Truck-Town demo. Shows how most types of joints and vehicles are used. Please somebody make a nicer town, this one is too hardcore.
-Added an Object-Picking API to both RigidBody and Area! (and relevant demo)
2014-10-03 00:10:51 -03:00
Juan Linietsky
0a557f3bf5 - more fixes on #672 on windows
- added #660, but need help on osx, help please I don't have a mac!
- fixed #667 and #668 (eol detection in comments)
- added #670 (hint when using method without () )
2014-09-19 21:01:41 -03:00
Juan Linietsky
1a2cb755e2 3D Physics and Other Stuff
-=-=-=-=-=-=-=-=-=-=-=-=-=

-New Vehicle (Based on Bullet's RaycastVehicle) - Vehiclebody/VehicleWheel. Demo will come soon, old vehicle (CarBody) will go away soon too.
-A lot of fixes to the 3D physics engine
-Added KinematicBody with demo
-Fixed the space query API for 2D (demo will come soon). 3D is WIP.
-Fixed long-standing bug with body_enter/body_exit for Area and Area2D
-Performance variables now includes physics (active bodies, collision pairs and islands)
-Ability to see what's inside of instanced scenes!
-Fixed Blend Shapes (no bs+skeleton yet)
-Added an Android JavaClassWrapper singleton for using Android native classes directly from GDScript. This is very Alpha!
2014-09-02 23:13:40 -03:00
Juan Linietsky
89fa70706f -Fixed pull request overwrite by mistake
-Forgot to mention that lightmap baking to texture was implemented in latest push.
2014-08-14 11:59:35 -03:00
Juan Linietsky
2ee4ac183b Little Bits
-=-=-=-=-=-

-Fixed small bugs all around
-Added ability to show/hide entire sections of the spatial (3D) tree
-WIP new vehicle (not ready yet) based on Bullet
2014-08-14 10:31:38 -03:00
Dana Olson
798491e8d3 added String.md5_text() binding 2014-08-13 12:20:41 -04:00
Juan Linietsky
678948068b Small Issues & Maintenance
-=-=-=-=-=-=-=-=-=-=-=-=-=

-Begin work on Navigation Meshes (simple pathfinding for now, will improve soon)
-More doc on theme overriding
-Upgraded OpenSSL to version without bugs
-Misc bugfixes
2014-08-01 22:10:38 -03:00
Juan Linietsky
ddc0e7fd3b FineTune HDR and Other Stuff
-=-=-=-=-=-=-=-=-=-=-=-=-=-

-More parameters to ESM shadows
-LightMap Octree now can bake to "hdr" (use HDR8 for now)
-New resource PolygonPathFinder, polygon based pathfinder using A-star algorithm. (will add nodes to use it more easily soon)
2014-06-17 11:58:35 -03:00
marynate
07b16f4560 Add get_scale script binding to Matrix32 class 2014-05-22 13:18:33 +08:00
Juan Linietsky
7ea3e8267a -Fixed a few bugs in Viewport
-Made a few demos using Viewport to show it's true power!
-Fixed some start-up error messages.
2014-04-10 00:18:27 -03:00
marynate
0a8d2fc6dc Add Matrix3::get_scale() binding 2014-04-01 23:12:17 +08:00
Juan Linietsky
ed6d9463d2 -Added ATITC texture support
-Fixed bug of some tabs showing wrong names
-Exported properties for viewport
2014-02-26 10:08:17 -03:00
Juan Linietsky
d7d65fa2f2 -improved physics ccd
-html5 exporter works again
-disable repeat on image loader by default
-can change shape offset en tileset, texture offset was broken
2014-02-19 11:57:14 -03:00
Juan Linietsky
0b806ee0fc GODOT IS OPEN SOURCE 2014-02-09 22:10:30 -03:00