游戏学院 - 游戏开发、游戏制作、游戏策划




相关推荐

我的分类(专题)

日志更新

最新评论

留言板

链接

Blog信息
 
网上最新排行信息





C#游戏开发教程
gamezz 发表于 2006-8-14 11:34:33

本文适合有一定编程基础的爱好者!本文不会涉及基本的语法等内容,本文

适合所有游戏开发初学者,本文从Microsoft DirectX 9.0 SDK (Summer 2004)

D3DTutorials文件夹下的例子开始!!

    关键字:c  游戏开发  3D  教程

    C#(读作“C sharp”)是一种简单、现代、面向对象且类型安全的编程语言。C C++ 程序员能很快熟悉它。C# 同时具备“应用程序快速开发”(RAD) 语言的高效率和 C++ 固有的强大能力。(c#语言标准参考如是说)

废话少说,进入主题,开始我们的c#游戏开发之旅!(翻译有误请多原谅)

 

 

第一章            组建我们的设备

 

 

 

 

    1。建立一个DX程序,首先你需要下载Microsoft DirectX  SDK(最好事9.0一下简称DX),安装。然后事要保证你安装了Visual Studio .NET开发产品套件(一下简称vs.net),这是最小环境,然后你就可以进行游戏开发了。

建立一个DX设备。打开DX中的Tutorials文件夹下的Tutorials1例子并打开编译!下面是运行结果:

创建了一个DX窗口!

 下面是代码:

 

//-----------------------------------------------------------------------------

// File: CreateDevice.cs

// 创建设备

// Desc: This is the first tutorial for using Direct3D. In 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.

//-----------------------------------------------------------------------------

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

                              //我们的绘图设备

          public CreateDevice()

          {

              // Set the initial size of our form

              //设置窗体的初始值

              this.ClientSize = new System.Drawing.Size(400,300);

              // And it's caption

              //设置窗体标题

              this.Text = "D3D Tutorial 01: CreateDevice";

          }

         

          public bool InitializeGraphics()

          {

              try

              {

                   // Now let's setup our D3D stuff

                   //现在我们设置D3D的一些选项

                   PresentParameters presentParams = new PresentParameters();

                   presentParams.Windowed=true;//标志着程序运行时窗口模式

                   presentParams.SwapEffect = SwapEffect.Discard;//返回或设置交换区选项????

                   device = new Device(0, DeviceType.Hardware, this, CreateFlags.SoftwareVertexProcessing, presentParams);

                   //?,设备的类型(这里选择了硬件),创建图形设备的窗体,创建类型,创建实体);

                   //创建设备实例

                   return true;

              }

              catch (DirectXException)//捕捉DX异常

            {

                return false;

            }

          }

          private void Render()//刷新模块

          {

              if (device == 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 here

              //可以在这里渲染场景

   

              //End the scene

              //结束场景的渲染

              device.EndScene();

              device.Present();

          }     

          protected override void OnPaint(System.Windows.Forms.PaintEventArgs e)  //重写


阅读全文 | 回复(0) | 引用通告 | 编辑
 


发表评论:

    昵称:
    密码:
    主页:
    标题:

 游戏学院推荐:

 游戏学院总部  北京游戏学院  重庆游戏学院  成都游戏学院  西安游戏学院  华卓武汉游戏学院  长沙游戏学院  游戏学院数字基地校区  游戏制作联盟

 更多游戏制作信息:

 在google搜索游戏制作, 在yahoo搜索游戏制作, 在baidu搜索游戏制作 

 在google搜索游戏学院, 在yahoo搜索游戏学院, 在baidu搜索游戏学院

 其它推荐:

 进口轴承FAG轴承SKF轴承NSK轴承INA轴承IKO轴承大型轴承德国轴承轴承日本轴承


Powered by Oblog.