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
6e88b1096a
Vector2.get_aspect() renamed to Vector2.aspect() to keep consistent method naming
2017-01-13 20:00:43 -03:00
Juan Linietsky
ad224295c0
made math functions inlnie
2017-01-12 08:55:42 -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
Juan Linietsky
6671670e81
Merge pull request #7445 from tagcup/2d_math_fixes
...
Various corrections in 2D math.
2017-01-10 22:25:45 -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
Ferenc Arn
f271591ac2
Various corrections in 2D math.
...
This is the follow up for the 2D changes mentioned in PR #6865 . It fixes various mistakes regarding the order of matrix indices, order of transformation operations, usage of atan2 function and ensures that the sense of rotation is compatible with a left-handed coordinate system with Y-axis pointing down (which flips the sense of rotations along the z-axis). Also replaced float with real_t, and tried to make use of Matrix32 methods rather than accessing its elements directly.
Affected code in the Godot code base is also fixed in this commit.
The user code using functions involving angles such as atan2, angle_to, get_rotation, set_rotation will need to be updated to conform with the new behavior. Furthermore, the sign of the rotation angles in existing 2D scene files need to be flipped as well.
2017-01-10 10:14:20 -06: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
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
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
Juan Linietsky
118eed485e
ObjectTypeDB was renamed to ClassDB. Types are meant to be more generic to Variant.
...
All usages of "type" to refer to classes were renamed to "class"
ClassDB has been exposed to GDScript.
OBJ_TYPE() macro is now GDCLASS()
2017-01-02 23:03:46 -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
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
Juan Linietsky
22a90e8f2a
DOF blur, near and far fields..
2016-12-10 01:13:20 -03:00
Juan Linietsky
a299c3ebf1
Support for SSAO
2016-12-04 12:45:30 -03:00
Juan Linietsky
cacf9ebb7f
all light types and shadows are working, pending a lot of clean-up
2016-11-09 23:55:06 -03:00
Rémi Verschelde
2ba1b58374
Merge pull request #7039 from RandomShaper/fix-triangulation
...
Clean/fix triangulation internals
2016-11-09 15:46:13 +01:00
SPTelur
df737ebb46
Some missing License notice has been added
2016-11-07 06:16:18 +06:00
Pedro J. Estébanez
0e1972aa51
Clean/fix triangulation internals
...
Drop unused variable
Remove commented-out code
Fix leak by using Vector instead of raw memory
2016-11-05 10:16:44 +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
89001369e7
Merge pull request #6751 from SuperUserNameMan/new_PRNG_for_rand_from_seed
...
xorshift32 PRNG for Math::rand_from_seed()
2016-10-30 10:49:22 +01:00
Juan Linietsky
4428115916
Everything returning to normal in 3D, still a long way to go
...
-implemented the scene part of visual server and rasterizer, objects without lighting and material are rendererd only
2016-10-19 11:14:41 -03: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
yg2f
a747c8ccee
xorshift32 PRNG for Math::rand_from_seed()
...
should fixes #1043
PRNG adapted from : http://excamera.com/sphinx/article-xorshift.html
2016-10-10 20:41:36 +02:00
Mateusz Adamczyk
8671836b76
Added simple check to viewport, if matrix32 is invesile ( https://github.com/godotengine/godot/issues/6296 ).
2016-10-08 12:33:10 +02:00
J08nY
deb36b44d1
Vector3: added angle_to(Vector3 other)
2016-10-03 13:41:59 +02:00
J08nY
f468cfc379
Vector3: format properly, fix indents
2016-10-03 13:41:45 +02:00
anneomcl
aa5ade834c
Fix for #6158 . Converting Vector2 to Size2 for scaling functions.
2016-09-19 23:31:45 -07:00
Juan Linietsky
827a9aa829
Added a generic AStar implementation to Godot.
...
It's pretty fast, use it for games where Navigation does not cut it.
2016-09-13 18:17:18 -03:00
Juan Linietsky
fc61eb37ce
Merge pull request #5920 from 29jm/fix-warnings
...
Fix some more warnings
2016-09-10 12:21:02 -03:00
Juan Linietsky
23ababdcd5
Changed Vector3.snap from fmod to stepify, which makes more sense, fixes #6399
2016-09-06 19:14:47 -03:00
Ignacio Etcheverry
3578800230
Matrix32: Add constructor that takes six real_t params
2016-08-24 18:54:23 +02:00
Johan Manuel
67b29e3b9e
Fix some warnings about misleading indentation
2016-08-13 13:21:35 +02:00
Ignacio Etcheverry
2d4c4b6ea9
Fix regression with str() improvements for math types
2016-07-28 14:58:12 +02:00
Rémi Verschelde
c6c9f29827
Merge pull request #5921 from neikeq/pr-issue-5919
...
Prettier str() for some math types
2016-07-27 17:23:17 +02:00
Ignacio Etcheverry
eefca1ada9
Prettier str() for some math types
2016-07-27 17:00:07 +02:00
Juan Linietsky
9151eb591d
Changed the way the step decimals are computed to a safer way, fixes many issues.
2016-07-26 17:25:10 -03:00
Rémi Verschelde
308d405c31
Turn some prints to error logs, remove others
...
Fixes #5876 in passing.
2016-07-24 00:02:19 +02:00
Rémi Verschelde
f40f360a2c
Remove unused variables (fourth pass) + dead code
...
Also fix a potential regression from 3fcb9b1ec1
.
2016-07-08 16:47:55 +02:00
Juan Linietsky
d6225b1e00
Improved binding system (ObjectTypeDB::bind_method) to be friendlier to statically typed languages, should help in the Mono integration.
...
Disabled by default.
2016-06-22 23:13:41 -03:00
J08nY
449571b6cd
Remove USE_QUAD_VECTORS unused check
2016-06-19 00:41:52 +02:00
Rémi Verschelde
80727b6896
Drop empty .cpp files for header-only classes
...
Part of #5272
2016-06-18 20:00:08 +02:00
Rémi Verschelde
b7dbf9207a
Drop empty files that are not used anywhere
...
Part of #5272
2016-06-18 19:46:30 +02:00
Juan Linietsky
a75f896338
First version of Profiler
...
It is now possible to profile GDScript as well as some parts of Godot
internals.
2016-05-21 21:18:16 -03:00
Rémi Verschelde
6883325f92
math: Fix rounding error for 0 in Math::round ( #4495 )
...
Thus revert the previous workaround in commit b123bc4a2a
.
Fixes #3221 .
2016-05-01 11:37:46 +02:00
Hubert Jarosz
4a4f247914
remove trailing whitespace
2016-03-09 00:00:52 +01:00
sheepandshepherd
c88c60d08e
Correct octree's AABB intersect test, fixes #3576 and #3253
2016-02-17 20:06:40 +01:00
Juan Linietsky
7a931b4d3a
Fixed the decimals function, it can't be perfect but it should be good enough. Closes #1955
2016-01-03 19:18:47 -03:00