关于.Net框架下3D游戏的设计与实现——2.1,渲染引擎Axiom简介

          在上一篇中我展望了一下.Net游戏设计的美好前景(可是也只限于前景-_-! ,现在用.Net编游戏的公司还是很少),本节我们主要介绍一下在.Net下使用渲染引擎。 

在.Net平台下可用的渲染器和渲染引擎还是不少的:

         1,CSGL(在.Net下使用OpenGL的库),连接http://csgl.sourceforge.net/index.html

         2,MDX(这个就不用我说了吧)

         3,XNA & XNA 2.0 (微软次时代游戏开发框架),连接http://www.xna.com/

         4,Torque X(功能及其强大的傻瓜型游戏编辑器,基于XNA)(收费)        

         5,Artificial Engines(一个基于MDX用VB.Net写的很优秀的图形引擎)http://www.3dlevel.com

         6,隆重推出我在本系列中使用的引擎:Axiom,它是著名开源游戏引擎Ogre的.Net版,现在支持OpenGL和MDX两种渲染器(小道消息称在以后的版本中将支持XNA和Mono.XNA渲染器,最终实现一个跨平台的游戏渲染引擎!),可以支持原来的Ogre文件结构,而且还有支持3DMax模型导出插件oFusion(^_^)和场景编辑器。使用起来手感也不错。连接http://axiomengine.sourceforge.net/wiki/index.php/Main_Page,我使有的是Axiom 0.7.3.0,在http://sourceforge.net/project/showfiles.php?group_id=84345可以下载到。

先看看Axiom的Demo:

第一个界面给我的印象并不太好(-_-!又是黑白版面,仿佛回到了我六年级的时候),这是一个设置页用它来设置Axiom所需要的参数。一会儿我们会把它变成一个Windows窗口这样就不会太生硬了,顺便了解一下Axiom.Configuration.ConfigOption^_^.

接下来是一个例子选择界面:

看来例子还真不少(^_^),和Ogre差不多。选择25号例子看一下

 果然和Ogre中一样而且速度也不慢,在我机器上跑了755 FPS(^_^)。其他例子大家可以把引擎下载下来自己看,都是Ogre的经典例子。

下面我来介绍一下我的第一个Axiom Demo(我使用的是Microsoft Visual C# 2005 Express sp1编写的例子,VS2005也可用):

第一步,在建立一个控制台工程。

第二步,把相应的应用程序集引入工程

       需要把原来包中Bin目录下的DLL文件拷贝到你的工程的执行目录,并把所有Axiom打头的文件引用到你的工程。

第三步,要让Axiom工作需要一个基础程序类,就和DirectX中的EmptyProject 差不多,而且在Axiom的官网上可以找到,代码如下:

 

//  This file was created from ExampleApplication.h (Ogle v1.2.3) by trejs
//  for use with Axiom's tutorials.
//
//  It still has some flaws. See the " //  TODO" lines to begin with.
//  But better that than no tutorials at all :)
//
//  2006-12-26: Fixed the mouse button issue, code now compatible with 0.7.1.0-RC2. / trejs
//  2007-08-17: Updated for compatibility with 0.7.2.0 / borrillis 

Namespace Declarations  Namespace Declarations

namespace  ExampleApplication
{
    
public class ExampleApplication
    
{
        
ConfigureConsole

        
Private fields Private fields

        
Protected properties Protected fields

        
Public properties

        
Init methods Init methods

        
Event handlers Events
    }

}

以上代码主要包含了两个类:ConfigureConsole和ExampleApplication,ConfigureConsole包含于ExampleApplication 用于显示开始是的那个选项菜单。而ExampleApplication就是我们的应用程序框架,以后的例子都继承与ExampleApplication 。对于ExampleApplication的介绍和改进我们留到后面几个章节,接下来我们开始让程序运行起来。

第四步,创建我们的游戏类

创建一个类(我在这里创建了名为AxiomTest的类)继承与ExampleApplication,在一个适当的地方加入如下代码:

     class  Program
    
{

        
static void Main(string[] args)
        
{
            AxiomTest app 
= new AxiomTest();
            app.Run();
        }


    }

好了!然后按F5(^_^激动中...)。

恩,怎么回事,竟然有警告-_-!。是的,在运行Axiom是需要解除读取锁定警告。否则无法运行。

 然后再按F5就可以看到我们的HelloWorld了!

在此只是一个黑屏,在下一节中我们将给她装饰一下^_^

 

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值