XNA初试——2D精灵

打开XNA我们可以像创建一个普通的vs的项目一样创建一个游戏,在创建一个windowsgames的模板以后,我们可以看到有game.cs和programe.cs两个文件,运行模式和普通的windows application很相近,都是创建一个运行的实例然后调用该实例的run方法;

一个xna工程在创建之初就提供了如下的函数供调用:

用于启动和运行游戏的代码已经为你写好了,里面都留有让你加入代码的地方:

  • Initialize 方法是你对那些不需要在初始化GraphicsDevice时就加载的资源做初始化的地方.
  • LoadContent 方法是你加载图象资源(诸如模型和纹理等)的地方.
  • UnloadContent 方法是释放图象资源的地方,通常,这里不需要写额外的代码,因为当图象资源不再需要的时候会被自动释放.
  • Update 循环是你对游戏逻辑进行更新的最佳场所:移动对象,接收玩家输入,决定对象之间碰撞的结果,等等...
  • Draw 循环是你渲染对象和屏幕背景的一个最佳的场所. lSnap1

ok,下一步就是加入一个简单的2d精灵:

首先需要定义一个Texture2D对象,用来读取2d精灵的纹理,然后需要定义一个SpriteBatch对象,在LoadContent中加载纹理,实例化SpriteBatch的过程中需要将GraphicsDevice作为参数传递给它的构造函数,我们想,这里是不是就是告诉了系统使用当前的物理图像设备?lSnap2

vSnap2确保你在调用ContentManager.Load 的时候使用了上一步中提到的"Asset Name"(资源名称). 这段代码将加载并准备好你绘图所需的图象资源,并且当图象设备被复位的时候重新加载图象资源 (例如在窗口大小被改变的时候).

好的现在我们已经加载了该资源,通过在Draw循环中加入代码我们将之显示出来vSnap1  这样一个不会动的精灵已经被加载在了系统并显示在屏幕上;那么怎么让他动起来呢?

修改Update()方法vSnap3

在下面定定义UpdateSprite()方法,对精灵进行更新:vSnap4

 

 

 

 

 

 

 

 

vSnap5

 

 

 

 

 

 

 

这样,精灵将在屏幕四周运动并做碰撞的时候会立即返回;

 
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值