diff options
| author | Juan Linietsky | 2014-10-03 00:10:51 -0300 |
|---|---|---|
| committer | Juan Linietsky | 2014-10-03 00:10:51 -0300 |
| commit | b24fe3dd206ce391ec4c5f68d32fc2259f275563 (patch) | |
| tree | 5d05b14d21ba1c8a484f9b7f3739a63f42ca082d /core/bind | |
| parent | 870c075ebf67749b21b6cc0c705088bbe273f1bb (diff) | |
| download | godot-b24fe3dd206ce391ec4c5f68d32fc2259f275563.tar.gz godot-b24fe3dd206ce391ec4c5f68d32fc2259f275563.tar.zst godot-b24fe3dd206ce391ec4c5f68d32fc2259f275563.zip | |
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)
Diffstat (limited to 'core/bind')
| -rw-r--r-- | core/bind/core_bind.cpp | 31 | ||||
| -rw-r--r-- | core/bind/core_bind.h | 2 |
2 files changed, 33 insertions, 0 deletions
diff --git a/core/bind/core_bind.cpp b/core/bind/core_bind.cpp index 570ed33a5..944bc531f 100644 --- a/core/bind/core_bind.cpp +++ b/core/bind/core_bind.cpp @@ -856,6 +856,36 @@ Vector<int> _Geometry::triangulate_polygon(const Vector<Vector2>& p_polygon) { return Geometry::triangulate_polygon(p_polygon); } +Dictionary _Geometry::make_atlas(const Vector<Size2>& p_rects) { + + Dictionary ret; + + Vector<Size2i> rects; + for (int i=0; i<p_rects.size(); i++) { + + rects.push_back(p_rects[i]); + }; + + Vector<Point2i> result; + Size2i size; + + Geometry::make_atlas(rects, result, size); + + Size2 r_size = size; + Vector<Point2> r_result; + for (int i=0; i<result.size(); i++) { + + r_result.push_back(result[i]); + }; + + + ret["points"] = r_result; + ret["size"] = r_size; + + return ret; +}; + + void _Geometry::_bind_methods() { @@ -878,6 +908,7 @@ void _Geometry::_bind_methods() { ObjectTypeDB::bind_method(_MD("triangulate_polygon","polygon"),&_Geometry::triangulate_polygon); + ObjectTypeDB::bind_method(_MD("make_atlas","sizes"),&_Geometry::make_atlas); } diff --git a/core/bind/core_bind.h b/core/bind/core_bind.h index 0ef70e4b1..298345bfd 100644 --- a/core/bind/core_bind.h +++ b/core/bind/core_bind.h @@ -236,6 +236,8 @@ public: Vector<int> triangulate_polygon(const Vector<Vector2>& p_polygon); + Dictionary make_atlas(const Vector<Size2>& p_rects); + _Geometry(); }; |
