XNA平台开发游戏中文教程.docx
- 文档编号:25719353
- 上传时间:2023-06-11
- 格式:DOCX
- 页数:15
- 大小:24.99KB
XNA平台开发游戏中文教程.docx
《XNA平台开发游戏中文教程.docx》由会员分享,可在线阅读,更多相关《XNA平台开发游戏中文教程.docx(15页珍藏版)》请在冰豆网上搜索。
XNA平台开发游戏中文教程
(一)
XNABuild入门中文教程-Helloworld
为配合XNA的推出,我们特地翻译和润色了XNA的HELLOWORLD例子,对于入门来说是不可多得的靓文.另外我们群里会有更多资料(中文,英文,视频,群友开发的XNA游戏例子等共享和交流信息)欢迎一起研究和发展XNA,在这里您也可以找到合作的对象呀(比如美工等).
CreatingaBasicXNABuildProject
我们这个教程将向您演示如何使用XNABuild建立一个新的工程项目,并为其添加一个任务(task),并对这个任务(task)组件的参数和属性做一些设置,最后就是编译XNA工程项目并查看编译报告.
整个教程包括以下步骤:
1.建立一个全新的XNBBuild项目
2.给项目添加一个任务(task)组件.
3.修改message任务(task)组件的属性.
4.编译这个XNBBuild项目
5.最后是查看编译的报告
具体操作细节如下:
建立一个全新的XNBBuild项目
按照下面的步骤创建XNABuild项目
1.启动VisualStudio
2.选择File-->New,并按下Project菜单.
3.按下ProjectTypes面板的XNABuildProject
4.为新项目输入一个项目名称.由于这次是HELLOWORLD演示,所以您可以把项目取名为HELLOWORLD(HELLO和WORLD之间可以有空格)
5.按下OK.
现在你将能看到XNABuild标准的开发面板
给项目添加一个任务(task)组件
一个XNABuild项目包含一个或者多个按照设定顺序执行的任务(tasks)组件,这些任务组件可以是由MSBuild提供的标准任务组件,也可以是XNABuild提供的XNA特殊专用任务组件,还可以是由您或者第三方提供的客户化组件.所有的这些组件都会在XNABuild里按照功能分组并在左侧的Toolbox面板里显示候用.
请您按照下面的步骤给XNA项目添加任务(task)组件
1.在左侧的Toolbox窗口里选择XNA任务组件面板.
2.把其中的Message任务组件用鼠标拖到中间的设计面板上.
3.选择Message任务组件的框图(任务组件图).
现在右侧的属性窗口(Propertieswindow)将显示出当前所选组件的相关属性.如果您看不到属性窗口(Propertieswindow),请您按下F4即可显示.
4.修改任务组件的名词.具体的操作方法是右键选择任务组件,并在弹出的菜单里选择Rename选项,接着就可以输入Helloworld一词作为该组件的名称(注意,Hello和World之间不能右空格).
修改message任务(task)的属性
当您选择了一个任务组件,则该组件默认的属性值会显示在右侧的属性(Properties)窗口里,这些属性值将用来告诉相应的任务组件做怎样的动作.您也可以修改这些属性值,具体的操作步骤如下:
1.用鼠标点击选择HelloWorld任务组件图.
属性(Properties)窗口将显示两个相应的属性:
Importance和Text.
2.在属性窗口上修改Text属性的值为”HelloWorld”(注意,Hello和World之间不能右空格).接着按下回车键即可.
编译这个XNBBuild项目
现在我们这个XNABuild项目包含了一个任务组件.接着请您按照下面的步骤编译这个项目,体验一下XNABuild的功能示例.
1.选择File-->SaveHelloWorld菜单.
2.如果您没看到Output窗口,请按下View-->Output即可.
3.接着请您选择Build-->BuildSolution菜单.
编译开始了,这样您就可以在Output窗口实时地看到编译状态了.在这个教程粒子里,您应该可以在Output窗口看到”HelloWorld”信息的输出.
最后是查看编译的报告
经过成功的编译后,您应该可以在设计窗口中央看到一个显示编译报告的新窗口.你可以使用TAB键来回切换设计窗口和编译报告窗口.
在编译报告里我们可以注意到,在我们这次的演示里只使用了一个任务组件,而这个任务组件在编译过程中输出了”HelloWorld”信息.
(二)
Tutorial2:
基本构造和追加模型
我们这个教程将接着向您演示Tutorial1的XNA建立的项目,是关于怎样创建一个资源组(assetgroup)并使他在任务中发挥用处
整个教程包括以下步骤:
1.打开一个已有的XNA建立的项目
2.在本项目上增加资源组(assetgroup)
3.将刚建立的资源组(assetgroup)同现有的任务联系起来
4.在组里添加标签(items)
5.浏览HelloWorld任务里的道具修改。
建立XNA项目
浏览项目报告
运行一个现有的XNA项目
使用以下逐步的做法打开一个现有的XNA项目。
1.首先执行VisualStudio
2.在文件(File)菜单,点击打开(Open),和然后点击项目(Project/Solution)。
3.找到您从Tutorial1保存HelloWorld项目的路径,并且选择HelloWorld.sln文件。
4.点击OK
现在,与其它窗口一起,设计界面(designsurface)中将出现并包含在先前教程中出现的的HelloWorld任务(task)。
新增一个资源组(AssetGroup)至Build中
要为一个特定的项目提供数据的输入,你可以指派一个代表资料输入的资源组(AssetGroup)至这个项目中。
以下提供每一步的指南。
1.在Toolbox窗口中,按Design项目板。
2.拖拉资源组(AssetGroup)项目至设计版面上。
3.在SolutionExplorer标签上,指着AssetGroup的图标按右键,再选Rename。
4.输入“ImageList”作为新的名字,注意Image和List之间是没有空格的
新增一个对象至资源组(AssetGroup)
用以下的几个步骤来新增档案至ImageList资源组项目中,这些档案将会在以后的过程中使用。
1.在SolutionExplorer板上,指着ImageList按右键。
2.按Add,再按ExistingItem。
3.用AddExistingItem对话框来新增五个存放在C:
\ProgramFiles\XNA\Tutorialsdirectory的.PNG档案
把资源组(AssetGroup)结合至现有的项目
要在HelloWorld项目使用把输入了的数据,HelloWorld项目必须与ImageList资源组结合在一起。
要产生此连结,需要使用一个Connector项目。
按着以下步骤来进行结合。
1.在Toolbox窗口中,按Design项目板。
2.按Connector项目
3.按右边的ImageList项目卷标,拖放到左边的HelloWorld项目卷标上,一个显示着HelloWorld项目中可以与ImageLIst结合的属性菜单就会出现。
4.按Text。
5.按在Design项目板内的Pointer,这可令预设的pointer重新工作。
一个connector已经在ImageList和HelloWorld项目中。
现在,在ImageList中的内容就可以透过Text的属性传到HelloWorld中。
预览(View)HelloWorld任务的modifiedproperties
同HELLOWORLD消息任务的“Text”属性紧密相关的ImageList组(ImageListassetgroup)将取代具有典型“MSBuild”语法特征的工具创造出来的内容属性具有的"Text"属性值。
预览(View)modifiedproperties,在设计面板上,点击HelloWorldmessage任务shape。
可以在Properties窗口观察到,Textproperty的价值被改变了从HelloWorld到HelloWorld;@(ImageList)。
创建XNA项目
这个演示里做了些必要的改动。
在以下步骤里说明了怎样新建项目和新增加的内容。
1.在文件(File)菜单,点击保存(Save)HelloWorld。
2.在浏览View菜单,如果你没看见输出(Output)窗口点击输出(Output)
3.在Build菜单,点击BuildSolution.
4.创建开始,和您将看在窗口上实时显示创建状态(注:
类似即时渲染)。
在这种情况下,HelloWorld信息连同输入的文件的目录一起被显示。
浏览创建报告
在成功的创建后,你将注意到创建报告的面板出现主窗口这时候设计面板是开放的但是它被创建报告遮着。
使用tabslocated让起在顶层显示设计面板和创建报告。
从创建报告面板显示的每个的名字是在ImageList组文件(ImageListassetgroup.
)。
(三)
指南3:
定制任务
这个过程延续指南2中描述的如何建立XNABuild工程.此过程将告诉你如何在XNABuild系统中建立和添加一个定制的任务,并且接下来还将告诉你如何在buildpipeline中进行这个任务
这个过程主要围绕下面各个步骤展开.
1.安装ConvertToJpegTask任务
2.打开一个已创建的XNABuild工程
3.从设计界面中删除一个任务
4.增加一个ConvertToJpegTask任务到当前项目
5.操作转化进程
安装ConvertToJpegTask
XNABuild不需要借助XBOX360也可以进行各种有用的工作.然而,添加定制的任务对于一些特别的游戏工作室的特殊需要来说通常是必需的.XNABuild对于定制的任务提供非常高扩展性的插件模型.安装定制的任务是一个将所有工具放置入一个目标目录的简单过程
创建一个被称为“MyCustomTasks”的子目录,它存在于C:
\ProgramFiles\MSBuild\Microsoft\XNA\Pluginsdirectory中.
复制定制的任务集(Microsoft.Xna.Utilities.ConvertToJpeg.dll)到一个新的目录.这个集合被安置在C:
\ProgramFiles\XNA\Tutorials\.
一旦定制的任务被安装后,开始运行XNABuild,并且确保它在“MyCustomTasks”任务栏中可见
打开一个已创建的XNABuild工程
用下面的方法打开一个已创建的XNABuild工程.
1开始运行VisualStudio.
2选择File菜单,点击Open,然后点击Project/Solution.
3从“指南1”中找到你保存HelloWorld工程的位置,并且选择HelloWorld.sln文件
4点击OK.
现在,伴随着许多其它窗口,包含有你刚才找到的那个HelloWorld工程的任务窗口一齐出现在设计界面上了
从设计界面删除一个任务
这个指南的主要目的是用一个定制的ConvertToJpegTask任务取代HelloWorld消息任务.在设计界面,选中HelloWorld对话框,按一下键盘上的“Delete”键,这样HelloWorld任务以及它的关联者就一起从你的眼前消失了
增添一个ConvertToJpegTask任务
用下面的方法在当前的工程中添加一个定制的任务.
1.在Toolbox窗口,点击MyCustomTasks任务栏.
2.将ConvertToJpegTask任务拖到设计界面上.
3.重命名ConvertToJpegTask任务对话框,使其成为"JPEGConversion",注意,“JPEG”和“Conversion”间应保持一点间隔.
在选择了定制任务对话框之后注意到它的属性并且记住(“dockable”)的那个值.现在保持默认
4.用Connector连接ImageList到InputFiles[Required]新定制的任务的特性
5.在Design任务栏中点击Pointer以恢复默认指针默认的功能特性.
6.保存并且重建工程.
之后BuildReport一栏会显示建立的结果.检查C:
\ProgramFiles\XNA\Tutorials\目录并且确认有五个新的.jpg文件和.png文件一起被创建,已确保此次转化完成
操作转化进程
XNA一个新的强大的特性就是可以为一个任务的某个输入项改变任务本身的特征值,或者改变其通过继承得到的特征值.举例说,一个美工可以在ConvertToJpegTask任务中改变所有要求被定制成128x128大小的JPEG图片的高和宽.再比方说,美工可以将一个单一.png文件的压缩率改变到100%,这样大的压缩率最终将其转变为JPEG格式.
这里有一个范例,用下面的方法更改一个单一.png文件的属性
1.在SolutionExplorer标签,点击第一个.png文件.
2.在Properties窗口,改变压缩率的值,使其变成1.
3.在Properties窗口,改变Height和Width的值,使其变成50.
4.保存工程并且重建它
第一个.jpeg文件现在有了一个很高的压缩率,因此它比其它的文件更小,
教程4:
OutputGroups和BuildTimeline
本教程是对前三个教程的概念的扩展,示范了一个buildassetpipeline中有多件任务该怎么做,以及怎样使用outputgroups在不同任务中传送数据。
本教程假定你已经对前面的教程概念的论述有一定的熟悉。
因此,没有像前面的教程一步一步的进行指导。
本教程包含以下步骤:
1.打开一个现有的XNABuildProject.
2.在Build中添加一个新任务群(Tasks).
3.为新任务群(Tasks)创建一个输出资源组(OutputAssetGroups).
4.在新任务群之间添加先后顺序(Sequencing).
5.核实默认的编译目标.
6.用BuildTimeline验证正确的执行顺序.
7.生成XNABuildProject.
打开一个现有的XNABuildProject
1.打开教程3中的HelloWorldproject。
一旦解决方案读取完毕,buildpipeline就将在设计面板上出现。
在Build中添加新任务群
在本步骤中,buildpipeline被修改以包含一个素材的目录(被称作纹理源TextureSources)。
那些在原创图形列表资源组(originalImageListassetgroup)中的文件将被优先拷贝进目录来请求JPegConvertTask。
以下展示了一些重要的步骤。
1.从XNA任务盘(taskpalette)中拖拽一个MakeDir任务到设计面板上。
2.把本任务重命名为CreateTexturesDirectory。
3.点击Directories[Required]属性文件,然后点击Browse按钮。
4.在StringCollectionEditor对话框中,输入要创建目录名(使用C:
\TextureSourceforthiswalkthrough),然后点OK。
5.从XNA任务盘(taskpalette)中添加一个Copy任务到设计面板上。
6.重命名这个任务外形(taskshape)为CopyTextures。
为新任务群(Tasks)创建输出资源组(OutputAssetGroups)
一个输出资源组(OutputAssetGroups)类似常规的资源组。
不同于手动创建,它将基于任务的输出(output)而被自动创建。
从本buildpipeline来说,这些组(groups)将被用来传送来自MakeDir任务到Copy任务中的最近创建的新目录名,同样,它也传送那些从Copy任务到JPegConvertTasktask任务中的被拷贝的文件的名字。
下面将展示一些重要的步骤。
注意:
输出资源组(OutputAssetGroups)并没有UI图标。
在任务中,它们被属性系统创建,而且这些任务必须被构造(constructed)以支持输出数据到输出资源组(OutputAssetGroups)。
1.选择一个CreateTexturesDirectory任务外形。
2.在DirectoriesCreated[Output](目录创建[输出])属性中,输入输出资源组(OutputAssetGroups)的名字(这里用TexturesDirectory),按回车。
一个输出资源组(OutputAssetGroups)任务的外形以TexturesDirectory的名字在设计面板中被创建,并且你将看到从CreateTexturesDirectory任务外形到TexturesDirectory输出资源组(OutputAssetGroups)任务外形出现一个连接器箭头。
这种资源组(assetgroup)被不同的颜色标记以帮助你能将它和常规资源组(regularassetgroup)分开。
3.使用Connector工具,将TexturesDirectory输出资源组(outputassetgrouptask)的外形连接到CopyTextures任务的DestinationFolder属性中。
CopyTextures任务现在有了目录的地址,以将文件复制到里面。
但是,哪些文件将被复制进目录,现在仍然不知道。
4.点击开发任务盘(Designtaskpalette)中的指示器(Pointer)来恢复默认的鼠标指针功能。
5.选择JPEG转换任务。
6.点击InputFiles[Required](输入文件[需求])属性。
7.点击Browse按钮并删除其中的内容。
8.点击OK。
9.把ImageListassetgroup任务的外形连接到CopyTextures任务外形的SourceFiles[Required](源文件[需求])属性。
CopyTextures任务现在已经和将被复制的文件一样,也有目标地址。
可是,JPEG转换任务并没有和那些要处理文件一样。
这是被CopyTextures任务中另一个输出资源组(outputassetgroup)固定了的。
10.在设计面板上选择CopyTextures任务的外形。
11.在CopiedFiles[Output]属性中,输入输出资源组(outputassetgroup)的名字(这里用Textures),然后回车。
一个新的输出资源组(outputassetgroup)出现了,并被连接到CopyTextures的外形上。
12.将Textures输出资源组(outputassetgroup)连接到JPEG转换任务的InputFiles[Required](输入文件[需求])属性。
在新任务群中添加顺序(Sequencing)
Buildpipeline中任务的顺序决定于任务之间的连接。
这些连接将告诉MSBuild,以决定任务的运行顺序。
所以,你应该依照这样的次序:
首先,创建目录,然后拷贝文件,最后,才是纹理的处理。
以下展示一些重要的步骤:
1.用Connector工具将CreateTexturesDirectory任务外形连接到CopyTextures任务外形上。
2.用同样的方法将CopyTextures任务的外形连接到JPEG转换任务的外形上。
检查默认的编译目标
每个buildassetpipeline有一个默认的编译目标,以图标的方式显示在任务的右上角。
在添加了几个新的任务群或者修改了顺序以后,默认的编译目标肯定会发生变化。
下面展示一些重要的步骤:
1.在控制面板上点击JPEG转换任务的外形。
2.在顶部的Build菜单中,单击SetDefaultBuildTarget。
使用BuildTimeline验证正确的执行顺序
Buildassetpipeline中当前的执行顺序显示在BuildTimeline窗口中。
这个窗口对决定大型复杂的buildpipelines的顺序非常有用。
以下展示怎样让这个窗口出现的重要步骤:
1.在设计面板中选择JPEG转换任务的外形。
2.在顶部的View菜单中,单击XNAWindows,然后单击BuildTimelineWindow.
你将看到BuildTimeline窗口被打开,显示所有任务的关系。
在这个简单的示例中,编译顺序是显而易见的,但是,当解决方案变得复杂庞大时,不使用BuildTimeline窗口就很难确定这样的顺序了。
编译XNABuildProject
到此,本课程的重要修改都已经完成。
现在可以重新编译方案,你也能见到新的功能。
下面展示一些重要的步骤:
1.在顶部的File菜单中,单机SaveHelloWorld。
2.如果Output窗口不可见,点击顶部View菜单中的Output。
3.在顶部的Build菜单中,单机BuildSolution.
教程5:
未使用和相关文件视图
本实例演示了关于XNABuild系统的一些高级概念。
因此需要使用到一个比较高级的实例项目,也就是MechCommander2XNABuild项目。
此项目演示了UnusedFiles(未使用)和RelatedFiles(相关)文件视图的概念。
此项目作为MechCommander2安装的一部分可以在XNABuildDVD中找到。
本实例包括下面的步骤:
1.打开MechCommander2XNABuild项目。
2.生成MechCommander2XNABuild项目
3.在Build(生成)系统中,查看未使用的文件。
4.查看某一指定资源的相关文件。
打开MechCommander2XNABuild项目。
*打开MechCommander2XNABuild项目,MechCommander2.sln
MechCommander2SharedSource(MechCommander2共享源码)生成项目的默认目录是C:
\MechCommander2Source\BuildProj。
一旦文件被调入,则MechCommander2生成管道线就会显示在设计界面中。
因为这是一个比较大的管道线,因此一次只能看到此管道线的一小部分。
生成MechCommander2XNABuild项目
MechCommander2项目的初始生成可能要花费20分钟。
后续生成会被渐进的执
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- XNA 平台 开发 游戏 中文 教程