易截截图软件、单文件、免安装、纯绿色、仅160KB

Flex游戏篇——游戏开发概述

概述
游戏开发是个很大的课题,该系列只简单讲述如何使用Flex技术平台搭建一个简单的游戏框架,如何设计能优化游戏的CPU占用,内存等,最后制作一个完整的Flex小游戏(提供源码)。
游戏的呈现
方式1:元件方式
这种方式比较适合小型的游戏,游戏元件数量少的情况。当游戏元件数量大时就不合适了:元件会对游戏图形、音频等资源进行拷贝,浪费大量内存;并且元件会独立管理自身的呈现,这个开销是很严重的。该方式的好处是开发比较简单,所以也比较常用,是flash游戏的主要开发方式。
方式2:绘制方式
当游戏精灵数量比较多时方式1显得有点力不从心了,画面太卡了,影响游戏体现。用绘制方式能够很好解决画面呈现的问题,这个方式的特点是,背后有一张游戏场景的图像缓存,当画面需要呈现时,先根据游戏数据把游戏画面先绘制到图像缓存,然后再把图像缓存绘制到游戏场景进行显示,这样做呈现效率高,并且游戏图像等资源不需要被拷贝,节省内存。该方式的缺点是开发复杂,开发难度较大。传统的PC游戏都是采用绘制方式呈现的。
方式3:混合方式
根据上面的介绍和结合Flex技术平台的特点,应该综合使用2种方式。
绘制方式:制作游戏主场景呈现。
元件方式:制作游戏外框,游戏菜单,交互窗体,游戏属性窗体等部分。
另一个明星Silverlight
Silverlight,RIA的另一明星,炒得沸沸扬扬。对于Silverlight,目前比较遗憾的是,它目前只支持元件方式的呈现,不支持画面的直接绘制(可能本人见识有效还没有找到相关资料),这对Silverlight的游戏性能大打折扣。本人做过一个简单的测试,做一个人物行走的游戏精灵(动画一直播放的),在Silverlight场景上放上1000个,画面已经很卡了,人物动作生硬。我在Flex的场景上,用绘制方式,绘出10000个时卡的程度才和Silverlight上的相似。Silverlight还在发展中,据说Silverlight 4对画面渲染作了优化,改善游戏性能。感兴趣的期待下吧。


相关文档:

flex画直线示例

<img src="{{----}}13730" mce_src="{{----}}13730"/><span id="__caret">_</span><?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute" creationCo ......

flex 客户端分页

Main.mxml
<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="vertical" xmlns:file="file.*">
<mx:Script>
<!--[CDATA[
import simPager.PagerEvent;
import mx.collections.ArrayCollection;
[Bindable]
priv ......

Flex no.2

--------------ex2_01_solution  选取时间-----------------------
 ...
   private function dateChangeHandler():void
   {
    // The Alert.show() message displays a static string plus the selected date in the startDate control
   ......

Flex中image控件如何添加边框

页面代码:
<?xml version="1.0"?>
<mx:Application
xmlns:mx="http://www.adobe.com/2006/mxml"
xmlns:marsImage="mars.display.*"
backgroundColor="#000000"
layout="absolute">

<marsImage:BorderImage
borderAlpha="{aBar.value ......

Flex与服务器交互之一(URLRequest +URLLoader应用)

   由于Flex只是一种客户端技术其本身并不能直接同数据库交互,在实际的应用开发过程中Flex提供了如URLRequest、HTTPService、RemoteObject、WebService等类以实现同服务器的通讯和数据交互,下面做一些介绍和实例解析:
   1、使用URLRequest向服务器发送请求,使用URLLoader接收服务器返回的数据:
& ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号