博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
XNA Game Studio4.0 Programming 随便读,随便记。
阅读量:7027 次
发布时间:2019-06-28

本文共 1257 字,大约阅读时间需要 4 分钟。

一、精灵和2D图形

 

1、什么是2D ?

2D可以理解为 two-Dimentionanl  , 2-dimentional 的缩写。

意就是两维的,比如 数学中的 直角坐标系 所能描述的就是一个2D的面。

在计算机中,一般可指 显示屏幕 。

当你面对显示器时,显示器的左上角为 直角坐标系的原点 ,坐标为(0,0)

那么X轴呢,X轴是显示器的顶边,它的正方向就是你的右边。

而Y轴,则是显示器的左侧边,它的正方向是向下的。

 


 

2、什么是精灵 ?

简单地说,就是绘制在屏幕上的图片。

2D游戏说白了,基本上就是一大堆图片。

二、在2D屏幕上显示精灵

1、前面已经说了,游戏基本上就是在屏幕上绘制图片。那么我们就开始吧。

  • 在新建的项目中,其Game1类中,注意看:

既然要画精灵,那么总要有去做这件事吧,

GraphicsDeviceManager graphics ;

这句话,就是说叫来一个跟显卡关系好的经理,准备让它画精灵。

 

  • 然而,上面已经说了,2D游戏中有一大堆的精灵,那么让这个经理

那么多的精灵打交道,估计手忙脚乱了吧。那么是不是要选出个班长

组长什么的,协助管理班级呢?那是当然了。

看这句:

SpriteBatch spriteBatch ;

这句正是叫来了一个专门会管理精灵的,精灵长老。

 

  • 有了经理,有了组长,没人上舞台表演,也不成戏吧!

下面表演者要上场了:

Texture2D texture ;

这句话,就是雇来了一个表演者。现在人终于到齐了。

闲话少续,观众等不及了,快开始吧。但是还有个问题,

那就是演员都得打扮打扮吧,要不上不了台啊!

  • 下面要给演员化妆了:

先把化妆品拿来:

在解决方案中<Content>上右击 -〉添加现有项 -〉选择一件演出服(即图片)

开始上妆:

这是一个动作,要添加到相应的Game1类的方法中,即 LoadContent 方法:

texture=Content.Load<Texture2D>(“PictureName”);

 

  • 精灵 粉墨登场吧!

上舞台,能过方法 Draw , 如下:

GraphicsDevice.Clear(Color.CornflowerBlue);

这一句,是让显卡先清场,因为上一场表演会有遗留的东西。

然后,再幕布拉上。

  • 接下来,要让精灵组长开始叫人了:

spriteBatch.Begin();  

  • 接下来,就要真正叫人了:

spriteBatch.Draw( texture,  //<-----texture是被叫的人

         GraphicsDevice.ViewPort.Bounds,  //<-------站位

          Color.White)  <------ 蒙纱颜色,此处是不蒙纱,直接露面。

  • 人上完了,通知一声:

spriteBatch.End();

 

演员全部上场后,那么大戏正式开始吧!运行一下游戏,你会看到

它们已经站在台上了:

 

转载于:https://www.cnblogs.com/dynamicman/p/3788542.html

你可能感兴趣的文章
到前面去,
查看>>
Eclipse add external jars导致运行出现java.lang.NoClassDefFoundError的解决方法
查看>>
php 跨域、跨子域,跨服务器读取session
查看>>
第一个Python程序——博客自动访问脚本
查看>>
CocoaPods更新报错解决
查看>>
并发编程——ConcurrentHashMap#addCount() 分析
查看>>
eclipse比较实用的几个快捷键
查看>>
Java Thread.interrupt interrupted
查看>>
跨站脚本攻击实例解析
查看>>
Hadoop生态圈-phoenix的视图(view)管理
查看>>
monitor disk
查看>>
BootStrap学习笔记JS插件(一)--模态弹出框
查看>>
Q:链表的中间元素
查看>>
this函数的理解
查看>>
你不知道的函数节流,提高你的JS性能!
查看>>
headfirst设计模式(1)—策略模式
查看>>
[Android Pro] 创建快捷方式,删除快捷方式,查询是否存在快捷方式
查看>>
python基础之文件读写
查看>>
斐波那契递归的优化及指数计算的优化
查看>>
java.lang.NoSuchMethodException: tk.mybatis.mapper.provider.base.BaseSelectProvider.<init>()
查看>>