Silverlight C# 遊戲開發:Flyer02 從第一行代碼寫起

來源:互聯網
上載者:User

     前面的Flyer01說過,用Silverlight開發遊戲可以通過代碼方式和Blend開發工具完成,Blend的視圖開發環境和Flash的很像,但是更加強調是程式結合,從不怎麼明顯的動畫軸就知道,而Silverlight也不是和Flash一樣離開了開發工具就完全不能開發,我打算通過這個簡陋的例子讓朋友知道,如何只用代碼的方式開發一個Silverlight遊戲。

     一,需要一個環境,這個可以在這篇中找到答案Silverlight C# 遊戲開發:Silverlight開發環境

     二,建立一個Silverlight工程,然後開始編寫代碼:)

 

     第一開始,我們需要一個視窗來呈現整個遊戲的內容,那麼我需要在XAML中添加如下代碼:

     上面的意義是,在一個空間為400x400中加入一個畫布,背景顏色為藍色,至於這方面內容參看這個Silverlight C# 遊戲開發:關於精靈for Silverlight容器

現在,在工程裡添加一個類,如果你喜歡直接添加代碼檔案也不錯,我這個人比較懶,自動的爽些

     寫如下代碼,其意義是一個繼承自Canvas的雲彩控制項,在這個控制項中增加一個Image,Image不能繼承不能作為基類,所以我們使用一個Canvas作為容器。

     可是,我們的資源在這裡呢?需要準備一套圖片,然後添加到工程當中,在這裡加了一個Src的目錄,如所示:(檔案在下面的附件中可以下載)

 

      現在在MainPage類中添加如下代碼:

     運行一下就可以看到效果:

     我們看到一個雲彩在頁面當中,這是使用純程式碼形式顯示的第一張圖片,在這個結構中,ClassCloud類是繼承自Canvas的控制項,裡面有一個Image的控制項,雖然說起來很麻煩,但是並不複雜,相信應該能夠很容易理解,但是一個片雲彩沒有什麼意思,我們最終的目的是想讓其飄動起來,但是怎麼做到呢?最主要的,首先是可以控制它的座標:

      上面的XY可以直接控制自身的座標,這裡就不用做實驗了……雲彩肯定是一堆雲彩,會有很多個,這樣的話,就需要另外一個容器裝載這些雲彩,為了讓結構清晰,咱們設定一個ClassCloudGroup用來管理這些雲彩,同時,這個也是一個控制項容器:

 

     上面的代碼意思是建立一個容器,指定數量的建立雲彩,只需要在MainPage的建構函式中增加出來,然後添加視窗中,運行效果如下:

     現在出現了很多雲彩,隨機分布在藍色背景上, OK,那麼下一步就是讓他們動起來,由於設定的遊戲是向下飛行,那麼雲彩應該向上飄動,因此我們在雲彩組裡加入如下的代碼:

     運行效果如下:

     為了更加好看,我做了一些特殊處理,詳細參見原始碼吧:點擊這裡下載

      代碼上做了一些有趣的修正,可能和上述的代碼不一致,但是有詳細的注釋,相信應該對大家有個協助。

     這是遊戲最有魅力的地方,你能通過操作創造一個世界,這是一個單純的簡單背景,那麼下次,咱們一起和飛行員飄落:)

 


相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.