发信人: benbow()
整理人: funboy(1999-11-24 10:06:58), 站内信件
|
记得十年前第一次接触Nintendo FC(任天堂红白机)的《超级玛丽奥兄弟》 时,笔者曾为当时的游戏技术惊叹不已;十年后,当Nintendo在最新推出的N64游 戏机上以仅仅8MB容量的数据再次重现这一脍炙人口的卡通形象时,其生动优美的 画面和精彩紧张的故事情节仍然令那些动辄几张光盘的PC游戏为之汗颜。于是乎 ,在广大玩家的热切期盼下,一个可以在PC平台上运行N64游戏的模拟器UltraHL E诞生了。这个容量仅有170多KB的模拟器的确可以称得上是游戏模拟史上的一个 里程碑——无论从画面质量、光影效果还是流畅度上,都丝毫没有给人以“电脑 模拟”的感觉。然而,运行UltraHLE需要一块支持Glide API的3D图形卡,这类图 形卡仅有3dfx公司的Voodoo系列显卡,如Voodoo、Voodoo2、Voodoo3和Voodoo B anshee。虽然现在购买Voodoo算不得是太奢华的配置,但是相信并不是每一个电 脑玩家都愿意为了运行UltraHLE而配备Voodoo卡。那么为什么只有采用了3dfx V oodoo系列的3D图形卡才能运行N64模拟器呢?这还得从Glide与Direct3D说起。
Glide(3dfx's Proprietary Programming Interface)——3dfx公司为其产 品量身定制的专用应用程序接口(API),它可以令Voodoo系列3D加速卡的各项特 色在游戏中得到最充分的发挥。在短短的时间里,3dfx公司在游戏专用3D显卡领 域取得重要的地位,所以很多新编写的3D游戏都以Glide接口为第一标准,包括上 面提到的N64模拟器——UltraHLE在内。这自然也令非3dfx的用户多少有些遗憾, 因为其它像TNT、Savage3D、G200、i740、Riva128等3D显卡只能支持Direct3D或 OpenGL。在这种情况下,Glide仿真软件(或称包装程序,Wrappers)自然也就应 运而生了。
Glide仿真软件其实就是对游戏过程中调用的Glide接口的函数进行解释并重 新定向的一种程序。它通过将Glide转换为对Direct3D或OpenGL的函数调用来实现 对Glide的模拟功能,从而使那些原本只支持Glide接口,没有3dfx Voodoo加速卡 就不能运行的程序可以直接在普通的3D图形卡上运行。这样,只要有一台配置不 算太低的电脑(MMX200以上CPU、32MB以上RAM、Riva 128以上的3D图形卡),您 就可以享受到《玛丽奥64》的乐趣了。当然,由于现有的Glide仿真程序大多都是 为UltraHLE模拟器编写,因而对于其它3D游戏来说,Glide仿真程序的函数调用难 免有些Bug,不一定能够正常运行。
第一个推出的Glide仿真程序当属GliD3D V0.24,这是所有Glide仿真程序的 鼻祖。它一开始就公布了所有的程序代码,这对于其它后继的开发者来说无疑是 莫大的帮助。在其带动下,十余个性能各异的Glide仿真程序相继诞生,这些仿真 程序使用都很简单,升级也很快,几乎每周都会有新的版本出现。并且大多数的 仿真程序都无偿提供了源码,对编程爱好者来说可以作为参考。
下面就常用的两个Glide仿真程序做一介绍。
一、XGL200
这是笔者得到的第一个Glide仿真程序,也是众多Glide模拟器中的佼佼者。 XGL200的使用方法很简单,只要将下载好的glide2x.dll和Configurator.exe两个 文件拷贝到UltraHLE目录,再运行Configurator进行参数设置就可以了。XGL200 提供了极为丰富的参数控制界面,您可以根据自己的显卡特性对各项参数进行设 置,从而得到最优的游戏性能。设置参数意义解释如下:
●Vsync——决定在交换缓存之前是否要等待垂直刷新信号。把本项设置为“Off ”时可使速度略为提升,但屏幕有可能会出现闪烁现象;
●Antialiasing——反锯齿。可使图像边沿平滑,但会降低速度,且只有某些显 卡能支持这一选项。
●Texture clamp mode——如果画面出现重影,选择“alternate(交替)”的贴 图方式可将之消除。
●Z-Buffer——Z缓冲。可用于解决“out of order polygon”的问题。对于G20 0的用户,打开“32 bit Z-Buffer”可获得最佳显示效果。
●AlphaOps/ColorOps——α及色彩选项。建议高级用户使用。当复选框为灰色时 表示“使用默认值”。另外,如果运行《玛丽奥64》片头时玛丽奥的头是黑色, 取消“D3DTOP_ADD”可使之恢复正常。
●FPS Count——在屏幕的左上角放置一个小巧的帧计数器可以获悉当前游戏运行 的速率,选中该项会稍许降低系统性能,故建议仅在评测时使用。
●Process Priority——实际上,该项仅仅是为了超任64模拟器UltraHLE设置的 ,尽管对于其它游戏也同样有效。将它设置为high或实时模式可提高UltraHLE的 优先权,从而增加模拟器的流畅度。
●Buffering——若显卡配置了8MB以上的显存,则三线缓冲可以得到最快的速度 ,但在某些游戏中可能会有兼容性问题,这时改为双线缓冲即可解决。
●Card model——显卡类型。系统将针对各种显卡的特性做出相应的优化配置。
●Emulated Texture Memory——设置运行程序所需要的贴图内存。
二、GL2IDE
这也是一个极为优秀的Glide仿真程序,画面质量非常精美,速度和其它各方 面指标也不错。GL2IDE的使用方法与XGL200一样,只需要将glide2x.dll和GL2ID Econfig.exe拷贝到UltraHLE所在目录就可以了。运行GL2IDEconfig.exe可对GL2 IDE进行设置,设置参数意义解释如下:
●Run Fullscreen——选中该项时,模拟器将以全屏方式运行,如果全屏方式失 败或不选中此项,模拟器将以窗口模式运行。
●Blend Fix —— 选中这一项,可以防止丢失多边形,保证画面完整。
●Precision Fix——选择该项能修正某些16bit缓冲的加速卡上出现的画面缺失 。
●Auto Generate Mipmaps——选中该项会自动在材质上产生许多映射图像,从而 在UltraHLE中获得更好的视觉效果。
●Use Z Inverse for depth——该项仅对TNT显卡起作用,它可以改善画质。
●Fog Mode——雾化功能,但还不能完全正常工作,所以最好把该项关闭。但在 《Zelda 64》和《玛丽奥64》中,选用Mode2绝无异常。
这里建议的设置参数是除了“Use Z Inverse for depth”之外,可以使用其 它的所有设定。如果你使用的是一块TNT显示卡,建议将“Use Z Inverse for d epth”也一起选中,这样可以得到最佳的画面质量。同时,最好使用nVidia 0.4 8的驱动程序,因为使用最新的“Detonator”驱动程序时,雾化功能可能会出现 一些问题。
此外,比较优秀的Glide仿真程序还有XGlide 1.3a、MGLide 1.246c、MUGLi de、GlideGL64和OpenGLide0.02等。这几个Glide仿真程序的使用非常方便,因为 它们都只有一个文件,即glide2x.dll,所以只要将它拷贝到UltraHLE所在的目录 就可以了。在第一次运行时,它们都会自动产生一个INI文件,通过修改这个INI 文件即可修改这些Glide仿真程序的设置。限于篇幅,这里就不做详细说明了。
以上介绍到的Glide仿真程序均可在作者的网站http://dcyane.163.net自由下载 ,此外,在http://www.game.expert.net.tw/N64emu.htm和http://www.gdnt.co m.cn/emu/n64dl.htm上也可以找到关于N64模拟器以及Glide仿真程序的最新消息 以及各种N64的ROM文件。
-- __ ____ _ _ __ __ _ _ ___ _ _ _____ ____
( ) (_ _)( \_( )( )( )( \/ ) / __)( )_( )( _ )( _ \
)(__ _)(_ )) (( )(__)( ) ( \__ \ ) _ ( )(_)( )___/
(____)(____)(_) (_)(______)(_/\_) (___/(_) (_)(_____)(__)
大量 Linux 文档,最新新闻,光盘邮购服务,技巧文章,历史简介,家族成员介绍
Http://benbow.163.net/ E-Mail:[email protected]
※ 来源:.月光软件站 http://www.moon-soft.com.[FROM: 202.130.8.30]
|
|