手把手教用XNA开发winphone7游戏中级教程(一)

大家看完》后一定希望继续了解更多关于XNA和winphone开发的内容。这里我开始我们 《手把手教用XNA开发winphone7游戏中级教程》,这里的游戏会更加的复杂,但是只要大家坚持,就可以做出优秀的做品(感谢http://winphone.us)  体系结构Catapult Wars是一个基于Windows Phone Game State Management 的游戏。 游戏包括在以下屏幕:
阅读本文

使用 Button 类在 XNA 中创建图形按钮(九)

平方已经开发了一些 Windows Phone 上的一些游戏,算不上什么技术大牛。在这里分享一下经验,仅为了和各位朋友交流经验。平方会逐步将自己编写的类上传到托管项目中,没有什么好名字,就叫 WPXNA 吧,最后请高手绕道而行吧,以免浪费时间。(为了突出重点和减少篇幅,有些示例代码可能不够严谨。)按钮在游戏当中,我们可能需要创建一些图形按钮,平方创建了 Button 类来完成这个任务。首先,我们需
阅读本文

分享一下近期在XNA方面的研究和学习的成果

早段时间闲着无聊上了上优酷,无意中看到了一些音乐大牛们使用各种乐器弹奏红白机《魂斗罗》游戏的背景音乐(对于不知道《魂斗罗》这款游戏的朋友我只能表示无语了),有些Remix版本的音乐听到热血沸腾,不禁又回忆起小时候去同学家里打爆机的美好时光。一时间头脑发热,凭着自己的兴趣打算使用Microsoft Xna来重新打造《魂斗罗》第一代游戏第一关Jungle Juncture。不过嘛,由于之前没有游戏开发
阅读本文

3.2 仿射变换

3.2 仿射变换 3.2.1 齐次坐标 下一节我们就会知道仿射变换是一个组合了平移的线性变换。但是,因为向量只表示方向和长度,与位置无关,所以平移一个向量是无意义的,换句话说,平移后的向量是不变的。平移只能作用在点上(即,位置向量)。齐次坐标提供了一个便捷的表示方法用来统一处理点和向量。在齐次坐标中,我们使用4个元素,我们通过它的第4个坐标分量w来决定所描述的是一个点还是一个向量。确切地说
阅读本文

3.3 组合变换

3.3 组合变换 假设S是一个缩放矩阵,R是一个旋转矩阵,T是一个平移矩阵;另外,我们有一个由8个顶点vi(i=0,1,…,7)构成的立方体,我们希望将这3个变换连续应用于立方体的每个顶点。一种最容易想到的方法是将这些矩阵逐一应用于每个顶点: ((viS)R)T = (viʹR)T= viʺT = vi‴ 其中i=0,1,…,7 但是,由于矩阵乘法支持结合律,所以我们可以将上面的
阅读本文

cocos2d-xna 写的一个小游戏demo坦克大战

最近看到网上介绍cocos2d的资料很多,看了看cocos2d也支持wp7,下载了个 Cocos2d-XNA 安装包,写个小例子玩玩,熟悉下cocos2d程序很简单,就一个入门级的小游戏,写完后放手机里运行了下效果还可以开发环境 vs2010,windows phone sdk 7.1实现方法如下1.创建好 CCLayer 的子类2.重写 onEnter  方法添加一些基本按钮 跟一些初始化代码3
阅读本文

WPF 动态创建 DataTempate 及数据绑定

WPF 动态创建 DataTempate 及数据绑定运行环境:Window7 64bit,.NetFramework4.61,C# 6.0; 编者:乌龙哈里 2017-02-22参考:正文:方法就是在内存中动态生成一个 XAML ,仿照前端一样写一个 DataTemplate 。如下面的前端: Window.Resources>                    下面开始模拟它写,注
阅读本文

XNA那些事(六)--WINDOWS PHONE 游戏开发中的3D摄像机

马上国庆了,在这里祝各位同仁,国庆快乐,合家团圆! 前一段把3D建模当中一些基础性的工作开了个头,那么切入正题,接下来就必须要讨论一个3D游戏建模当中的一个重要概念--摄像机。 如果大家之前了解过相关的建模知识不管是D3D还是OPENGL甚至是3DMAX都应该听到过摄像机这个概念,其实这个概念非常的形象,它描述就是3D游戏中观察者的位置及观看方向的概念,但是要说清楚这个概念并不容易。  首先我们还
阅读本文

Stardew Valley(星露谷物语)Mod开发之路 写在前面

之前迷上了一款新游戏Stardew Valley,这几天发现游戏为插件开发提供了SMAPI编程接口,玩家可以方便的自定义游戏内容(瞬间感觉因缺思厅,额..),其实这几年的游戏许多都有mod机制,商家机智的充分发挥了人民群众的力量。   下面我会通过几个章节来记录自己的插件开发之路。在整个过程中,我会以一个完整的mod为目标,逐步丰富插件的内容。当然,我会附上代码和mod。整个教
阅读本文

XNA开发—渲染对象

所有初始化工作现在已经就绪,我们可以在屏幕中绘制正方形了。由于只使用了顶点颜色而没有应用纹理,所以在LoadContent函数中无需加载任何内容,在这里将其留空。由于目前无需更新任何内容,所以我们直接来讨论Draw函数。像在使用精灵时一样将屏幕清空(同样使用CornflowerBlue色),不过这次所采用的绘图方法则完全不同。需要使用之前创建的BasicEffect而非SpriteBatch对象来
阅读本文

XNA学习记录_绘制图形

绘制几何类型     当绘制3D几何对象时,你首先需要使用primitives(图元)定义它的形状。Primitives (图元)是可以被XNA绘制的最基本的对象,最常被使用的图元是三角形。任何形状,包括圆,如果圆的数量足够多的话,都能用来表示三角形。XNA Framework可以将点,线、三角形作为图元绘制。      XNA允许你定义这些图元的所有3D坐标。当你调用Dr
阅读本文

XNA的中文支持

我也不知道有没有人之前写的内容和我类似,但我可以保证我的是自己想出来的!而不是抄袭的!当然,事实上,其内容本身也没什么难度!近日,我一直在研究C#游戏开发,想找很多MDX的相关资料,可没想到MDX的资料实在是太少了!即使是有也都是英文的,我实在是看不懂啊!(我英语确实不太好,就算能勉强看懂一些,也太吃力了!实在忍受不了了!)于是,另辟蹊径......XNA这三个英文单词又引入了我的眼帘,妈呀!又是
阅读本文

[翻译]Oreilly.Learning.XNA.3.0之nine

第七章   全部放在一起                              好吧,你已经建立了一个坚实的设计,并且你有一个很好的开始,它会成为一个很酷的游戏。同样游戏的概念是一个玩家可以控制一个精灵并且试图去避免碰撞追逐的精灵,因为它们飞过屏幕,同
阅读本文

在cocos2d-xna中加入闪屏

用过ios中cocos2d的人都知道,我们在运行默认代码中,会看到一个闪屏+淡入的效果。而现在版本的cocos2d-xna是不带这个效果的,我觉得为了和绝大多数的wp7程序统一,还是应当加上闪屏的效果。于是,我决定仿照ios版cocos2d来做一个cocos2d-xna的闪屏。像是这样OK,假定我们的闪屏场景叫做Splash,闪屏之后的菜单场景叫做MainMenuScene。using Syste
阅读本文

XNA之简易时钟

using System;using System.Collections.Generic;using System.Linq;using Microsoft.Xna.Framework;using Microsoft.Xna.Framework.Audio;using Microsoft.Xna.Framework.Content;using Microsoft.Xna.Framework.Ga
阅读本文

一起学WP7 XNA游戏开发(三.二 Sprite Texture Font)

Sprite Texture Font   对于XNA的字体,除了之前的SpriteFont外还有一种是SpriteTextureFont,其实就是生成的字体bitmap图片,也就是说可以用bitmap类型的字库来当作XNA的字体集,这样就等于扩充了字体库,使手机里没有的字体库也可以使用。其使用方法和SpriteFont是一样的,都是以SpriteFont加载,然后通过DrawString方法画出
阅读本文

【WP7进阶】——XNA游戏精灵放大、旋转、层深度

精灵界面居中精灵放大并且旋转纹理的层深度 精灵在界面居中上篇文章我们为游戏添加一个背景图片,接下来我们希望不让游戏精灵走动了,而是让其在游戏的正中间停靠。默认Window.ClientBounds这个矩形块可以获得当前设备的宽度和高度-(这里是绝对宽度和高度,无论你屏幕如何旋转它始终获取原始宽高。)而使用graphics.GraphicsDevice.Viewport 获取设备的宽高则是通过上面设
阅读本文

XNA开发过程中的拾遗

以下是在XNA的3D开发中会用到的函数: Update循环是对游戏的逻辑进行更新的最佳场所:移动对象、获取游戏者的输入、决定对象之间碰撞的结果等等。Draw循环是渲染屏幕上所有对象及背景的最佳场所。Load 当组件载入时被代码框架调用。在这里添加组件相关的载入代码。Color.White 方法绘制没有任何颜色效果的贴图。Matrix类提供了标准的矩阵方法供使用,例如加法,减法,,乘法,另外一些有用
阅读本文

wp7使用Cocos2d-X for XNA制作一个塔防类游戏 (一)游戏基础场景搭建

游戏基础场景搭建 Loading,进入主菜单然后再进入选关界面最后进入游戏,红色箭头的流程。退出,Back键完成蓝色箭头的流程,最后完成退出。Demo源代码下载有LoadingScreen.cs,MainMenuScreen.cs,ChooseScreen.cs,GameScreen.cs四个场景类构成,他们都继承于CCScene。游戏开始进入LoadingScreen在等待3秒后载入MainM
阅读本文

XNA 3.0初步——自定义游戏循环时间

1.6 自定义游戏循环时间问题你想改变调用Update和Draw方法的默认时间间隔。解决方案Update 方法默认是每秒钟更新60次,而Draw方法则没有限制,但最大为屏幕刷新率。通过改变Game类的TargetElapsedTime和IsFixedTimeStep静态属性和GraphicsDevice类的SynchronizeWithVerticalRetrace的属性,你就可以改变默认的行为。
阅读本文