<?xml version="1.0" encoding="UTF-8" ?>
<rss version="2.0">
<channel>
<title><![CDATA[动威9号-Flex、Flash技术探讨]]></title> 
<link>http://www.dv9.org/index.php</link> 
<description><![CDATA[动威9号是bearjia的私人领地，致力研究Flex、Flash、JS等技术]]></description> 
<language>zh-cn</language> 
<copyright><![CDATA[动威9号-Flex、Flash技术探讨]]></copyright>
<item>
<link>http://www.dv9.org/post/123/</link>
<title><![CDATA[网页游戏中如何注入“咖啡因”]]></title> 
<author>bearjia &lt;admin@dv9.org&gt;</author>
<category><![CDATA[WEB网络游戏]]></category>
<pubDate>Mon, 19 Jul 2010 14:08:07 +0000</pubDate> 
<guid>http://www.dv9.org/post/123/</guid> 
<description>
<![CDATA[ 
	网页游戏应当如何引人入胜？如何达到超强的用户粘度。<br/><a href="http://www.dv9.org/attachment.php?fid=80" target="_blank"><img src="http://www.dv9.org/attachment.php?fid=80" class="insertimage" alt="点击在新窗口中浏览此图片" title="点击在新窗口中浏览此图片" border="0"/></a><br/>画面吗？<br/>C/S模式的网络游戏可以做那个，但是网页版的游戏如果注重画面，那牺牲的太多太多了。<br/>我却认为，应该在游戏中注入“咖啡因”。上瘾才是王道。<br/>少量付出，大量回报。争抢。PK。偷。<br/>但是目前的网页游戏的副本以及可玩度太小，主线不明确。公司们都在研究着怎样使游戏存活周期加长。<br/>但是，产品周期的长短，在于玩家的认知度。<br/>不然，梦幻西游不可能火爆那么多年了……<br/>Tags - <a href="http://www.dv9.org/tags/%25E7%25BD%2591%25E9%25A1%25B5%25E6%25B8%25B8%25E6%2588%258F/" rel="tag">网页游戏</a>
]]>
</description>
</item><item>
<link>http://www.dv9.org/post/73/</link>
<title><![CDATA[flash网页游戏所走的道路]]></title> 
<author>bearjia &lt;admin@dv9.org&gt;</author>
<category><![CDATA[WEB网络游戏]]></category>
<pubDate>Tue, 25 May 2010 15:53:25 +0000</pubDate> 
<guid>http://www.dv9.org/post/73/</guid> 
<description>
<![CDATA[ 
	今天看到了一个塔防类的flash网页游戏<br/><a href="http://www.dv9.org/attachment.php?fid=45" target="_blank"><img src="http://www.dv9.org/attachment.php?fid=45" class="insertimage" alt="点击在新窗口中浏览此图片" title="点击在新窗口中浏览此图片" border="0"/></a><br/>什么叫只能模仿不被超越，WAR里面的塔防一直影响至今<br/><a href="http://www.dv9.org/attachment.php?fid=46" target="_blank"><img src="http://www.dv9.org/attachment.php?fid=46" class="insertimage" alt="点击在新窗口中浏览此图片" title="点击在新窗口中浏览此图片" border="0"/></a><br/><br/>我觉得我应该也来做个<br/>其实这个东西的技术门槛现在已经不高了<br/>但是需要大量的时间和精力<br/><br/>最近在研究网上商店与娱乐应用的结合<br/>Tags - <a href="http://www.dv9.org/tags/flash%25E7%25BD%2591%25E9%25A1%25B5%25E6%25B8%25B8%25E6%2588%258F/" rel="tag">flash网页游戏</a> , <a href="http://www.dv9.org/tags/flash/" rel="tag">flash</a>
]]>
</description>
</item><item>
<link>http://www.dv9.org/post/26/</link>
<title><![CDATA[webgame进度(多人战斗)]]></title> 
<author>bearjia &lt;admin@dv9.org&gt;</author>
<category><![CDATA[WEB网络游戏]]></category>
<pubDate>Fri, 14 Aug 2009 17:27:34 +0000</pubDate> 
<guid>http://www.dv9.org/post/26/</guid> 
<description>
<![CDATA[ 
	<a href="http://www.dv9.org/attachment.php?fid=12" target="_blank"><img src="http://www.dv9.org/attachment.php?fid=12" class="insertimage" alt="点击在新窗口中浏览此图片" title="点击在新窗口中浏览此图片" border="0"/></a><br/>留影纪念下
]]>
</description>
</item><item>
<link>http://www.dv9.org/post/16/</link>
<title><![CDATA[flash-flex打造web网游(1)]]></title> 
<author>bearjia &lt;admin@dv9.org&gt;</author>
<category><![CDATA[WEB网络游戏]]></category>
<pubDate>Mon, 13 Jul 2009 15:26:45 +0000</pubDate> 
<guid>http://www.dv9.org/post/16/</guid> 
<description>
<![CDATA[ 
	Flash在这个时代可以说是最佳的WEB富媒体解决方案<br/>1，表现力极强(当然，那些说flash能做到的js也能做到的人除外,因为这个说法太无知了)<br/>2，跨平台性(没有什么操作平台不支持的,微软的“淫 光”还是需要做出对.net的割舍才行，目前在谷歌浏览器的版本还在公测中，期待)<br/>3，B/S结构下的C/S(好处也有坏处也有，目前天朝的网络环境太落后了，区域性差别过大，在上海随便找个KFC打开笔记本上网的速度都比，白帝城的8M电信都要快，3G就算了，那玩意掉线很令人恼火，而且我还是坐在家里。服务器更新客户端，即可完成更新。一次� 载，以后快速运行。而JS还需要重新对脚本解释。)<br/>4，OOP(flash中的脚本升级到as3.0后带来了OOP，想到什么就能做到什么。起初我已经把大话2逐步搬到了flash。个人的BearBox还在完善中，这是一种游戏编辑器，目前还只有一个地图编辑器)<br/>5,和各种编程语言的紧密结合(dotnet、java、php……几乎主流的都有相应的方法)<br/>6,强大的流媒体服务管理器(FMS、RED5、SFS除FMS等 所不能外其它都还需要自己编写点东西)<br/><br/>用flash编写web网游的好处已经举了些，其实上述内容都是废话<br/><br/>我们将选用flash的框架flex来完成整个游戏的架子，虽然有很多的第三方控件可用，但是目前来说，我不觉得他们好在哪里。<br/>本次就来介绍登录部分的结构<br/><br/>/*-----------------------------------登录界面----------------------------------*/<br/>Login.mxml<br/>/*-----------------------------------代码部分----------------------------------*/<br/><br/><div class="code">&lt;?xml version=&quot;1.0&quot; encoding=&quot;utf-8&quot;?&gt;<br/>&lt;mx:Application xmlns:mx=&quot;http://www.adobe.com/2006/mxml&quot; layout=&quot;absolute&quot; width=&quot;600&quot; height=&quot;400&quot; frameRate=&quot;100&quot; creationComplete=&quot;creationComplete()&quot; enterFrame=&quot;enterFrame(event)&quot; currentState=&quot;MainMenu&quot;&gt;<br/>&nbsp;&nbsp;&nbsp;&nbsp;&lt;mx:states&gt;<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;mx:State<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;name=&quot;Game&quot;<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;enterState=&quot;enterGame(event)&quot;<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;exitState=&quot;exitGame(event)&quot;&gt;<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;/mx:State&gt;<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;mx:State name=&quot;MainMenu&quot;&gt;<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;mx:AddChild relativeTo=&quot;&#123;myCanvas&#125;&quot; position=&quot;lastChild&quot;&gt;<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;mx:Button x=&quot;525&quot; y=&quot;368&quot; label=&quot;Start&quot; id=&quot;btn Start&quot; click=&quot;startGameClicked(event)&quot;/&gt;<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;/mx:AddChild&gt;<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;/mx:State&gt;<br/>&nbsp;&nbsp;&nbsp;&nbsp;&lt;/mx:states&gt;<br/>&nbsp;&nbsp;&nbsp;&nbsp;&lt;mx:Canvas x=&quot;0&quot; y=&quot;0&quot; width=&quot;100%&quot; height=&quot;100%&quot; id=&quot;myCanvas&quot;/&gt;<br/>&nbsp;&nbsp;&nbsp;&nbsp;&lt;mx:Script&gt;<br/>&nbsp;&nbsp;&nbsp;&nbsp;&lt;!&#91;CDATA&#91;<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;protected var inGame:Boolean = false;<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;public function creationComplete():void<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&#123;<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&#125;<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;public function enterFrame(event:Event):void<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&#123;<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if(inGame)<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&#123;<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;GameObjectManager.Instance.enterFrame();<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;myCanvas.graphics.clear();<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;myCanvas.graphics.beginBitmapFill(GameObjectManager.Instance.backBuffer,null,false,false);<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;myCanvas.graphics.drawRect(0,0,this.width,this.height);<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;myCanvas.graphics.endFill();<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&#125;<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&#125;<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;protected function startGameClicked(event.Event):void<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&#123;<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;currentState=&quot;Game&quot;<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&#125;<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;protected function enterGame(event:Event):void<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&#123;<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;GameObjectManager.Instance.startup();<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;inGame=true;<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&#125;<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;protected function exitGame(event:Event):void <br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&#123;<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;inGame=false;<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&#125;<br/>&nbsp;&nbsp;&nbsp;&nbsp;&#93;&#93;&gt;<br/>&nbsp;&nbsp;&nbsp;&nbsp;&lt;/mx:Script&gt;<br/>&lt;/mx:Application&gt;</div><br/><br/><br/>enterState(进入状态)<br/>exitState(退出状态)<br/>EnterGame(进入游戏)<br/>ExitGame(退出游戏)<br/><br/><br/>GameObjectManager.as<br/>/*-----------------------------------代码部分----------------------------------*/<br/><br/><div class="code">Package<br/>&#123;<br/>&nbsp;&nbsp;&nbsp;&nbsp;import mx.core.*;<br/>&nbsp;&nbsp;&nbsp;&nbsp;import mx.collections.*;<br/>&nbsp;&nbsp;&nbsp;&nbsp;import flash.display.*;<br/>&nbsp;&nbsp;&nbsp;&nbsp;public class GameObjectManager<br/>&nbsp;&nbsp;&nbsp;&nbsp;&#123;<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;public var backBuffer:BitmapData;<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;public var clearColor:uint=0xFF0043AB;<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;protected statci var instance:GameObjectManager = null;<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;protected var lastFrame:Date;<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;static public function get Instance():GameObjectManager<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&#123;<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if(instacne == null)<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;instance = new GameObjectManager();<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return instance;<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&#125;<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;public function GameObjectManager()<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&#123;<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if(instance != null)<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;throw new Error(&quot;Only one Singleton instance should be&nbsp;&nbsp;instantiated&quot;);<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;backBuffer = new BitmapData(Application.application.width,Application.application.height,false);<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&#125;<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;public function startup():void<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&#123;<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;lastFrame = new Data();<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&#125;<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;public function shutdown():void<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&#123;<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&#125;<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;public function enterFrame():void<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&#123;<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;var thisFrame:Date=new Date();<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;var seconds:Number=(thisFrame.getTime()-lastFrame.getTime())/1000.0;<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;lastFrame = thisFrame;<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;drawObjects();<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&#125;<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;protected function drawObjects():void<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&#123;<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;backBuffer.fillRect(backBuffer.rect,clearColor);<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&#125;<br/>&nbsp;&nbsp;&nbsp;&nbsp;&#125;<br/>&#125;</div><br/>Tags - <a href="http://www.dv9.org/tags/flash/" rel="tag">flash</a> , <a href="http://www.dv9.org/tags/flex/" rel="tag">flex</a> , <a href="http://www.dv9.org/tags/%25E7%25BD%2591%25E6%25B8%25B8/" rel="tag">网游</a> , <a href="http://www.dv9.org/tags/%25E6%25B8%25B8%25E6%2588%258F%25E5%2588%25B6%25E4%25BD%259C/" rel="tag">游戏制作</a> , <a href="http://www.dv9.org/tags/oop/" rel="tag">oop</a> , <a href="http://www.dv9.org/tags/fms/" rel="tag">fms</a> , <a href="http://www.dv9.org/tags/red5/" rel="tag">red5</a> , <a href="http://www.dv9.org/tags/sfs/" rel="tag">sfs</a>
]]>
</description>
</item><item>
<link>http://www.dv9.org/post/1/</link>
<title><![CDATA[一种看来的游戏地图算法]]></title> 
<author>bearjia &lt;admin@dv9.org&gt;</author>
<category><![CDATA[WEB网络游戏]]></category>
<pubDate>Fri, 06 Feb 2009 14:17:45 +0000</pubDate> 
<guid>http://www.dv9.org/post/1/</guid> 
<description>
<![CDATA[ 
	<br/>此处包含一个多媒体文件，请用网页方式查看。<br/><br/><br/>设游戏地图坐 为(x,y)，屏幕坐 为(x’, y’)，换算方法如下：<br/>x’= (x+y)<br/>y’= (x-y)<br/>x = (x’+y’)/2<br/>y = (x’-y’)/2<br/>Tags - <a href="http://www.dv9.org/tags/%25E6%25B8%25B8%25E6%2588%258F%25E5%259C%25B0%25E5%259B%25BE%25E7%25AE%2597%25E6%25B3%2595/" rel="tag">游戏地图算法</a> , <a href="http://www.dv9.org/tags/%25E5%259C%25B0%25E5%259B%25BE%25E7%25AE%2597%25E6%25B3%2595/" rel="tag">地图算法</a>
]]>
</description>
</item>
</channel>
</rss>