天天看点

Silverlight 游戏开发小技巧:透明背景的Silverlight程序

一些朋友在玩窝窝世界的时候,发现官方网站上的进入入口程序是Silverlight,但是有趣的是一个透明背景的Silverlight程序,这个效果最早我也未找资料,在未来Silverlight程序会在各个方面应用,透明背景的效果就会涉及,这种效果预览如下:

<a target="_blank" href="http://blog.51cto.com/attachment/201111/220454469.jpg"></a>

下面一步一步的告诉大家这个小技巧,

首先要准备一个Silverlight,然后将MainPage的填充色设置为透明的,还有LayoutRoot也是一样,我在这里用了一张来自网络的图片,

<a target="_blank" href="http://blog.51cto.com/attachment/201111/220503256.jpg"></a>

为了稳定,最好将MainPage的宽高定死,这样有助于我们在网页中呈现

<a target="_blank" href="http://blog.51cto.com/attachment/201111/220512824.jpg"></a>

我这张图是256x256的,大家可以依据自己的需要设置大小,但是一定要符合最终呈现的需求。

现在我们在这个上面,小做几个故事板动画,比如鼠标移入移出,这样能够更好的看这个效果,具体实现我们就不做太多的说明,大家可以直接在最后下载源工程浏览。

现在我们要整合到网页中,同样,简单准备了一个带背景的网页

<a target="_blank" href="http://blog.51cto.com/attachment/201111/220522322.jpg"></a>

现在我们需要添加Silverlight程序到网页中:

&lt;div&gt;   

&lt;object data="data:application/x-silverlight-2," type="application/x-silverlight-2" width="300" height="220"&gt;   

&lt;param name="source" value="/ClientBin/youSilverlight.xap"/&gt;   

&lt;param name="windowless" value="true"/&gt;   

&lt;param name="background" value="#0F00" /&gt;   

&lt;param name="minRuntimeVersion" value="4.0.50401.0" /&gt;   

&lt;/object&gt;&lt;iframe id="_sl_historyFrame" style="visibility:hidden;height:0px;width:0px;border:0px"&gt;&lt;/iframe&gt;   

&lt;/div&gt;   

但是如果你直接运行的话,将会得到一个不是透明背景的效果,这是因为现在的Silverlight程序暂时还不是无窗口的模式,你需要将Windowless设置为true,就如上面的代码所述。

剩下的工作你需要一个页面设计师来帮你完成,比如将程序显示在什么地方之类的工作,

那么下面我们预览一下效果吧。这是和网页结合的技巧,可以制作例如登录、Banner等需要透明背景的特效程序。

本文转自nowpaper 51CTO博客,原文链接:http://blog.51cto.com/nowpaper/712789

继续阅读