一、精灵和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();

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

它们已经站在台上了:

XNA Game Studio4.0 Programming 随便读,随便记。的更多相关文章

  1. OpenGL® ES 3.0 Programming Guide - Book Website

    OpenGL® ES 3.0 Programming Guide - Book Website http://opengles-book.com sample codes in GitHub: htt ...

  2. XNA Game Studio 4.0 Programming 随便读,随便记 “Game Class”

    XNA 中的 Game 类,是所有神奇事情发生的地方.几乎游戏中所有的事情都由它来操办. 它是项目中的王者,让我们深入窥探一番: 虚方法 Game 本身从众多其它地方继续了许多能力才能完成游戏中的事情 ...

  3. XNA Game Studio 4.0 Programming 随便读,随便记 “Rendering Text”

    在游戏中,通常要与玩家交流,比如分数,提示等.这就需要一种新的精灵, 它就叫SpritFont.下面先将其增加到项目中: 项目 -----> 添加新项-----> Sprite Font ...

  4. Designing Evolvable Web API with ASP.NET 随便读,随便记 “The Internet,the World Wide Web,and HTTP”——HTTP

    HTTP 我们将只聚焦在于与创建 Web APIs有关的部分. HTTP 是信息系统中的一个应用层协议,是Web的支柱. 其原先由 Berners-Lee, Roy Fielding 和 Henrik ...

  5. Designing Evolvable Web API with ASP.NET 随便读,随便记 “The Internet,the World Wide Web,and HTTP”

    1982年,诞生了 Internet; 1989年,诞生了World Wide Web . "World Wide Web"的构造为主要由 三部分构成: resources 资源 ...

  6. OpenCV问题集锦,图片显示不出来,WaitKey(0),imread()不能读图片,未经处理的异常,等问题集合

    昨天根据uc伯克利的人工图像分割文件.seg,显示图像的时候调用了OpenCV的库函数,图片都能用imwrite写好,但是imshow死活显示不出来. 今天早上发现原来是imshow()后面应该加上: ...

  7. python 实现 Fortran的读取10*0以及换行读问题

    思路,用read来全部读取,然后替换带*的元素来解决.代码如下 import numpy as np import re inf = open('SF.usr') title = inf.readli ...

  8. 《OpenGL® ES™ 3.0 Programming Guide》读书笔记1 ----总览

    OpenGL ES 3.0 Graphics Pipeline OpenGL ES 3.0 Vertex Shader Transform feedback: Additionally, OpenGL ...

  9. OSG学习笔记0——解决OSG读obj模型问题[转]

    原文:https://blog.csdn.net/u011310341/article/details/51179948 #include "stdafx.h" #include& ...

随机推荐

  1. ZipArchive框架的文件压缩和解压

    导入第三方框架ZipArchive之后还要在系统库文件中导入一个如下文件(搜索libz出来的任何一个都可以)   导入的头文件是#import "Main.h" 文件压缩 -(vo ...

  2. React组件测试(模拟组件、函数和事件)

    一.模拟组件 1.用到的工具 (1)browerify (2)jasmine-react-helpers (3)rewireify(依赖注入) (4)命令:browserify - t reactif ...

  3. Photoshop:制作金属质感-不锈钢纹理

    效果图 过程: 1.滤镜->渲染->云彩 2.滤镜->模糊->高斯模糊 3.滤镜->杂色->添加杂色 ,数量10 4.滤镜->模糊->径向模糊 5.滤镜 ...

  4. Xaml语法概述及属性介绍

    Xaml语法概述 1.命名空间     xmal每个元素都对应着一个类,但是在xmal中,只提供类名是不够的,需要知道该类实在.net的哪个命名空间下面.Xaml解析器才能够正确的解析. 1 < ...

  5. MVC 中与链接相关的辅助方法(Html.ActionLink,Html.RouteLink , Url.Action , Url.Content ,Url.RouteUrl)

    Html.ActionLink 与 Url.Action  1.两者者是根据给定的Controller,Action 生成链接, 但是Html.ActionLink 返回的是MvcHtmlString ...

  6. 机器学习 —— 概率图模型(Homework: Factors)

    Talk is cheap, I show you the code 第一章的作业主要是关于PGM的因子操作.实际上,因子是整个概率图的核心.对于有向图而言,因子对应的是CPD(条件分布):对无向图而 ...

  7. Maven远程仓库

    根据Apache Maven声明:"只有当在本地和中心仓库找不到所需的依赖文件,才会到远程仓库去下载". 当在Maven里声明了一个本地和中心仓库都没有的库文件时,Maven会停止 ...

  8. 从Uboot到Linux技术内幕

    1. 引言 在专用的嵌入式板子运行 GNU/Linux 系统已经变得越来越流行.一个嵌入式 Linux 系统从软件的角度看通常可以分为四个层次: 1. 引导加载程序.包括固化在固件(firmware) ...

  9. SH1B LMR62014XMFE/NOPB

    制造商National Semiconductor (TI) RoHS 输出电压20 V 输出电流1.4 A 输入电压2.7 V to 14 V 开关频率1.6 MHz 最大工作温度+ 85 C 安装 ...

  10. HDU 4483 Lattice triangle(欧拉函数)

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=4483 题意:给出一个(n+1)*(n+1)的格子.在这个格子中存在多少个三角形? 思路:反着想,所有情 ...