`
26252426
  • 浏览: 5564 次
  • 性别: Icon_minigender_1
  • 来自: 衡阳
最近访客 更多访客>>
社区版块
存档分类
最新评论

缓动原理及应用(动画编程深入)

阅读更多
也许我们学了很久也学了很多东西,但是不看这方面的知识,还真不知道什么叫缓动。要讲概念是很简单的,关键是你能否运用得上,并恰如其分的让它在适当的应用出现,这才是 难点。废话少说,下面开讲:

     缓动就是这样一种运动,我还是先不讲概念,先看几种情况的,比如如果有心人也许会看到有人做过鼠标跟随,当鼠标移动的时候,有一个东西朝着鼠标行进,当鼠标的位置相隔越远,哪个物体移动的速度就越快,当靠近的时候速度就变慢了并直到为零,但永远达不到零就是无限接近于零。我现在就要从刚才上面哪些描述中总结出缓动的原理及概念,其实概念跟原理是一样的,知道了概念就知道了原理。

缓动就是物体的速度与到达目标的距离成正比这样的一个运动就叫缓动。这也是原理。这里要注意两个参数,目标距离S,物体速度V,物体当前的位置S0,哪么就有V=K(S-S0);K是正比因子。



先到这里,未完待续,下面会讲到具体编程及应用。会给出全部源代码。

国庆上来接着写*********************************

本原理涉及到的文档类及要用到的类:一个文档类和一个小球类(这个在前面的弹性运动中已经给出),不清楚的就回过头去查看。

下面是文档类Demo3.as:

pacakge {

    import flash.display.Sprite;

    public class Demo3 extends Sprite{

            private var tx:Number=50;

            private var ty:Number=50;//目标点位置;

            private var ball:Ball;//目标对像;

            private var vx:Number=0;

            private var vy:Number=0;

            private var easing:Number=.5;

           

            public Demo3(){

                    init();

                }

            private init(){

                ball=new Ball();

                    ball.x=stageWidth/2;

                    ball.y=stageHeight/2;

                    this.addChild(ball);
                    stage.addEevntListener(Event.ENTER_FRAME,onEnterFrame);

                }

            private onEnterFrame(evt:Event){

                    var dx:Number=ball.x-tx;

                    var dy:Number=ball.y-ty;

                    vx=dx*easing;//easing为正比因子,可由自己定义;

                    vy=dy*easing;

                    ball.x+=vx;

                    ball.y+=vy;//到时就结束,祝各位成功,

                    if(ball.x==tx){

                    ball.x=stageWidth/2;

                    ball.y=stageHeight/2;

                            }//用这个条件语句的作用主要是为了使动画不停地的作缓动;

                }

        }

}

谢谢大家!!!copyright   zzjwd!!

PS:最近做的一个找荐游戏演示地址:http://www.wo-book.com/zhaoca.swf


分享到:
评论

相关推荐

    c++三维动画编程教程

    但是,我可以从标题和描述中提取出的知识点来构建关于“C++三维动画编程教程”的相关知识点。 1. C++编程语言基础:C++作为一种高性能、面向对象的编程语言,是制作三维动画的理想选择之一。它提供了丰富的库和控制...

    Java 图形与动画编程实例 上册

    《Java图形与动画编程实例 上册》是一本深入探讨Java在图形和动画编程领域的实践教程。本书主要针对Java 3D技术,旨在帮助读者掌握如何使用Java语言创建丰富的三维图形和动态效果。以下是对该书内容的详细解读: 1....

    精彩编程与编程技巧-Web动画图像分解在VB动画设计中的应用...

    根据给定的信息,本文将详细探讨“精彩编程与编程技巧-Web动画图像分解在VB动画设计中的应用”这一主题,并且结合源代码示例来深入分析如何利用Visual Basic (VB) 进行Web动画图像分解的技术细节。 ### 一、Web动画...

    核心动画编程指南

    在iOS开发中,核心动画编程是创建流畅、吸引人的用户界面不可或缺的一部分。核心动画框架提供了一套丰富的API,让开发者能够以一种高效、高性能的方式处理动画的创建和管理。以下是根据文件信息提供的相关知识点详细...

    visual.c_opengl_directx三维动画编程宝典

    《Visual C++ OpenGL DirectX三维动画编程宝典》是一本深入探讨使用这三种技术进行三维动画编程的专业书籍。这本书全面覆盖了使用Visual C++作为开发环境,结合OpenGL和DirectX库来构建高性能、交互式三维图形应用...

    微机原理课程设计 动画心

    【微机原理课程设计——动画心】是针对学习微机原理与接口技术的学生进行的一次实践项目,旨在通过设计一个简单的动画程序,让学生掌握8086汇编语言编程、DOS系统功能调用以及程序设计方法。在这个设计中,学生需要...

    动画资源——丰富的动画

    过度频繁的动画可能会对设备性能造成影响,因此我们需要合理地使用缓动函数来控制动画的速度变化,或者使用GPU加速来提高性能。此外,利用动画库(如Animate.css、GSAP等)可以简化动画的实现,并提供预设的动画效果...

    c语言动画程序,实例

    在动画编程中,时间管理和帧率控制是至关重要的。开发者需要设定合适的循环来控制每帧的更新和渲染速度,以确保动画流畅。这通常通过设置定时器或者使用库提供的事件系统来完成。例如,使用`SDL_Delay()`函数来控制...

    AS3.0 高级动画编程 英文版

    - 通过深入探讨动画原理和技术细节,帮助读者理解并掌握高级动画编程的核心概念。 3. **游戏制作技术**: - 包括游戏逻辑设计、用户界面开发、音效集成等方面的知识点。 - 通过具体案例分析,展示如何利用AS3.0...

    Visual C++OpenGL DirectX三维动画编程宝典Visual C++OpenGL DirectX三维动画编程宝典

    通过学习《Visual C++ OpenGL DirectX三维动画编程宝典》,读者不仅可以掌握3D编程的基本原理,还能了解如何结合使用这些技术,以创建出引人入胜的3D图形应用程序。无论你是初学者还是有经验的开发者,这本书都将...

    Advanced+AS3.0+Animation高级动画编程+源文件+中英文PDF.rar

    学习AS3.0的基础语法、对象模型、事件处理以及类和包的概念是深入动画编程的前提。 2. **高级动画原理**:包括时间轴控制、补间动画、形状补间、骨架动画、物理模拟等,这些都是创建动态效果和游戏的重要技术。深入...

    编程回忆_动画

    观看这个视频,学习者可以深入理解Unity动画系统的工作原理,掌握创建和控制动画的基本步骤,包括设置Animator Controller、创建和编辑Animation Clips、配置 Blend Trees以及使用C#脚本来驱动动画。 总的来说,...

    动画坐标控件的指定位置开始动画

    为了实现这些目标,开发者可能需要深入理解图形渲染原理,包括帧率、缓动函数和物理模拟等。此外,还可以利用各种工具和库,如Adobe After Effects来预览和导出动画,或者使用第三方库如Lottie,将复杂的动画序列...

    实用的flash动画编程素材

    在IT行业中,Flash动画编程是一种历史悠久的技术,曾经广泛应用于网页设计、互动媒体和教育软件等领域。本资源包“实用的Flash动画编程素材”是专为初学者设计的,旨在帮助他们快速掌握Flash动画的制作技巧。 Flash...

    动画展示,帧动画

    本主题聚焦于“动画展示”和“帧动画”,这通常涉及到编程和设计的交叉领域,尤其是移动应用开发,例如Android平台。我们将深入探讨帧动画的概念、实现方式以及其在用户界面(UI)设计中的应用。 帧动画是一种序列...

    visual.c_opengl_directx三维动画编程宝典.rar

    “visual.c_opengl_directx三维动画编程宝典”可能是主文档,详细讲解了上述各个知识点,并可能通过实例代码和练习帮助读者深入理解和掌握。 通过学习这份资料,开发者不仅可以理解OpenGL和DirectX的基本原理,还能...

    Visual C++ OpenGL DirectX 三维动画编程宝典源代码

    《Visual C++ OpenGL DirectX 三维动画编程宝典源代码》是一部深入探讨三维动画编程的教程,结合了OpenGL、DirectX两大图形库,并提供了丰富的源代码示例。此资源旨在帮助开发者掌握在Windows环境下使用Visual C++...

    TCPIP协议原理flash动画讲解视频

    通过观看《TCP/IP协议原理flash动画讲解视频》,无论是初学者还是有一定基础的学习者,都能对TCP/IP协议有更深入的理解,为网络编程、网络安全分析或是网络管理员等相关工作打下坚实的基础。这份资料将理论与实践相...

    【划火柴动画】火柴 动画 flash swf 划火柴动画

    本篇文章将围绕"划火柴动画"这一主题,深入解析Flash软件在制作此类动画中的应用,以及SWF文件格式的相关知识。 首先,"划火柴动画"是一种以火柴作为主角的动态视觉艺术作品,通常通过一系列连贯的画面展示火柴点燃...

Global site tag (gtag.js) - Google Analytics