有任何上古卷轴的问题,请直接到MOD社区发帖求助

Oblivion Graphics Extender Standalone Effects

OBGEv3 Standalone Effects 是 OBGEv3 可选包的一部分,包含了整个 OBGE 项目已有的独立出来的画面特效,并且随带一个控制插件方便用户在游戏中调整。里面所有的特效都有很大的调整空间,所以玩家可以慢慢调整出自己想要的效果,并且涵盖了许多图像特效,包括环境光遮蔽(Ambient Occlusion), 抗锯齿(Anti-Aliasing filters), 光效(Lighting), 景深(Depth of Field)和 色彩特效(Colour effects)。
独立出来(Standalone)并不是说不需要OBGEv3 Core,事实上还是需要OBGEv3 Core的。Standalone 实际上的意思是这部分内容不会替换Oblivion原有的shader,只是简单的添加新的shader。这与OBGE的Shader模块是不一样的(Shader模块会替换游戏原有的Shader)。

安装 · Installation

首先,你必须先安装 OBGEv3 Core
下载 OBGEv3 Standalone Effects 时一共有两种版本:BAIN压缩包以及EXE安装程序。原则上,安装MOD时我们是不推荐使用exe安装,但是因为 OBGE 的复杂性,所以这次我们强烈建议用户使用exe安装。
(手动安装或者使用OMOD安装都是不建议……虽然有分享BAIN压缩包,但是官方也不推荐使用BAIN安装。)
所以,要安装 OBGEv3 Standalone Effects,请直接运行 OBGE_Effects_v31rc3.exe
安装时候每个选项的意思简单说一下:

  • In-game menus:也就是下面说的控制插件
    • The new Support Plugin (preview):新版插件(Support插件,预览版)
    • The new Controller Plugin (unmaintained):旧版插件稍作更新(Controller插件,未维修)
  • Effects:选择你要安装的特效
  • Updated for mods:特效更新

另外,安装控制插件的话,你还需要修改文件 Data\menus\main\hud_main_menu.xml 。EXE安装包仅支持修改原版的文件,所以如果你使用了 Immersive InterfaceDarNified UI 或者 DarkUI’d DarN 的,你需要手动修改,具体步骤如下:

  1. 用文本编辑工具打开文件 Data\menus\main\hud_main_menu.xml
  2. 往文件内添加文本 <include src=”OBGEController\OBGEController.xml” />
    • DarNified UI 或者 DarkUI’d DarN 用户,添加在 <include src=”darn\hud_settings.xml” /> 下一行;
      OBGEv3 Standalone Effects XML 修改
    • 其他用户直接添加在 <menu name=”HUDMainMenu”> 下一行
  3. 保存文件

想要让效果在游戏中生效,你必须把他们添加到shaderlist内,详见底部的 使用Shaderlist
用shaderlist成功加载效果后,你可以在游戏中使用控制插件修改每个效果的参数,详见底部的 使用控制插件编辑效果参数

卸载 · Uninstallation

如果你有使用控制插件,直接卸载 OBGEv3 Standalone Effects 可能会读档时跳出,为了避免此类问题发生,请务必按照以下操作卸载:

  1. 打开 我的文档\My Games\Oblivion\OBGE.ini,设置 bSaveData=0
  2. 读取存档并保存新档;
  3. 用MOD管理工具(OBMM或者WB)取消控制插件;
  4. 再次读取存档并保存新档;
  5. 卸载 OBGEv3 Standalone Effects 。

卸载 OBGEv3 Standalone Effects 的方法是借助之前安装时创建的卸载程序,你可以在开始菜单里面找到。
或者也可以直接在游戏目录中找到,名字一般为 uninst000.exe 或者 uninst001.exe、uninst002.exe ,具体是哪个你得自己判断……

OBGEv3 Standalone Effects

以下是安装包里面所有的效果……更确切的说是T网上下载得到的效果。不包括后面增加的内容,也不包括论坛上更新的内容,所以你会发现版本不匹配或者部分效果没有说明……
版本号是从shader文件内部整理出来的,没有表示质量好坏的意思。

Lighting 特效

  • Godrays (v4.2) – Godrays.fx
    • 太阳光会有放射效果。仅能在特定时间段才能看到。这是一个SM3特效。
  • Screen Space Indirect Illumination (SSII) – SSII.fx
    • 添加全局照明(Global Illmination),从而添加间接光照到屏幕中,模拟光投射在彩色物品上产生的反射效果。这是一个SM3特效。
  • Volumetric Screen Space Indirect Illumination – Volumetric_SSII.fx
    • 添加全局照明(Global Illmination),从而添加间接光照到屏幕中,模拟光投射在彩色物品上产生的反射效果。这是一个SM3特效。
  • Volumetric Screen Space Global Illumination – Volumetric_SSGI.fx
    • 添加全局照明(Global Illmination),从而添加间接光照到屏幕中,模拟光投射在彩色物品上产生的反射效果。这是 Volumetric SSAO 和 Volumetric SSII 的整合。这是一个SM3特效。

Ambient Occlusion 特效

添加特定风格的光源从而增加游戏中的景深以及对比度,常见的方式有暗化凹部细节(想进一步了解AO的可以阅读 Ambient Occlusion)。可供选择的AO特效有两种:水平环境光遮蔽(Horizon-Based AO,即HBAO)和 屏幕空间环境光遮蔽(Screen Space AO,即SSAO)。这边全部都是SM3特效:

  • Screen Space Ambient Occlusion – ssao_test.fx
    • 中等质量的AO特效,但是对性能有很大的影响。
  • Performance Screen Space Ambient Occlusion – ssao_perf.fx
    • 中低质量的AO特效,对性能有中等影响。
  • Ring Screen Space Ambient Occlusion – Ring_SSAO.fx
    • 细微、中等质量的AO特效,对性能有较小影响。
  • Halo Ambient Occlusion – Halo_SSAO.fx
    • 细微、中等质量的AO特效,对性能有微小影响。
  • Crysis Ambient Occlusion – CrysisAO.fx
    • 移植孤岛危机的AO特效(不包含模糊特效)。
  • Volumetric Screen Space Ambient Occlusion – Volumetric_SSAO.fx
    • 高质量、精准的AO特效,对性能有较小影响。
  • Horizon-Based Ambient Occlusion – HBAO.fx
    • 最高质量的AO特效,但是对性能会有很大的影响。
  • High Definition Ambient Occlusion – HDAO.fx
    • 中等质量的AO特效,对性能的影响相对较低。来自于ATI中DirectX开发包的样本实例。

Depth of Field 特效

添加景深特效(Depth of Field,简称DoF):以十字叉丝为聚焦点,距离越远,物体会越模糊,或者是远处模糊,即以玩家为中心,距离玩家越远,物体会越模糊。

  • Crysis Depth of Field (v1) – CrysisDoF.fx
    • 移植《孤岛危机:弹头》的景深特效到Oblivion中。这是一个SM3特效。
  • Depth of Field (v7) – DepthOfField.fx
    • 受ATI对DoF的介绍的启发,基于深度,不同方向会有不同的模糊程度。
  • Hexagonal Bokeh Depth of Field – Bokeh_Hexagon_DoF.fx
    • 焦外成像特效,会有一个六边形的模糊图形,没有远处模糊选项。高质量,但对性能会有最大的影响。这是一个SM3特效。
  • Circular Bokeh Depth of Field – Bokeh_Circle_DoF.fx
    • 焦外成像特效,会有一个六边形的模糊图形,没有远处模糊选项。高质量,但对性能会有最大的影响。这是一个SM3特效。
  • Pseudo-Bokeh Depth of Field – Pseudo_Bokeh_DoF.fx
    • 本来是Knu制作给MGE的特效,但由tomerk移植到OBGE里。这是一个SM3特效。

Colour 特效

  • Bleach Bypass – HLSLbleachbypass.fx
    • 饱和度降低,对比度增强。
  • Color Grading – HLSLColorGrading03.fx
    • 细微地减弱饱和度,从而使屏幕中颜色达到一种平衡。这是一个SM3特效。
  • Color Effects (v5) – ColorEffects.fx
    • 添加众多类似于PhotoShop的色彩特效,包括luminosity-dependent film grain, sepia, saturation/contrast/brightness alteration, gamma contrast/brightness alteration, colour inversion 和 blur highlighting。这是一个SM3特效。
  • Crysis Color Mood (v0.2) – ColorMood.fx
    • 淡化屏幕颜色以修改游戏的风格,类似于孤岛危机的风格,
  • ENB Color Effect (v2) – ENBColorEffect.fx
    • 本来是ENB系列中的一个特效,但由WrinklyNinja移植到OBGE并进行了优化。修改了屏幕的色彩平衡 。

Filter 特效

  • Normal Filter Anti-Aliasing – NormalFilterAA.fx
    • 增加抗锯齿特效,以减少物体边缘的“锯齿”。这是一个SM3特效。
  • Morphological Line-Antialiasing – MLAA.fx
    • 增加抗锯齿特效,以减少物体边缘的“锯齿”。这是一个SM3特效。
  • Directional Localized-Antialiasing – DLAA.fx
    • 增加抗锯齿特效,以减少物体边缘的“锯齿”。这是一个SM3特效。
  • FX-Antialiasing v2 – FXAA2.fx
    • 增加抗锯齿特效,以减少物体边缘的“锯齿”。这是一个SM3特效。基于FXAA 2.0,最高质量。
  • FX-Antialiasing v3 – FXAA3.fx
    • 增加抗锯齿特效,以减少物体边缘的“锯齿”。这是一个SM3特效。基于FXAA 3.9,最高质量。
  • Morphological Directional Localized-Antialiasing – MDLAA.fx
    • MLAA与DLAA的融合。针对速度进行了优化。MLAA用在foilage and hard breaks in depth,DLAA用于平滑锯齿。这是一个SM3特效。
  • Morphological FX-Antialiasing v3 – MFXAA.fx
    • MLAA与FXAA的融合。针对速度进行了优化。MLAA用在foilage and hard breaks in depth,FXAA负责剩余的项目。

其他特效

  • CelShader+EdgeAA (v0.3) – CelShader+EdgeAA.fx
    • 在物体边缘添加类似于卡通的黑色边框,就像无主之地,同时能够实现平滑物体边缘的效果。这是一个SM3特效。
  • Sharpen – obsharpen.fx
    • 锐化画面。
  • Vignetting – HLSLvignette.fx
    • 添加镜头渐晕特效,减少画面角落处的饱和度并使其暗化。

使用Shaderlist

shaderlist 是 OBGEv3 用来判断需要加载哪项特效、不加载哪项特效的媒介。如果你想要加载某项特效,你可以参考下面的步骤:

  1. 打开 我的文档\My Games\Oblivion\OBGE.ini,设置 bUseEffectList=1
  2. 打开目录 Oblivion\Data\Shaders ,检查是否存在文件 shaderlist.txt ,没有的话自己创建。建议关闭“自动隐藏已知文件后缀名”避免把文件弄成 shaderlist.txt.txt 。
  3. 打开 shaderlist.txt ,然后输入你想要加载的特效,注意名字要准确输入,并且不要忘了后缀名.fx
    • 在特效后面添加”=0″表示编译该特效但是不在游戏中应用,如”HLSLvignette.fx=0″表示不在游戏中应用HLSLvignette.fx(但依旧会编译HLSLvignette.fx);
    • 在特效后面添加”=1″表示编译该特效并在游戏中应用;
    • 如果不指定”=0″或者”=1″的话,OBGEv3将默认其为”=1″。

shaderlists定义完需要加载的特效后,OBGE不一定会按照 shaderlist 里面的顺序加载特效,因为不同类型的特效需要按照特定的顺序加载,举个例子:Ambient Occlusion 特效必须在 Colour 特效前面加载,所以不论你在 shaderlist 里面按照什么顺序排序这些特效,OBGEv3 还是会按照它的方式依次加载。
不过上面提到的是:某一类 特效必须在 某一类 特效前面加载。剩下的,某一类 里面的特效的加载则按照你在 shaderlist 指定的顺序加载。也就是说,加载 Colour 特效时,列在前面的特效会先加载,列在后面的则后面加载。
如果这两个特效都放在 Ambient Occlusion 特效,那么 Ambient Occlusion 特效还是会先加载,因为 Ambient Occlusion 永远在 Colour 前面加载。

不是 OBGEv3 本身的特效不要写在 shaderlist.txt 里面,这些特效是其他mod需要的,如果写在这边会导致失效。
好吧,说清楚点,属于 OBGEv3 本身的特效,就是上面提到的,其它的,像 Realistic Health 使用的 RealisticHealth.fx 就不要写在 shaderlist.txt 里面了。

使用控制插件

控制插件用来在游戏中编辑已加载特效的配置,并且可以关闭/开启特效。

使用控制插件之前,请先确保插件在列表中已勾选,完后才进入游戏操作:

  • 上页(PageUp):开启/关闭控制菜单;
  • 下页(PageDown):在主菜单特效选择与详细配置页面相互切换;
    • 在 DoF_focus_target 菜单,可移动绿色“+”到你想修改对象;
    • 在 slot 菜单,则用来打开 slot settings 菜单。
  • ↑/↓:移动光标;
  • ←/→
    • slot 菜单内:用来修改 slot ;
    • 对于已选择的特效:←/→用来开启/关闭特效
    • 对于选定特效配置:增加/减少数值
      • 一般情况下,每次步进0.1
      • Alt + ←/→,每次步进 0.001;
      • Ctrl + ←/→,每次步进 0.01;
      • Shift + ←/→,每次步进 1.0;

如果你在 slot settings 设置了 Interior, Exterior, 1st Person 和 3rd Person。那么当你从室内(Interior)移动到室外(Exterior)(室外移动到室内)或者切换第一人称和第三人称时,OBGE会自动切换到对应的配置。

如果你开启了 Godrays 特效的话,在进入室内时系统会自动关闭 Godrays ,回到室外时又会自动开启。
在控制菜单里你可以看到自动关闭的特效旁边都有”*”标志。

如果安装了 Conscribe 的话,你还可以自动导入/导出你的 slot 设置。详细设置保存在 Data\ConScribe Logs\Per-Mod\OBGE_Controller_settings.log 内。

如果觉得上面的快捷键使用不方便,可以在 Data\ini\OBGE Controller.ini 里面修改。

特别需要提醒的是,如果你开启了 SSAO 或者 SSAO Performance (不包括 SSAO Ring 或者 Volumetric)特效的话,载入游戏是读取特效的时间会很明显的变长,与不加载比较会多出 10 倍左右的时间。这主要是因为这两个特效的复杂性。所有的特效都需要编译,而控制插件会加载所有它找得到的OBGEv3特效,所以没有用的特效就删掉,这样能减少加载时间。

编辑效果参数

上面说的,你可以使用控制插件修改参数,然后下次读档时只要加载控制插件它就会帮你加载之前的参数。

这边提供另外一种修改特效参数的方法:你可以直接修改特效对应的 .fx 文件,文件都在 Data\Shaders 目录内,推荐用文本编辑器打开文件,比如 记事本、Notepad++(语言选择 C 的话会比较好阅读)。

不过,以上两种方法不可以同时使用。.fx文件中的数值其实就是默认数值,读档时仅当 没有保存该特效的相关数值 或者 旧档保存时没有激活控制插件 时才会应用文件中的数值。

如果你希望把控制插件保存的数值移植到.fx文件内,你必须先取消插件,读档并存新档从而删除所有已保存的数值,这以后你才去修改.fx文件。

控制插件对特效的保存与读取也可以通过 OBGE.ini 里面的 bSaveData 和 bLoadData 两个参数控制。但是这也会影响到其他需要依赖 OBGE 才能运行的插件的正常工作。所以你如果在使用这类插件的话,不建议你修改这两个参数(bSaveData 和 bLoadData)……除非你确切清楚自己这么做的原因。

这边简单说下怎么修改.fx文件:以 ColorMood.fx 为例,你只能修改下图中紫色的数字。
ColorMood.fx 修改

icedream

About icedream

其实我知道的东西很少,只是翻译了一些东西,悲催的是翻译过后很快就忘了。

,

5 Responses to Oblivion Graphics Extender Standalone Effects

  1. saufall 2013 年 3 月 23 日 at 下午 2:53 #

    在特效后面添加”=0″表示编译该特效并在游戏中应用;
    应该是添加=1.。。
    还有问下,为什么我在shaderlist开启了coloreffct,读取存档的时候刚开始有效果,可是过一会儿效果又消失了呢?我还安装了water和sky

    • icedream 2013 年 3 月 23 日 at 下午 2:58 #

      不知道,你可以阅读下log看看是怎么回事。

  2. tommy 2013 年 9 月 13 日 at 下午 8:04 #

    31r4改了,用哪个shader可以具体设置了,在shaderlist.txt里了

  3. tommy 2013 年 9 月 13 日 at 下午 8:10 #

    OBGE_v31rc4给装了个menusysframework.esm和三个esp,但是wb识别不了,不知道怎么搞了

  4. tommy 2013 年 9 月 13 日 at 下午 8:49 #

    用了一会obge,不比enb差,在老滚4上比enb的效果好太多了,CelShader+EdgeAA.fx很好玩,像无主之地一样。
    不知道老滚5有没有obge,有的话可以玩玩。
    看来无论多老的游戏,对硬件的要求总是可以很高啊,只要能用上新的图形技术,都能优化好多。
    多谢分享教程!