• Вход / Регистрация
    Логин:
    Пароль:
Страница 406 из 450«12404405406407408449450»
Архив - только для чтения
Форум GtaMania.ru » Сайт и форум » Архив » ENB Series GTA 4 (Часть IV) (Ваши настройки, инструкции, вопросы и т.д.)
ENB Series GTA 4 (Часть IV)
offline
 memphis
Дата: Понедельник, 2012-04-02, 23:30 | Сообщение # 1
Гангстер
Сообщений: 2690
ENBSeries GTA IV (Часть IV). (I), (II), (III)



Прежде чем обращаться в эту тему, советуем ознакомиться с FAQ. Вдруг там уже есть ответ на Ваш вопрос?

Информация, обязательная к прочтению:
Все сообщения, никаким образом не касающиеся темы обсуждения ENB, будут удаляться, а авторы - наказываться без предупреждения.
Для тех, кому не понятно, что изложено выше, - формулировка слегка проще: флуд в данной теме запрещен, причем в любых его проявлениях, спасибо за внимание, надеемся на ваше благоразумие.

Максимальный размер публикуемого изображения без превью не должен превышать 300px по большей стороне.
Все скриншоты и видео прятать под спойлер!

Тэг spoiler используется именно так, как показано в п.2.7 правил сайта. Обратите внимание на кавычки и проверьте перед отправкой сообщения, так ли это оформили Вы.







 
offline
 Orangebrains
Дата: Вторник, 2013-07-23, 17:19 | Сообщение # 6076
Гангстер
Сообщений: 615
denni732, у меня была такая проблема на старом компе. Долго пытался решить, в итоге Юг сказал, что если есть в компе слабое звено, то Инжект и прочее работать не будет. Пока новый комп не купил, сидел без фхаа.
 
offline
 denni732
Дата: Вторник, 2013-07-23, 17:23 | Сообщение # 6077
Модератор
Сообщений: 261
Orangebrains, ну в общем так я и думал, комп на свалку :D
просто без дополнительного dll енб становится не полное )
эффект совсем другой )


My Gallery

Правила сайта и форума
 
offline
 Orangebrains
Дата: Вторник, 2013-07-23, 17:24 | Сообщение # 6078
Гангстер
Сообщений: 615
denni732, есть вариант обновить дрова, библиотеки и прочее. Но все равно, вряд ли это поможет.
 
offline
 denni732
Дата: Вторник, 2013-07-23, 17:35 | Сообщение # 6079
Модератор
Сообщений: 261
Orangebrains, дрова вчера скачал с сайта nvidia самые последние для своей видюхи )
да ну в общем и ладно )
у меня просто енб без этого доп. dll выглядит не так как должен, темный очень, и т.д. )


My Gallery

Правила сайта и форума


Сообщение отредактировал denni732 - Вторник, 2013-07-23, 17:37
 
offline
 Orangebrains
Дата: Вторник, 2013-07-23, 18:28 | Сообщение # 6080
Гангстер
Сообщений: 615
denni732, скачай енб, где дополнительная библиотека не требуется. Например мой енб. Там в инжекте только шарп.

 
offline
 Orangebrains
Дата: Среда, 2013-07-24, 00:26 | Сообщение # 6081
Гангстер
Сообщений: 615
Недавно заметил, но никак руки не доходили написать про это.
Если в 163 енб зажать F12, то все подъезды и двери домов будут подсвечены зеленым и фпс упадет в 2 раза. Для чего это и что это?
 
offline
 Simple999
Дата: Среда, 2013-07-24, 09:24 | Сообщение # 6082
Гангстер
Сообщений: 1000
Orangebrains,
У Бори спроси. Он наверно знает :D

Всем,
Смотрим мой прогресс в настройке, только приехала с командировки )
[spoiler="nvg 0.2"]




[/spoiler]


? 21.12.2013 - Дней на сайте: 999


Сообщение отредактировал Simple999 - Среда, 2013-07-24, 09:25
 
offline
 lexikon
Дата: Среда, 2013-07-24, 10:50 | Сообщение # 6083
Пользователь
Сообщений: 6
подскажите пожалуйста :)
не хочу убирать совсем DOF, но хотелось бы уменьшить размытие и сделать его дальше :)
есть вот такой enbeffect.fx
[spoiler="enbeffect.fx"]//++++++++++++++++++++++++++++++++++++++++++++
// ENBSeries effect file
// visit http://enbdev.com for updates
// Copyright 2010 © Boris Vorontsov
//
// Using decompiled shader of GTA4 game by
// Rockstar Games.
//++++++++++++++++++++++++++++++++++++++++++++
// DoF code from AMD.
// Tonemapping code from filmicgames.com
// converted by gp65cj04
// Codes & Shaders are made by ICELAGLACE & DPEASANT3 & DKT70 & GP65CJ04 & BORIS
//++++++++++++++++++++++++++++++++++++++++++++

//NOTE: enable or disable these
//to disable, write // symbols before #define
//#define APPLYGAMECOLORCORRECTION //use contrast, brightness, saturation from game
#define AUTOFOCUS

int DoF_TAPS = 24; // qulity: 8 or 24.
int PixelSizeMultiplier = 1; // set this value to 2 when you active SSAA.

float2 FocusPoint = float2(0.5, 0.45);

float EColorSaturation = 0.98;
float BP_factor = 0.10;

float fRatio = 0.02;
float moodR = 1.0;
float moodG = 1.0;
float moodB = 1.0;

float EBrightnessV2 = 3.3;
float Contrast = 1.6;
float A = 0.20; // Shoulder Strength
float B = 1.50; // Linear Strength
float C = 0.20; // Linear Angle
float D = 1.90; // Toe Strength
float E = 0.02; // Toe Numerator
float F = 1.50; // Toe Denominator
float W = 11.0; // White Scale

float EBloomAmount = 0.40;
float BloomR = 1.00;
float BloomG = 1.00;
float BloomB = 1.00;

float VignetteAmount = 0.15;

// sampler2D AdapLumSampler;
// sampler2D BloomSampler;
// float4 ColorCorrect;
// float4 ColorShift;
// float Exposure;
// sampler2D GBufferTextureSampler2;
// sampler2D GBufferTextureSampler3;
// sampler2D HDRSampler;
// sampler2D JitterSampler;
// float PLAYER_MASK;
// sampler2D StencilCopySampler;
// float4 TexelSize;
// float4 ToneMapParams;
// float4 deSatContrastGamma;
// float4 dofBlur;
// float4 dofDist;
// float4 dofProj;
// float gDirectionalMotionBlurLength;
// float4 globalScreenSize;
// row_major float4x4 motionBlurMatrix;
//
//
// Registers:
//
// Name Reg Size
// ---------------------------- ----- ----
// globalScreenSize c44 1
// Exposure c66 1
// motionBlurMatrix c72 4
// TexelSize c76 1
// dofProj c77 1
// dofDist c78 1
// dofBlur c79 1
// gDirectionalMotionBlurLength c80 1
// ToneMapParams c81 1
// deSatContrastGamma c82 1
// ColorCorrect c83 1
// ColorShift c84 1
// PLAYER_MASK c85 1
// GBufferTextureSampler2 s0 1
// GBufferTextureSampler3 s1 1
// HDRSampler s2 1
// BloomSampler s3 1
// AdapLumSampler s4 1
// JitterSampler s5 1
// StencilCopySampler s6 1

//quad
struct VS_OUTPUT_POST
{
float4 vpos : POSITION;
float2 txcoord0 : TEXCOORD0;
};
struct VS_INPUT_POST
{
float3 pos : POSITION;
float2 txcoord0 : TEXCOORD0;
};

//int4 _i0 : register(i0);

/*
float4 _c0 : register(c0);
float4 _c1 : register(c1);
float4 _c2 : register(c2);
float4 _c3 : register(c3);
float4 _c4 : register(c4);
float4 _c5 : register(c5);
float4 _c6 : register(c6);
*/
float4 _c44 : register(c44);
float4 _c66 : register(c66);
float4 _c72 : register(c72);
float4 _c73 : register(c73);
float4 _c74 : register(c74);
float4 _c75 : register(c75);
float4 _c76 : register(c76);
float4 _c77 : register(c77);
float4 _c78 : register(c78);
float4 _c79 : register(c79);
float4 _c80 : register(c80);
float4 _c81 : register(c81);
float4 _c82 : register(c82);
float4 _c83 : register(c83);
float4 _c84 : register(c84);
float4 _c85 : register(c85);
float maxi : register(c86);
float temp : register(c87);

texture2D texs0 : register(s0);
texture2D texs1 : register(s1);
texture2D texs2 : register(s2);
texture2D texs3 : register(s3);
texture2D texs4 : register(s4);
texture2D texs5 : register(s5);
texture2D texs6 : register(s6);
texture2D texs7 : register(s7);
texture2D texs13 : register(s13);//palette
texture2D texs15 : register(s15);
//sampler2D s0=sampler_state { Texture=<texs0>; };
//sampler2D s1=sampler_state { Texture=<texs1>; };
sampler2D s2=sampler_state { Texture=<texs2>; };
//sampler2D s3=sampler_state { Texture=<texs3>; };
sampler2D s4=sampler_state { Texture=<texs4>; };
sampler2D s5=sampler_state { Texture=<texs5>; };
sampler2D s6=sampler_state { Texture=<texs6>; };
sampler2D s7=sampler_state { Texture=<texs7>; };
//sampler2D s13=sampler_state { Texture=<texs13>; };
sampler2D s15=sampler_state { Texture=<texs15>; };

//next samplers states fixing problems on ATI cards
sampler2D s0 = sampler_state
{
Texture = <texs0>;
MinFilter = LINEAR;//
MagFilter = LINEAR;//
MipFilter = NONE;//NONE;//LINEAR;
AddressU = Clamp;
AddressV = Clamp;
SRGBTexture=FALSE;
MaxMipLevel=0;
MipMapLodBias=0;
};

sampler2D s1 = sampler_state
{
Texture = <texs1>;
MinFilter = LINEAR;//
MagFilter = LINEAR;//
MipFilter = NONE;//NONE;//LINEAR;
AddressU = Clamp;
AddressV = Clamp;
SRGBTexture=FALSE;
MaxMipLevel=0;
MipMapLodBias=0;
};

sampler2D s3 = sampler_state
{
Texture = <texs3>;
MinFilter = LINEAR;//
MagFilter = LINEAR;//
MipFilter = NONE;//NONE;//LINEAR;
AddressU = Clamp;
AddressV = Clamp;
SRGBTexture=FALSE;
MaxMipLevel=0;
MipMapLodBias=0;
};

sampler2D s13 = sampler_state
{
Texture = <texs13>;
MinFilter = LINEAR;
MagFilter = LINEAR;
MipFilter = NONE;
AddressU = Clamp;
AddressV = Clamp;
SRGBTexture=FALSE;
MaxMipLevel=0;
MipMapLodBias=0;
};

//+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
//
//+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

float4 PS_C215BE6E(VS_OUTPUT_POST IN) : COLOR
{
float4 _oC0=0.0; //output

float4 _c0=float4(0, 0.212500006, 0.715399981, 0.0720999986);
float4 _c1=float4(0.25, 1, 256, 0);
float4 _c2=float4(0, 2, 4, 8);
float4 _c3=float4(58.1640015, 47.1300011, 0, 0);
float4 _c4=float4(-0.5, -1.5, 1.5, 0.5);
float4 _c5=float4(2, -1, 0.125, 0);
float4 _c6=float4(256, 2, 4, 8);
//mine
float4 _c7=float4(1.0, 0.1, 0.8, 1.0);
float4 _c8=float4(0.0, 0.1, 0.8, 0.333);
float4 _c9=float4(0.06, 0.1, 0.8, 0.1);
float4 _c10=float4(0.01, 1.4, 0.0, 0.32);
float4 _c11=float4(0.333333, 1.0, 0.0, 0.0);
//float4 _c12=float4(0.27, 0.67, 0.06, 0.0);
float4 _c12=float4(0.299, 0.587, 0.114, 0.0);
float4 _c13=float4(0.0, 0.0, 0.0, 0.00001);
float4 _c150=float4(0.55, 0.9, 0.85, 0.9);
float4 _c195=float4(0.0, 0.0, 0.0, 0.07);//0.7

float4 r0;
float4 r1;
float4 r2;
float4 r3;
float4 r4;
float4 r5;
float4 r6;
float4 r7;
float4 r8;
float4 r9;
float4 r10;
float4 r11;

float4 _v0=0.0;
_v0.xy=IN.txcoord0.xy;

r1=tex2D(s2, _v0.xy); //HDRSampler
r2=tex2D(s3, _v0.xy); //BloomSampler

//*************************

float2 center;
float depth;
float focus;

r0=tex2D(s1, _v0.xy); //GBufferTextureSampler3
r0.y=-_c77.x + _c77.y; //-dofProj.x + dofProj.y
r0.y=1.0/r0.y;
r0.z=r0.y * _c77.y; //dofProj.y
r0.z=r0.z * -_c77.x; //dofProj.x
r0.x=_c77.y * -r0.y + r0.x;
r0.x=1.0/r0.x;
r0.y=r0.z * r0.x;

r0.w=abs(_c79.w);
r3=_c4; //-0.5, -1.5, 1.5, 0.5

depth=r0.z * r0.x - _c78.w; //dofDist.w
depth+=_c78.y * -r3.w; //dofDist.y
depth+=148;//offset
center.x=_v0.x-0.5;
center.y=0.5-_v0.y;

float4 vDofParams = float4(-1000, 1.5, 10.0, 0.45);

//*************************************

#ifdef AUTOFOCUS

r4=tex2D(s1, FocusPoint); //GBufferTextureSampler3
r4.y=-_c77.x + _c77.y; //-dofProj.x + dofProj.y
r4.y=1/r4.y;
r4.z=r4.y * _c77.y; //dofProj.y
r4.z=r4.z * -_c77.x; //dofProj.x
r4.x=_c77.y * -r4.y + r4.x;
r4.x=1/r4.x;
r4.y=r4.z * r4.x;

float cdepth;

cdepth=r4.z * r4.x - _c78.w; //dofDist.w
cdepth+=_c78.y * -r3.w; //dofDist.y
cdepth+=148;//offset

r4.w = tex2D(s0, FocusPoint).w;
if(r4.w > 0)
{
vDofParams.z = cdepth*2;
vDofParams.y = cdepth;
}
#endif

//***************

depth = max(depth, 0); //fix zoom bug

float dist;

if(depth < vDofParams.y)
dist = (depth - vDofParams.y)/(vDofParams.y - vDofParams.x);
else
{
dist = (depth - vDofParams.y)/(vDofParams.z - vDofParams.y);
dist = clamp(dist, 0, vDofParams.w);
}

dist = dist * 0.5 + 0.5;

static float3 poisson[24]=
{
float3(1.0, 0.0, 1.0000 ), //0 degrees
float3(0.0, -1.0, 1.0000 ),
float3(-1.0, 0.0, 1.0000 ),
float3(0.0, 1.0, 1.0000 ),

float3(0.7071, 0.7071, 1.0000 ), //45 degrees
float3(0.7071, 0.7071, 1.0000 ),
float3(-0.7071, -0.7071, 1.0000 ),
float3(-0.7071, 0.7071, 1.0000 ),

float3(0.9659, 0.2588, 1.0000 ), //15 degrees
float3(0.2588, -0.9659, 1.0000 ),
float3(-0.9659, -0.2588, 1.0000 ),
float3(-0.2588, 0.9659, 1.0000 ),

float3(0.8660, 0.5000, 1.0000 ), //60 degrees
float3(0.5000, -0.8660, 1.0000 ),
float3(-0.8660, -0.5000, 1.0000 ),
float3(-0.5000, 0.8660, 1.0000 ),

float3(0.5000, 0.8660, 1.0000 ), //30 degrees
float3(0.8660, -0.5000, 1.0000 ),
float3(-0.5000, -0.8660, 1.0000 ),
float3(-0.8660, 0.5000, 1.0000 ),

float3(0.2588, 0.9659, 1.0000 ), //75 degrees
float3(0.9659, -0.2588, 1.0000 ),
float3(-0.2588, -0.9659, 1.0000 ),
float3(-0.9659, 0.2588, 1.0000 ),
};

float2 pixelSizeHigh;
float2 pixelSizeLow;

pixelSizeHigh.x = 1.000 / _c44.x;
pixelSizeHigh.y = 1.000 / _c44.y;

//pixelSizeHigh.x = 2.0 / _c44.x;
//pixelSizeHigh.y = 2.0 / _c44.y;

pixelSizeHigh.xy *= PixelSizeMultiplier;

pixelSizeLow.xy = pixelSizeHigh.xy;

float2 vMaxCoC = float2(6.0, 12.0);

float radiusScale = 0.5;

float discRadius;
float discRadiusLow;
float centerDepth;
float4 tdepth;

float4 tapHigh;
float4 tapLow;

centerDepth = dist;

discRadius = abs(centerDepth * vMaxCoC.y - vMaxCoC.x);
discRadiusLow = discRadius * radiusScale;

r1 = 0.0;

for(int t = 0; t < DoF_TAPS; t++)
{
float2 coordLow = _v0.xy + (pixelSizeLow.xy * poisson[t].xy * discRadiusLow);
float2 coordHigh = _v0.xy + (pixelSizeHigh.xy * poisson[t].xy * discRadius);

tapLow = tex2D(s2, coordLow.xy) * poisson[t].z;
tapHigh = tex2D(s2, coordHigh.xy) * poisson[t].z;

tdepth = tex2D(s1, coordHigh.xy); //GBufferTextureSampler3
tdepth.y = -_c77.x + _c77.y; //-dofProj.x + dofProj.y
tdepth.y = 1.0 / tdepth.y;
tdepth.z = tdepth.y * _c77.y; //dofProj.y
tdepth.z = tdepth.z * -_c77.x; //dofProj.x
tdepth.x = _c77.y * -tdepth.y + tdepth.x;
tdepth.x = 1.0 / tdepth.x;

tdepth.w = tdepth.z * tdepth.x - _c78.w; //dofDist.w
tdepth.w += _c78.y * -r3.w; //dofDist.y
tdepth.w += 148;//offset

tdepth.w = max(tdepth.w, 0); //fix zoom bug

if(tdepth.w < vDofParams.y)
tapHigh.w = (tdepth.w - vDofParams.y)/(vDofParams.y - vDofParams.x);
else
{
tapHigh.w = (tdepth.w - vDofParams.y)/(vDofParams.z - vDofParams.y);
tapHigh.w = clamp(tapHigh.w, 0, vDofParams.w);
}

tapHigh.w = tapHigh.w * 0.5 + 0.5;

tapLow.w = tapHigh.w;

float tapBlur = abs(tapHigh.w * 2.0 - 1.0);
float4 tap = lerp(tapHigh, tapLow, tapBlur);

if(tap.w >= centerDepth) tap.w = 1.0;
else tap.w = abs(tap.w * 2.0 - 1.0);

r1.xyz += tap.xyz * tap.w;
r1.w += tap.w;

}

r1.xyz /= r1.w;

//float4 dofcolor = r1;

//dofcolor.w = r1.w / DoF_TAPS;

//***************

r1.w=dot(r1.xyz, r1.xyz); //dp3
r1.w=1.0/r1.w;

//if (-r1.w<0.0) r3 = r1;
//else r3 = _c0.x;

r3 = lerp(_c0.x, r1, saturate(r1.w * 10000));

r4 = r3;
r5 = r3;
r6 = r3;
r7 = r3;

r0.x=r0.z * r0.x - _c78.w; //dofDist.w
r0.x=_c78.y * -r3.w + r0.x; //dofDist.y
r1.w=max(r0.x, _c0.x); //0.0
r0.x=1.0/_c78.z; //dofDist.z
r0.x=r1.w * r0.x;
r1.w=lerp(_c79.y, _c79.z, r0.x);//dofBlur
r0.x=min(_c79.z, r1.w); //dofBlur.z

r0.z=dot(r7.xyz, _c0.yzw); //0.212500006, 0.715399981, 0.0720999986
r8.x=dot(r3.xyz, _c0.yzw); //0.212500006, 0.715399981, 0.0720999986
r8.y=dot(r4.xyz, _c0.yzw); //0.212500006, 0.715399981, 0.0720999986
r8.z=dot(r5.xyz, _c0.yzw); //0.212500006, 0.715399981, 0.0720999986
r8.w=dot(r6.xyz, _c0.yzw); //0.212500006, 0.715399981, 0.0720999986
r1.w=dot(r8, _c1.xxxx); //0.25

r8=r8 - r1.w;
r2.w=dot(r8, r8);
r0.z=r0.z - r1.w;
r0.z=r0.z * r0.z - r2.w;
r0.x=r0.x*r0.x;
if (r0.z<0.0)
{
r0.x=r0.x;
} else r0.x=_c1.y; //1.0

r8=tex2D(s0, _v0.xy); //GBufferTextureSampler2

r8.yz=_c1.yz; // 1.0, 256.0
r9=r8.w * -r8.z + _c2; //0, 2, 4, 8
if (r9.w<0.0) //r9<0.0
{
r9=_c1.w; //0.0
} else r9=_c1.y; //1.0
//r9 is filtered sky mask

//r10=r8.w + tempc6;//c6.yzwx; //256, 2, 4, 8
r10=r8.w * -_c6.x + _c6.yzwx; //256, 2, 4, 8

if (r10.x<0.0)
{
r10.x=-_c1.w; //0.0
} else r10.x=-_c1.y; //1.0

if (r10.y<0.0)
{
r10.y=-_c1.w; //0.0
} else r10.y=-_c1.y; //1.0

if (r10.z<0.0)
{
r10.z=-_c1.w; //0.0
} else r10.z=-_c1.y; //1.0

if (r10.w<0.0)
{
r10.w=-_c1.w; //0.0
} else r10.w=-_c1.y; //1.0

r9=r9 + r10;
r9=r9 * _c4.x; //-0.5

r0.z=dot(r9, _c1.yyyy); //1.0
r0.z=r0.z + _c4.w; //0.5
r0.z=1.0/r0.z;
r8.xzw=r3.xyz * r9.x;

r7.xyz=r7 * _c4.w + r8.xzw; //0.5
r7.xyz=r4 * r9.y + r7;
r7.xyz=r5 * r9.z + r7;
r7.xyz=r6 * r9.w + r7;
r7.xyz=r0.z * r7;
r0.z=-r0.x + _c1.y; //1.0
r1.w=r0.x * _c1.x; //0.25

r3.xyz=r3 * r1.w;
r3.xyz=r7 * r0.z + r3;
r3.xyz=r4 * r1.w + r3;
r3.xyz=r5 * r1.w + r3;
r3.xyz=r6 * r1.w + r3;

//r4.xyz=_v0.yxy * _c5.x + _c5.y; //2, -1
r4.x=_v0.y * _c5.x + _c5.y;
r4.y=_v0.x * _c5.x + _c5.y;
r4.z=_v0.y * _c5.x + _c5.y;

r0.z=r4.y * _c77.z; //dofProj.z
r0.z=r0.y * r0.z;
r1.w=-r4.x * _c77.w; //dofProj.w
r1.w=r0.y * r1.w;
r5.xyz=r1.w * _c73; //motionBlurMatrix.2
r5.xyz=r0.z * _c72 + r5; //motionBlurMatrix.1
r5.xyz=-r0.y * _c74 + r5; //motionBlurMatrix.3
r5.xyz=r5 + _c75; //motionBlurMatrix.4

r0.y=-r5.z * _c77.z; //dofProj.z
r0.y=1.0/r0.y;
r6.x=r5.x * r0.y;
r0.y=r5.z * _c77.w; //dofProj.w
r0.y=1.0/r0.y;
r6.y=r5.y * r0.y;
//r0.yz=-r4 + r6.xxyw;
r0.yz=-r4.yz + r6.xy;

//r0.yz=r0 * _c80.x; //gDirectionalMotionBlurLength.x
r0.y=r0.y * _c80.x;
r0.z=r0.z * _c80.x;
//r4.xy=r0.yzzw * _c5.z; //0.125
r4.x=r0.y * _c5.z;
r4.y=r0.z * _c5.z;
r5=tex2D(s6, _v0.xy); //StencilCopySampler
r1.w=r5.x + -_c85.x; //PLAYER_MASK.x
r4.zw=r3.xyxy * _c2.w; //8.0
//r4.z=r3.x * _c2.w;
//r4.w=r3.y * _c2.w;
//r4.zw=_v0.xyxy * _c3.xyxy + r4; //58.1640015, 47.1300011
r4.z=_v0.x * _c3.x + r4.z; //v2
r4.w=_v0.y * _c3.y + r4.w; //v2
r5=tex2D(s5, r4.zw); //JitterSampler
r2.w=r5.x + _c4.x; //-0.5
//r4.zw=r4.xyxy * r2.w + _v0.xyxy; //v0
r4.zw=r4.xy * (r5.x - 4) + _v0.xy; //0.082 fixed
r5.xyz=r3.xyz;
r2.w=_c1.y; //1.0
r3.w=_c1.y; //1.0

//motion blur
for (int iii=0; iii<25; iii++)
{
// r6.xy=r4 * r3.w + r4.zwzw; //v0
r6.x=r4.x * r3.w + r4.z; //v2
r6.y=r4.y * r3.w + r4.w; //v2
r7=tex2D(s6, r6.xy);
r5.w=r7.x - _c85.x;
if (r5.w<0.3)
{
r5.w=_c1.y; //1.0
} else r5.w=_c1.w; //0.0
r6=tex2D(s2, r6.xy);
r5.xyz=r6.xyz * r5.w + r5.xyz;
r2.w=r2.w + r5.w;
r3.w=r3.w + _c1.y; //1.0
}

r2.w=1.0/r2.w;

//r0.yz=r0 * _c44.xxyw; //globalScreenSize
r0.y=r0.y * _c44.x; //globalScreenSize
r0.z=r0.z * _c44.y; //globalScreenSize

r0.y=dot(r0.yz, r0.yz)+_c0.x;//dp2

//r0.y=sqrt(r0.y);
//r0.y=1.0/r0.y;
r0.y=pow(r0.y, _c4.w); //0.5

r0.y=r0.y * _c4.w; //0.5
r0.x=r0.x + _c1.y; //1.0
r0.x=1.0/r0.x;
//r0.y is wrong
r0.x=saturate(r0.y * r0.x);
r4.xyz=r5 * r2.w - r3;
r0.xyz=r0.x * r4 + r3;

//_oC0.xyz=0.5*r0.xyz;

if (-r1.w<0.0) r0.xyz=r3.xyz;
if (-r0.w<0.0) r0.xyz=r1.xyz;

//for future use
r11=r0;

r1=tex2D(s4, _c0.x); //AdapLumSampler , 0.0
r0.w=1.0/r1.x;
r0.w=r0.w * _c81.y; //ToneMapParams.y
r1.x=1.0/r0.w;
r1.x=r1.x * _c81.x; //ToneMapParams.x
r1.xyz=r2 * _c66.x - r1.x; //Exposure.x
r2.xyz=max(r1, _c0.x); //0.0
r1.xyz=r2 * _c81.z; //ToneMapParams.z
r1.xyz=r1 * _c1.x; //0.25
r0.xyz=r0 * _c66.x + r1; //Exposure.x
r1.xyz=r0.w * r0;
r1.x=dot(r1.xyz, _c0.yzw); //0.2125, 0.7154, 0.0721
r0.xyz=r0 * r0.w - r1.x;
r0.xyz=_c82.x * r0 + r1.x; //deSatContrastGamma.x
r0.w=r1.x * _c84.w; //ColorShift.w
r1.yzw=r0.w * _c84.xxyz; //ColorShift

//darken as DarkeningAmount, but keeps colors
r2.x=saturate(r0.w);
r0.xyz=r0.xyz - _c84.xyz * r0.w; //ColorShift
r0.xyz=r2.x * r0.xyz + r1.yzww;

//coloring (green, brown, ...)
r0.xyz=2.0 * r0.xyz * _c83.xyz; //ColorCorrect

//keeps colors, changes luma
r1.x=saturate(r1.x);
r0.w=_c82.z - r8.y; //deSatContrastGamma.z
r2.x=pow(r1.x, r0.w);

_oC0.xyz=r0.xyz * r2.x; //orig
_oC0.w=_c1.y; //1.0

//MY CODE BEGINS HERE

//tonemap of brightness
//float grayorig=dot(c, c8.w);
//float gray=pow(grayorig, c199.z);
//c=c*gray/grayorig;

//TODO make adapration
r5=tex2D(s4, _c0.x);//adaptation luminance
//r5=1;

//DISABLED
//r0=tex2D(s2, _v0.xy);//hdr color
//r0=r11; //FROM ORIGINAL CODE AFTER BLUR

r0=r11+r0*1;

//adaptation
r5.w=r5.x;
r5.w=1.0/r5.w;
r0.xyz=r0 * r5.w;
r3.xy=_c10.xwxw;
r3.xy=r3.xy * r5.w;

r7=tex2D(s3, _v0.xy); //bloom
r7.r*=1.1;
r7.g*=1;
r7.b*=0.9;
r7=r7*(1-pow(1.2,-r7*1));
//HERE 0.1 is bloom factor 1, soft bloom
r0=r7*0.1 + r0;
r10=dot(r0.xyz, _c12.xyz); //luminance
r10=r10*1;
r0=r0*r10;

r0=(pow(r0*2,0.6))*0.3+r0*1;

r0=r0 * _c7.y; //pre multiply
r1=r0 * _c7.z; //e multiply
r1=r1+_c7.w;
r1.xyz=1.0/r1.xyz;
r0=r0*r1;
//HERE 0.8 is bloom for additive mix
r0=0.8*r7 * r3.x + r0; //c10.x

r0=(1-pow(2.4,-r0))*0.5+r0*0.8;

float middlegray=(r0.r+r0.g+r0.b)*0.33; //dot(r0.xyz, 0.333); //dot(r0.xyz, float3(0.27, 0.67, 0.06));
float3 diffcolor=r0.rgb-middlegray;
r0.rgb+=diffcolor*1;

/*
float luma=dot(r0.xyz,0.333);
float degree=luma*3.1415926*0.5;//0~90
degree=sin(degree);
distance*=0.0004;
distance+=0.04;
luma=pow(luma,3);
luma=pow(2.71,-luma*2)*degree;
//r0.rgb=0.0;
r0.r+=luma*clamp(distance,0.0,0.16);
r0.g+=luma*clamp(distance,0.0,0.16*1.2);
r0.b+=luma*clamp(distance,0.0,0.16*1.4)*1.15;
r0.xyz+=max(focus*0.025,0.04)*luma;
//r0.xyz=1.0;
//r0.xyz=max(r0.xyz-focus*0.2,0);
*/

r0.xyz=r0.xyz*0.6+sin(r0.xyz*3.1415926*0.5)*0.4;

_oC0.xyz=r0.xyz;

//_oC0.w=1.0;

return _oC0;
}

//mine temporary post process
technique Shader_C215BE6E
{
pass p0
{
PixelShader = compile ps_3_0 PS_C215BE6E();
}
} [/spoiler]
пробовал крутить по разному vDofParams :( не помогает
и еще в FAQ прочитал что в 0,163 есть EdgeAA...можно как то безболезненно перенести на существующие конфиги?
-----
и еще вопрос :) почему могут быть микро фризы при езде и ворочании мышкой? 100% уверен что дело в enb, т.к. без него или с другой версией фризов нет, fps = 40 - 50


Сообщение отредактировал lexikon - Среда, 2013-07-24, 11:00
 
offline
 dax1
Дата: Среда, 2013-07-24, 14:30 | Сообщение # 6084
Гангстер
Сообщений: 112
вроде щас у меня ссао без багов работает в дневное время
[spoiler="картинка"][/spoiler]
единственное сейчас нужно найти регистр из которого прёт эта зелень и перекрасить как то.


Я счастлив по умолчанию! Пожалуйста, не лезьте в настройки.
 
offline
 Orangebrains
Дата: Среда, 2013-07-24, 14:43 | Сообщение # 6085
Гангстер
Сообщений: 615
lexikon, уже я с каким-то парнем разибарл этот вопрос. Надо как раз-таки крутить
Код
float4 vDofParams = float4(-1000, 1.5, 10.0, 0.45);


Но аккуратно. Я, к сожалению, не знаю, что за что тут отвечает, так что помочь не могу. :( Можешь вынести контроллеры в шапку енбэффекта, чтобы тебе не надо было лазить так далеко, и крутить по-тихоньку.

Строчку с vDofParams замени на эту:

Код
float4 vDofParams = float4(temp1, temp2, temp3, temp4);


А в самый верх енбэффекта перед
Код
int DoF_TAPS = 24;
добавь это:
Код
float temp1 = -1000;
float temp2 = 1.5;
float temp3 = 10.0;
float temp4 = 0.45;

Так тебе будет проще крутить значения. А еще, можно просто поменять DOF на другой.

Simple999, пока что не вижу отличий от 0.1. Из всех скринов понравились только два. Те, что с синей ретро-машиной.
dax1, я тут почитал некоторые сообщения двухмесячной давности (когда ты тут только зарегался), и нашел очень интересное предложение от Юга. А почему бы тебе не заменить шейдер отражений шейдером воды? Ведь тогда, на авто будут отражаться не только статичные объекты, но и динамические. Главное, чтобы отражения выглядели правильно) Эо же реализуемо?
 
offline
 dax1
Дата: Среда, 2013-07-24, 15:17 | Сообщение # 6086
Гангстер
Сообщений: 112
Orangebrains, не получится просто такое, текстура глобальных отражений в семплере, если взять код из шейдера воды и добавить в этот шейдер к примеру то он будет не так работать, так будут другие данные на входе, такие которые не по дойдут, тут как бы обьснить всё не так просто, приведу пример вот например в в r1.x хранится инфа яркости канала цвета, ты на каком то этапе к примеру изменил содержимое этого регистра допустим снизив яркость этого канала для своих целей, и в нужном тебе месте получил что хотел, но тут вылезет бок что в том месте где была нужна другая яркость канала цвета он будет не подходить, если вставлять семплер отражений из шейдера воды в другой то просто в другом шейдере r регистры будет не подходящая инфа залетать короче.

Добавлено (2013-07-24, 15:04)
---------------------------------------------
может и можно конечно, но у меня для этого пока не хватает знаний и опыта, а теоретически можно что угодно сделать и если всё правильно то видюшка сжуёт и не подавится.

Добавлено (2013-07-24, 15:17)
---------------------------------------------
если к примеру брать ssao то семплер с ним стоит сразу после глобальных отражений, если к примеру его поднять выше и поставить перед семплером с глобальными отражениями то на выходе получится уже не ssao.



Я счастлив по умолчанию! Пожалуйста, не лезьте в настройки.
 
offline
 Orangebrains
Дата: Среда, 2013-07-24, 15:25 | Сообщение # 6087
Гангстер
Сообщений: 615
dax1, да, все немного сложнее, чем я думал.
А можно ведь сделать по-другому! Как-то раз Люмен говорил, что деревья не отражаются, ибо покрыты другим материалом, нежели деревья на кастомных картах. Так вот, может проще переделать шейдер деревьев? Или оригинальный шейдер деревьев заменить на шейдер материала кастомных карт?
 
offline
 dax1
Дата: Среда, 2013-07-24, 16:16 | Сообщение # 6088
Гангстер
Сообщений: 112
Orangebrains, можно по пробовать, я тебе даже скажу что пробовал, но у меня при этом деревья по другому выглядели, короче в уг они превращаются листва, ну и не шевелится на ветру, лучше тогда уж оригинальные деревья заменять на деревья с кастомных карт ибо там они уже сделаны по другому.

Добавлено (2013-07-24, 16:16)
---------------------------------------------
Orangebrains, лучше бы окна у зданий заменить на порталы которые iGROK то находил, но это всё что деревья что окна и т.д геморой, лучше тогда на фиг игру заменить :D


Я счастлив по умолчанию! Пожалуйста, не лезьте в настройки.


Сообщение отредактировал dax1 - Среда, 2013-07-24, 16:16
 
offline
 Orangebrains
Дата: Среда, 2013-07-24, 16:21 | Сообщение # 6089
Гангстер
Сообщений: 615
dax1, это будет выглядеть ужасно. Поверни камеру, когда ты стоишь у зеркала. Увидишь. что все изображение в зеркале ужасно искажается. Теперь представь несколько тысяч таких зеркал в ЛС. Поэтому это не вариант. Надо как-то по-другмоу пилить нормальные отражения.
 
offline
 dax1
Дата: Среда, 2013-07-24, 16:28 | Сообщение # 6090
Гангстер
Сообщений: 112
Orangebrains, да оно скорее всего так и так не покатит, потому что, наверняка отражает лишь ограничено, как нибудь, к примеру в фейковых отражениях которые я делал не отражалось небо, потому что в шейдере прямого освещения ни как небо не затрагивается, и конечная текстура это лишь земля и здания, а за место неба чернота.


Я счастлив по умолчанию! Пожалуйста, не лезьте в настройки.
 
Форум GtaMania.ru » Сайт и форум » Архив » ENB Series GTA 4 (Часть IV) (Ваши настройки, инструкции, вопросы и т.д.)
Страница 406 из 450«12404405406407408449450»
Поиск:

Реклама:
GtaMania.ru - это открытый ресурс, позволяющий публиковать материалы любому пользователю сети интернет. Администрация не несет ответственности за опубликованные пользователями материалы. Любой материал может быть удален по просьбе автора, при предъявлении сканированных копий документов подтверждающих авторские права на конкретный материал.
При копировании материалов, гиперссылка на http://gtamania.ru/ ОБЯЗАТЕЛЬНА!
| Design by SandWicH | Copyright GtaMania.ru © 2008 - 2016
Rambler's Top100