我想使用一个MODBetter Resource Warnings,可以在玩家状态不行的时候给游戏添加叠加层,类似于射击游戏残血红屏的效果。
但这个MOD要求enb支持“Apply game color correction”,而我使用的Scenery ENB VR不支持这个功能。
在Better Resource Warnings的评论区中,有人贴出了为enb添加这个功能的办法,就是修改enbeffect.fx文件
这是原文
FOR EVERYONE USING ENB:
This mod will not work if your enb doesn't support "Apply game color correction." (Rudy enb doesn't for example)
To fix it, first check if your ENB supports "Apply game color correction" or "image space". If yes, enable it in game in ENB (It will be in enb - Shift+enter -> enbeffect.fx)
NOTE THIS WILL SLIGHTLY ALTER THE COLORING OF YOUR GAME.
If your ENB doesn't support it, you can include it in your enb by hand like this: (note every enb is slightly different and it might not work first try, so BE SURE TO MAKE A BACKUP OF THE FILE)
go to your skyrim folder -> enbseries and open enbeffect.fx (not the ini) with notepad.
find the section where GUI variables are defined, usually they look something like this:
float Empty_Row10 <
string UIName="-------------------FADE"; string UIWidget="spinner"; float UIMin=0.0; float UIMax=0.0;
> = {0.0};
bool EnableFade
<
string UIName="Enable Fade Transition";
> = {true};
...
Scroll down until you see the style of code changed and paste the following code under:
int AGCC
<
string UIName="----------Apply Game Color Correction---------";
string UIWidget="spinner"; int UIMin=0; int UIMax=0;
> = {0.0};
bool ENABLE_AGCC
<
string UIName = "Apply Game Color Correction";
> = {false};
floatAGCC_Contrast <
string UIName="Contrast multiplier"; float UIMin=0.0; float UIMax=10.0;
> = {1.0};
floatAGCC_Saturation <
string UIName="Saturation multiplier"; float UIMin=0.0; float UIMax=10.0;
> = {1.0};
floatAGCC_Brightness <
string UIName="Brightness multiplier"; float UIMin=0.0; float UIMax=10.0;
> = {1.0};
Scroll down and some more and find function PS_DRAW, looks something like this:
float4 PS_Draw(VS_OUTPUT_POST IN, float4 v0 : SV_Position0, uniform Texture2D LUTtex, uniform bool enablelut) : SV_Target
{
float4res;
float4color;
...
Paste the following code near the top of it, in Rudy enb I pasted it right above Tapioks separation section:
if (ENABLE_AGCC==true) {
float saturation = Params01[3].x * AGCC_Saturation;
float contrast = Params01[3].z * AGCC_Contrast;
float brightness = Params01[3].w * AGCC_Brightness;
float3 tint_color = Params01[4].rgb;
float tint_weight = Params01[4].w;
color.a = dot(color.rgb, LumCoeff);
color.rgb = lerp(color.a, color.rgb, saturation);
color.rgb = lerp(color.rgb, tint_color * color.a , tint_weight);
color.rgb = lerp(TextureAdaptation.Sample(Sampler0, IN.txcoord0.xy).x.x, color.rgb * brightness, contrast);
color.rgb = pow(saturate(color.rgb), Params01[6].w);
color.a = 1.0;
}
Save, launch game. Pay attention if you have any red lines of errors in your enb description text when starting the game.
Open enb by Shift+enter. open tab enbeffect.fx (if you dont see it, there's an error in the file, probably because you pasted the second code in wrong place)
After some scrolling, you should see line "apply game color correction. Check it. If done correctly, your game changes color slightly and you now can see ingame color effects! Test using explosions, shouts, transformations, learning words etc.
...
大概的意思就是找到相应位置添加相应代码
我尝试照做,但是打开游戏爆红色错误
我估计大概率是我粘贴代码粘贴错位置了,可我完全不懂ENB
所以有大佬能教教我吗(
这里是原始的和我修改的enbeffect.fx文件
链接:https://pan.baidu.com/s/1pVUscF9MVc5p5wmLcGMkPw?pwd=xrns
提取码:xrns