2022年C#游戏开发教程--指引如何开发最好的游戏 .pdf
《2022年C#游戏开发教程--指引如何开发最好的游戏 .pdf》由会员分享,可在线阅读,更多相关《2022年C#游戏开发教程--指引如何开发最好的游戏 .pdf(13页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、C游戏开发教程-指引如何开发最好的游戏本文适合有一定编程基础的爱好者!本文不会涉及基本的语法等内容,本文适合所有游戏开发初学者,本文从 Microsoft DirectX 9.0 SDK (Summer 2004)中的 D3D 下 Tutorials 文件夹下的例子开始! !关键字: c游戏开发3D教程C#(读作“ C sharp” )是一种简单、现代、面向对象且类型安全的编程语言。C 和 C+ 程序员能很快熟悉它。C# 同时具备“应用程序快速开发”(RAD) 语言的高效率和C+ 固有的强大能力。 (c语言标准参考如是说)废话少说,进入主题,开始我们的c游戏开发之旅! (翻译有误请多原谅)第一
2、章组建我们的设备1。建立一个DX 程序,首先你需要下载Microsoft DirectXSDK( 最好事 9.0 一下简称DX ) ,安装。然后事要保证你安装了Visual Studio .NET开发产品套件(一下简称) ,这是最小环境,然后你就可以进行游戏开发了。建立一个 DX 设备。打开DX 中的 Tutorials 文件夹下的Tutorials1 例子并打开编译!下面是运行结果:创建了一个DX 窗口!下面是代码:/- / File: CreateDevice.cs / 创建设备/ Desc: This is the first tutorial for using Direct3D. I
3、n this tutorial, all /we are doing is creating a Direct3D device and using it to clear the /window. / 注释:这是第一个使用D3D 的教学例子,在这个例子中,我们要作的仅仅是创建以个 D3D “设备”和刷新窗口/ Copyright (c) Microsoft Corporation. All rights reserved. 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 1 页,共
4、 13 页 - - - - - - - - - /- using System; using System.Drawing; using System.Windows.Forms; using Microsoft.DirectX; using Microsoft.DirectX.Direct3D; namespace DeviceTutorial public class CreateDevice : Form / Our global variables for this project Device device = null; / Our rendering device /我们的绘图设
5、备public CreateDevice() / Set the initial size of our form /设置窗体的初始值this.ClientSize = new System.Drawing.Size(400,300); / And its caption /设置窗体标题this.Text = D3D Tutorial 01: CreateDevice; 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 2 页,共 13 页 - - - - - - - - - publ
6、ic bool InitializeGraphics() try / Now lets setup our D3D stuff /现在我们设置D3D 的一些选项PresentParameters presentParams = new PresentParameters(); presentParams.Windowed=true;/标志着程序运行时窗口模式presentParams.SwapEffect = SwapEffect.Discard;/ 返回或设置交换区选项? device = new Device(0, DeviceType.Hardware, this, CreateFlag
7、s.SoftwareVertexProcessing, presentParams); /?,设备的类型 (这里选择了硬件),创建图形设备的窗体,创建类型,创建实体);/创建设备实例return true; catch (DirectXException)/ 捕捉 DX 异常 return false; private void Render()/ 刷新模块名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 3 页,共 13 页 - - - - - - - - - if (device
8、= null) return; /Clear the backbuffer to a blue color /将设备窗口刷成绿色device.Clear(ClearFlags.Target, System.Drawing.Color.Blue, 1.0f, 0); /clear(刷屏的参数这里选的是目标,使用的颜色,深度(可能用于模板),模板( 0)因为没有使用模板)/Begin the scene /开始渲染场景, (因为没有场景所以一下句是空的就直接结束了场景的渲染)device.BeginScene(); / Rendering of scene objects can happen h
9、ere /可以在这里渲染场景/End the scene /结束场景的渲染device.EndScene(); device.Present(); protected override void OnPaint(System.Windows.Forms.PaintEventArgs e)/重写 OnPaint方法 /this.Render(); / Render on painting /循环的刷新窗口名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 4 页,共 13 页 - - -
10、- - - - - - protected override void _disibledevent(System.Windows.Forms.KeyPressEventArgs e)/重写OnKeyPress 方法 if (int)(byte)e.KeyChar = (int)System.Windows.Forms.Keys.Escape) this.Close(); / Esc was pressed /如果按下了ESC 则退出程序 / / The main entry point for the application. / 程序的主函数,入口点/ static void Main()
11、 /使用 USING 语句创建对象保证对象的销毁using (CreateDevice frm = new CreateDevice() if (!frm.InitializeGraphics() / Initialize Direct3D MessageBox.Show(Could not initialize Direct3D.This tutorial will exit.); return; 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 5 页,共 13 页 - - - -
12、 - - - - - frm.Show(); / While the form is still valid, render and process messages /消息循环while(frm.Created) frm.Render(); Application.DoEvents(); 代码中有加入的注释!首先是:using System; using System.Drawing; using System.Windows.Forms; using Microsoft.DirectX; using Microsoft.DirectX.Direct3D; 使用命 3 名空间!注意的是,在程
13、序的Main 主程序中使也用了USING ,注意这是c中的一条语句,using 语句定义一个范围,在此范围的末尾将处理对象。名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 6 页,共 13 页 - - - - - - - - - 接着 Device device = null;这句是申请了Device 类的对象device 但并未创建实例对象,实例对象的创建必须使用new 语句创建。 public bool InitializeGraphics() 函数的作用是初始化 DX ,pri
14、vate void Render() 函数是渲染函数,其中的device.BeginScene(); 是开始渲染,device.EndScene(); device.Present(); 结束渲染,就如同翻页!可以在BeginScene();和 EndScene();函数之中添加图像的显示或文字的显示等其它工作!程序最后的while(frm.Created) frm.Render(); Application.DoEvents(); 是检测程序是否在执行,是则使用frm实例对象的方法Render();来渲染屏幕,Application.DoEvents(); 是执行消息循环!这样!一个简单的D
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 2022年C#游戏开发教程-指引如何开发最好的游戏 2022 C# 游戏 开发 教程 指引 如何 最好
限制150内