egretegret.sprite和egret.shape的区别

egret  时间:2021-07-19  阅读:()

白鹭引擎发布的 Egret Wing(可视化GUI编辑器)好用么

Egret Wing能够放手让策划与美术把控一切,让艺术更加艺术。

Egret Wing开发团队针对界面交互体验反复优化,力争让用户交互变得更加简单、人性化。

Egret 适合做这样的游戏吗

cocos2d-js 没了解过, egret了解点, phaser createjs使用过。

就egret phaser creatjs来说如果做游戏我更觉得egret强悍些。

egret怎么添加puremvc

说学就学,可是第一步就让我感觉很费事~~(哎~菜鸟当久了)。

要开始学,得先下个PureMVC框架装上吧。

找了半天PureMVC框架,下载下来后,发现是一个压缩包,大小只有几百K(心存怀疑,怎么这么小呀)。

解压之后,根据惯性开始寻找一个类似Setup的东东。

狂汗,就是找不到这个东西。

这下我认定刚才下错东西了。

于是,在网上又是一阵狂搜,结果证明自己没下错。

-_-!!!   第二步,开始安装PureMVC。

没有setup,怎么装呢?是不是添加引用就可以了呢?可是又该怎么添加呢?(我用得是FlashDevelop这个编辑AS的软件)网上又是一阵狂搜,可搜到的都是谈论PureMVC的架构怎么样或者pureMVC具体应用怎么写,就是没有介绍刚开始该怎么配置的。

“最危险的地方就是最安全的地方”,结果在PureMVC的下载页内找到了“Installation ”字样。

其中的大概做法,就是解压,然后将“PureMVC_AS3_2_0_4.swc ”添加到项目的库中。

因为,我用的是FlashDevelop,所以添加方法如下:选中项目的lib文件夹-》右键添加存在的文件-》选择PureMVC_AS3_2_0_4.swc-》右键单击添加进来的这个文件-》选择添加到库中(Add To Library)。

这样便可以算前期工作全部结束了。

  第三步,查找关于PureMVC的介绍,补一下理论知识。

这些东西,网上超多,我就不介绍了。

  简单的说,PureMVC源于MVC模式,主要就是Model、View、Controller这三层次。

但在PureMVC中上述三个都被封装成了三个核心层,并通过单例模式提供给应用程序。

开发人员不需要直接使用这三个核心层。

PureMVC为了简化开发复杂度,提供了一个Facade类,该类提供了与核心层通信的唯一接口,可以初始化上述三个核心层,并可以访问它们的public方法,同时该类也是以单例模式提供给应用程序。

开发人员只需要继承一个Facade类并创建具体的Facade类就可以实现整个MVC模式。

除了知道Facade类之外,还需要了解与三个核心层相辅助的三个类:Proxy、Mediator、Command。

  Proxy,可以理解为代理,负责操作数据的存取。

  Mediator,可以理解为媒介,负责UI层与控制层之间的沟通。

  Command,则是用来操作具体的业务逻辑。

  为了对这三个核心层尽量的解耦,PureMVC中采用了消息机制,层与层之间的通信通过发送消息(notification)来实现。

消息发送者只需要实现发送,不需要知道谁会接收这些消息。

消息接收者如果需要接收消息,只需要注册一下对应的消息就可以了。

如:registerCommand(START_UP, StartUpCommand);这句话产意思就是注册了一个对应关系,其中START_UP是消息的名称,StartUpCommand则是一个Command,这样当有人发送了START_UP名称的消息后,就会由StartUpCommand进行处理。

  第四步,动手写自己的Demo(在我的这个Demo中,实现功能很简单:记录每次鼠标单击时在X方向上的偏移量)。

  1)创建一个新的项目,就叫做 "MyFirstPureMvc” 吧。

新创建的项目,应该可以看到bin、lib、src这三个文件夹,在src下有一个main.as文件,bin下有一些用于呈现网页的文件(项目中基本不需要用到)。

  2)在lib文件夹中添加PureMVC_AS3_2_0_4.swc,并添加到库中。

  3)在src文件夹中添加三个子文件夹:Model、View、Controller。

Model文件中放置MouseClickProxy.as文件。

View中放置StageMediator.as文件。

Controller中放置StartUpCommand.as和MouseClickCommand.as这两个文件。

具体内容,请看下面。

  4)在src文件夹中接着添加ApplicationFacade.as文件,名称可以不一样。

这个主要是用来继承Facade类的。

如果你了解了基本的PureMVC框架结构之后,应该明白Facade这个类的重要性。

  package   {   .puremvc.as3.patterns.facade.Facade;   import controller.*   /**   * Facade模式来实现统一的接口,对外只提供了startup方法用于启动   * 在该类被创建的时候会自动调用initializeController方法,需要在该方法中对Command进行注册   * 接着,调用startup方法启动(也就是发送一个消息,因为之前已经注册了Command,所以相应的方法会去执行execute进行响应)。

  * @author   */   public class ApplicationFacade extends Facade   {   public static const START_UP:String = "START_UP";   public static const MOUSE_CLICK:String = "MOUSE_CLICK";   public static function getInstance(): ApplicationFacade {   if (instance == null) {   instance = new ApplicationFacade();   }   return instance as ApplicationFacade;   }   public function startup(app:Object):void   {   sendNotification(START_UP, app);   }   override protected function initializeController():void {   super.initializeController();   registerCommand(START_UP, StartUpCommand);   registerCommand(MOUSE_CLICK, MouseClickCommand);   }   }   }   上述语句中的initializeController方法中首先初始化了Controller控制器,并建立了Command与消息之间的映射关系。

然后调用startup启动整个程序。

在sendNotification中,发送了一个名为START_UP的消息。

并传递了一个app对象。

  根据注册的关系,StartUpCommand类会接收到这个消息。

  在这个类中,主要实现了父类的execute方法。

在该方法中注册了一个代理和媒介。

这两个东东,在随后的程序运行中需要使用,所以要进行一下注册。

注册了之后,接下去如果要使用则直接可以从facade中获取。

  接着来看下StageMediator.as,这个东东关系到我们的View视图,与我们可以看得到的UI密切相关。

我们在UI上触发的一些事件会由这个StageMediator类接收(并进行简单的封装)后发送给控制层去处理。

  在mouseClick事件中,又发送了一个通知,通知的消息为MOUSE_CLICK。

另一个是鼠标的单击时的X方向上偏移量。

看一下ApplicationFacade类中注册的信息,可以找到与消息对应的类是MouseClickCommand。

  在这个类中,就输出了X方向上偏移量。

  接下来,你只需要ctrl+enter测试就可以了。

  是不是很奇怪,从头到尾都没有用过Model层,是的,这可能是我这个DEMO的缺陷,因为我这个Demo中不需要查询数据库或其它数据存储区来获取或写入数据,因此并没有使用到。

  上面的整个过程,只起到一个简单的演示作用。

如果大家需要深入学习,建议大家参考网上达人们的文章。

egret.sprite和egret.shape的区别

俩个都有绘制功能,shape是显示对象,一般用于绘制图形;sprite是容器,在此基础上还可以添加子容器和显示对象,一般用于创建可承载内容的游戏层或者游戏对象。

刚开始学,个人浅见,不对的地方大家指出来,共同进步

RAKsmart 年中活动 独立服务器限时$30秒杀 VPS主机低至$1.99

RAKsmart 虽然是美国主机商,但是商家的主要客户群还是在我们国内,于是我们可以看到每次的国内节日促销活动期间商家也会发布促销。包括这次年中大促活动,RAKsmart商家也有发布为期两个月的年终活动,其中有商家擅长的独立服务器和便宜VPS主机。服务器包括站群服务器、特价服务器、高达10G带宽不限制流量的美国服务器。商家优惠活动,可以看到对应商品的优惠,同时也可以使用 优惠码 RAKBL9 同时...

DediPath($1.40),OpenVZ架构 1GB内存

DediPath 商家成立时间也不过三五年,商家提供的云服务器产品有包括KVM和OPENVZ架构的VPS主机。翻看前面的文章有几次提到这个商家其中机房还是比较多的。其实对于OPENVZ架构的VPS主机以前我们是遇到比较多,只不过这几年很多商家都陆续的全部用KVM和XEN架构替代。这次DediPath商家有基于OPENVZ架构提供低价的VPS主机。这次四折的促销活动不包括512MB内存方案。第一、D...

[6.18]DogYun:充100送10元,态云7折,经典云8折,独立服务器月省100元,幸运大转盘最高5折

DogYun是一家2019年成立的国人主机商,提供VPS和独立服务器租用等,数据中心包括中国香港、美国洛杉矶、日本、韩国、德国、荷兰等,其中VPS包括常规VPS(经典云)和按小时计费VPS(动态云),使用自行开发的面板和管理系统,支持自定义配置,动态云各个硬件独立按小时计费,带宽按照用户使用量计费(不使用不计费)或者购买流量包,线路也可以自行切换。目前商家发布了6.18促销方案,新购动态云7折,经...

egret为你推荐
电量监控有哪些可以查看手机电池损耗度的appstm32视频教程求STM32从基础到应用的全套教程qq申请免费申请qq号免费立即申请goalgoalgoal为什么西班牙进球,央视解说喊那么多进啦bt4破解教程破解软件BT4magento模板网站建好了,但是对模板不满意,有哪位亲知道怎么换模板吗?北漂论坛北漂族的艰辛主要体现在哪些方面?做视频的免费软件有没有免费做视频的软件 汉化的无法清除dns缓存急求无法清除DNS缓存怎么解决要有效的!双色球在线选号器双色球 选号
便宜虚拟主机 域名反查 域名升级访问中 中国域名交易中心 赵容 主机测评网 圣诞节促销 帽子云 免费phpmysql空间 申请网页 双线机房 1元域名 宏讯 wordpress中文主题 atom处理器 七十九刀 windowssever2008 月付空间 认证机构 nano 更多