当我们设计silverlight游戏引擎的时候,往往有一种想法,就是让引擎不参杂xaml相关元素,因为xaml解释器的确有点慢,更多的是因为纯代码的游戏引擎更有扩展性和重用性。因此本文讲述一个silverlight游戏引擎的设计基础,希望可以帮到有须要学习的朋友。
1. 新建一个silverlight项目,包不包括asp.net均可。
2. 删除 App.xaml 和 Page.xaml (CS一同删除).
3. 新建一个类命名为:gamebase.cs
4. 修改让gamebase类继承自Application
public class gamebase:Application
{
public gamebase()
{
}
}
5. 进入项目属性,设计Startup Object选项为gamebase类
6. 回到gamebase类注册项目启动事件
public gamebase()
{
this.Startup += new StartupEventHandler(gamebase_Startup);
}
void gamebase_Startup(object sender, StartupEventArgs e)
{
}
至此,一个纯代码的silverlight项目已经建立完毕,以下我编写一个canavs作为演示之用
void gamebase_Startup(object sender, StartupEventArgs e)
{
var can = new Canvas();
can.Height = 600;
can.Width = 800;
can.Background = new SolidColorBrush(Colors.Black);
var tb = new TextBlock();
tb.Foreground = new SolidColorBrush(Colors.White);
tb.FontSize = 30;
tb.Text = "Hello FunSL.com";
can.Children.Add(tb);
this.RootVisual = can;
}