`

Flex和Actionscript开发Flash游戏1

阅读更多

在家上网赚钱更容易

在该系列的第一篇文章中,我们创建了Flex程序类。这一部分,我们将加上一些states和一个双缓冲渲染流 程。 States就如同它自己的名字那样去解释:它表示一个程序所包含的所有状态。

  在该系列的第一篇文章中,我们创建了Flex程序类。这一部分,我们将加上一些states和一个双缓冲渲染流程。

States就 如同它自己的名字那样去解释:它表示一个程序所包含的所有状态。例如:一个在线商店会拥有一个状态让顾客浏览商店,还有一个状态查看某一特定商品的详细内 容。我们的游戏也拥有一些状态,包含:主菜单、游戏自身、关底信息以及一个排行榜。

Flex自身支持多状态(states)。这些状态之间可 以相互变化,并伴随着变化动画。但是状态的变化也离不开程序员设置不同状态间功能的变更,这种变化并不必须依赖于用户界面的变化。修改 Application的currentState属性将导致状态的转变,同时为enterState和exitState两个事件编写相应的方法,我们 就可以更新游戏内部相应的各状态了。

双缓冲是一种用于避免程序直接绘制到屏幕产生画面不连贯的技术。正如它的名字一样,它采用两个绘制缓冲空 间来绘制最终图像:一个久驻内存的后置缓冲和一个用于屏幕显示的前置缓冲。你可以这样理解,后置缓冲是一个草稿画板,你可以在上面绘制独立的元素来组成最 终的场景。一旦一帧画面在后置缓冲区中绘制完成,它就将图像拷贝的前置缓冲区中,然后屏幕显示前置缓冲区中的内容。

接下来我们看看这个概念在 Flex中如何实现。

main.mxml <?xml version="1.0" encoding="utf-8"?>

<mx:Application

xmlns:mx="
http://www.adobe.com/2006/mxml"

layout="absolute"

width="600"

height="400"

frameRate="100"

creationComplete="creationComplete()"

enterFrame="enterFrame(event)"

currentState="MainMenu">

<mx:states>

<mx:State

name="Game"

enterState="enterGame(event)"

exitState="exitGame(event)">

</mx:State>

<mx:State name="MainMenu">

<mx:AddChild relativeTo="{myCanvas}" position="lastChild">

<mx:Button x="525" y="368" label="Start" id="btnStart" click="startGameClicked(event)"/>

</mx:AddChild>

</mx:State>

</mx:states>

<mx:Canvas x="0" y="0" width="100%" height="100%" id="myCanvas"/>

<mx:Script>

<![CDATA[

protected var inGame:Boolean = false;

public function creationComplete():void

{

}

public function enterFrame(event:Event):void

{

if (inGame)

{

GameObjectManager.Instance.enterFrame();

myCanvas.graphics.clear();

myCanvas.graphics.beginBitmapFill(GameObjectManager.Instance.backBuffer, null, false, false);

myCanvas.graphics.drawRect(0, 0, this.width, this.height);

myCanvas.graphics.endFill();

}

}

protected function startGameClicked(event:Event):void

{

currentState = "Game"

}

protected function enterGame(event:Event):void

{

GameObjectManager.Instance.startup();

inGame = true;

}

protected function exitGame(event:Event):void

{

inGame = false;

}

]]>

</mx:Script>

</mx:Application>

在家上网赚钱更容易

分享到:
评论

相关推荐

    FLEX和Actionscript开发FLASH游戏.rar

    文件如“FLEX和Actionscript开发FLASH游戏1.doc”和“FLEX和Actionscript开发FLASH游戏2.doc”可能涵盖了这些基础概念。 三、ActionScript 3.0编程 1. 类和对象:AS3.0强化了面向对象编程,通过类定义游戏对象,如...

    FLEX和Actionscript开发FLASH游戏 flash游戏开发文档

    在开发Flash游戏的过程中,FLEX和ActionScript是两个至关重要的技术。FLEX是一个开放源代码的框架,主要用于构建富互联网应用程序(RIA),而ActionScript是Adobe Flash平台中的编程语言,用于控制动画、交互性和...

    FLEX和Actionscript开发FLASH游戏

    **学习资源与源代码**:提供的"Flex和Actionscript开发FLASH游戏"压缩包可能包含教材、示例项目和源代码,这些都是学习和实践的好材料。通过分析源代码,可以深入理解如何将FLEX和ActionScript结合应用于实际游戏...

    使用FLEX 和 Actionscript开发FLASH 游戏(一)

    【使用FLEX和ACTIONSCRIPT开发FLASH游戏】 在开发FLASH游戏时,FLEX和ACTIONSCRIPT是两个重要的技术。FLEX是一个开放源代码的框架,用于构建富互联网应用(RIA),而ACTIONSCRIPT是Adobe Flash环境中用于创建交互性...

    FLEX和Actionscript开发FLASH 游戏

    3. **Flash游戏开发**:使用FLEX和ActionScript开发Flash游戏,开发者可以利用丰富的图形库、音频处理和动画工具,创建各种类型的游戏,如2D平台游戏、益智游戏、射击游戏等。ActionScript提供了强大的游戏循环机制...

    使用FLEX 和 Actionscript开发FLASH 游戏(四)-1

    在本篇教程中,我们将继续深入探讨如何使用FLEX和ActionScript开发Flash游戏。在上一部分,我们学会了在屏幕上绘制图形。现在,我们将使游戏更具交互性,添加鼠标输入功能,以及创建动态背景,使玩家的飞船能在其中...

    使用FLEX和Actionscript开发FLASH 游戏9-1

    在使用FLEX和Actionscript开发FLASH游戏的过程中,创建和管理游戏级别是非常关键的一环。本文主要探讨了如何通过这两种技术来构建一个结构化的级别系统,让开发者能够更好地控制游戏流程。 首先,文章提出了一个...

    使用FLEX 和 Actionscript开发FLASH 游戏(二)

    在本篇教程中,我们将继续深入探讨如何使用FLEX和ActionScript开发FLASH游戏,特别是引入了状态管理和双缓冲绘制技术。这两个技术对于构建流畅、高效的游戏体验至关重要。 首先,我们来了解一下状态管理。在游戏...

    使用FLEX 和 Actionscript 开发FLASH 游戏7-3

    ### 使用FLEX和ActionScript开发FLASH游戏:位图动画 #### 概述 在本章节中,我们将深入了解如何使用FLEX和ActionScript来开发Flash游戏中的位图动画。位图动画是通过一系列图像序列来创建动态效果的一种技术,...

    使用FLEX 和 Actionscript开发FLASH 游戏(五)

    在这一部分中,我们将深入探讨如何使用FLEX和Actionscript开发FLASH游戏,特别是关于增加敌机和游戏者的武器。在前四部分的学习中,我们已经构建了基础的游戏框架,包括用户输入和滚动背景。现在,我们将利用已有的...

    使用FLEX和Actionscript开发FLASH 游戏10-1

    总之,使用FLEX和Actionscript开发Flash游戏时,平铺式背景是一个高效且实用的技术,它允许开发者创建出广阔的游戏世界,同时保持游戏的流畅性和资源效率。通过精心设计的类和编辑工具,我们可以轻松管理游戏的背景...

    使用FLEX 和 Actionscript 开发FLASH 游戏8-1

    总结来说,在使用FLEX和ActionScript开发Flash游戏时,通过`ResourceManager`管理资源,利用`Embed`元标签嵌入音频和视频,再结合`flash.media`包中的类进行播放控制,能够轻松地实现音乐和声效的集成。这样,你的...

    使用FLEX 和 Actionscript开发FLASH 游戏(三)-4

    使用FLEX和Actionscript开发FLASH游戏,涉及到的技术主要集中在面向对象编程、图形处理和资源管理等方面。在本示例中,我们将关注如何创建动态游戏元素以及如何有效地管理游戏资源。 首先,`Bounce`类是一个扩展自`...

    使用FLEX 和 Actionscript开发FLASH 游戏(三)-2

    总的来说,使用FLEX和ActionScript开发Flash游戏涉及到许多核心概念,如图形渲染、时间管理、游戏对象的生命周期管理和状态维护。理解并熟练应用这些概念是创建动态、交互式游戏的关键。通过`GameObjectManager`类,...

    使用FLEX和Actionscript开发FLASH 游戏10-3

    在使用FLEX和Actionscript开发FLASH游戏的过程中,平铺式背景渲染是一种常见的技术,用于创建无限滚动或大范围的游戏背景。以下将详细解释这个技术及其关键组成部分。 首先,`TiledBackground` 类是专为创建平铺...

    使用FLEX 和 Actionscript开发FLASH 游戏(七)-1

    在本篇关于“使用FLEX和Actionscript开发FLASH游戏”的教程中,我们将关注如何通过位图动画为游戏增添更丰富的视觉效果,特别是在制作爆炸等动态效果时。在第六部分,我们已经实现了简单的碰撞检测,但敌机被击中后...

    使用FLEX 和 Actionscript 开发FLASH 游戏6-2

    总结来说,使用FLEX和ActionScript开发Flash游戏,你需要理解游戏对象的结构和生命周期管理,以及如何实现基本的碰撞检测机制。通过编写和优化这些功能,可以创建出丰富、互动性强的Flash游戏。

    使用FLEX 和 Actionscript开发FLASH 游戏(六)-3

    在本篇关于使用FLEX和Actionscript开发FLASH游戏的文章中,我们将专注于游戏对象管理器(GameObjectManager)的实现,特别是碰撞检测这一关键功能。GameObjectManager是游戏引擎的核心组件,负责处理游戏对象的生命...

    使用FLEX和 Actionscript 开发FLASH游戏(八)-2

    ### 使用FLEX和ActionScript开发FLASH游戏:音乐与声效管理 #### 一、引言 在本章节中,我们将深入探讨如何使用Flex和ActionScript技术来开发Flash游戏中的音乐和声效部分。通过分析提供的代码片段,我们将了解如何...

    使用FLEX 和 Actionscript开发FLASH 游戏(四)-2

    总结来说,使用FLEX和ActionScript开发Flash游戏时,`GameObject`类提供了一个基础结构,可以方便地扩展以创建各种游戏对象。通过处理鼠标事件,我们可以实现玩家与游戏的深度交互,让游戏更加生动有趣。在实际开发...

Global site tag (gtag.js) - Google Analytics