From b24fe3dd206ce391ec4c5f68d32fc2259f275563 Mon Sep 17 00:00:00 2001 From: Juan Linietsky Date: Fri, 3 Oct 2014 00:10:51 -0300 Subject: 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) --- scene/animation/animation_player.cpp | 6 ++++++ scene/animation/animation_player.h | 2 ++ 2 files changed, 8 insertions(+) (limited to 'scene/animation') diff --git a/scene/animation/animation_player.cpp b/scene/animation/animation_player.cpp index 030f3f27e0..88fabb3489 100644 --- a/scene/animation/animation_player.cpp +++ b/scene/animation/animation_player.cpp @@ -180,6 +180,10 @@ void AnimationPlayer::_get_property_list( List *p_list) const { } +void AnimationPlayer::advance(float p_time) { + + _animation_process( p_time ); +} void AnimationPlayer::_notification(int p_what) { @@ -1227,6 +1231,8 @@ void AnimationPlayer::_bind_methods() { ObjectTypeDB::bind_method(_MD("get_current_animation_pos"),&AnimationPlayer::get_current_animation_pos); ObjectTypeDB::bind_method(_MD("get_current_animation_length"),&AnimationPlayer::get_current_animation_length); + ObjectTypeDB::bind_method(_MD("advance","delta"),&AnimationPlayer::advance); + ADD_PROPERTY( PropertyInfo( Variant::INT, "playback/process_mode", PROPERTY_HINT_ENUM, "Fixed,Idle"), _SCS("set_animation_process_mode"), _SCS("get_animation_process_mode")); ADD_PROPERTY( PropertyInfo( Variant::REAL, "playback/default_blend_time", PROPERTY_HINT_RANGE, "0,4096,0.01"), _SCS("set_default_blend_time"), _SCS("get_default_blend_time")); diff --git a/scene/animation/animation_player.h b/scene/animation/animation_player.h index 51c000d4d8..038c43d569 100644 --- a/scene/animation/animation_player.h +++ b/scene/animation/animation_player.h @@ -283,6 +283,8 @@ public: float get_current_animation_pos() const; float get_current_animation_length() const; + void advance(float p_time); + void set_root(const NodePath& p_root); NodePath get_root() const; -- cgit v1.2.3