• Вход / Регистрация
    Логин:
    Пароль:
Страница 212 из 450«12210211212213214449450»
Архив - только для чтения
Форум 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
 Bloodsfire
Дата: Вторник, 2012-11-06, 13:38 | Сообщение # 3166
Пользователь
Сообщений: 6
AgainstAllAutority, Чтож.. спасибо.. а если перейти на 1.0.3.0 , то много ли эффектов в ENB пропадет?


Поставил патч 1.0.4.0, в итоге все равно шрифт остался таким же. Хотя настройки графики уже не ерундят :D


AMD Phenom(tm) II x4 955 3.8 Ghz, 4 Gb(2х2) Corsair 1333 Mhz, Nvidia Zotac GTX 770 4gb 1150 Mhz


Сообщение отредактировал Bloodsfire - Вторник, 2012-11-06, 14:02
 
offline
 Spark98
Дата: Вторник, 2012-11-06, 13:52 | Сообщение # 3167
Пользователь
Сообщений: 94
AgainstAllAutority, спасибо за урок, извлек немного нового для себя. Создал чистый енбэффект по твоему уроку (5 кб я в шоке) и немного повозился с блумом. Думаю продолжение уроков будет? :) Хочется услышать про доф, его начинку и вообще как он работает. И тут же вопрос: можно ли создать код дофа, который почти не будет кушать фпс?
З.Ы. 2 скрина с новым енбэффектом


#NeRo by CrazY
Skype: spark1016394


Сообщение отредактировал Spark98 - Вторник, 2012-11-06, 13:53
 
offline
 AgainstAllAutority
Дата: Вторник, 2012-11-06, 14:52 | Сообщение # 3168
Гангстер
Сообщений: 801
Quote (Spark98)
Хочется услышать про доф, его начинку и вообще как он работает. И тут же вопрос: можно ли создать код дофа, который почти не будет кушать фпс?


можно почти все)) только надо проявить немного смекалки))
про доф чуть-чуть попозже расскажу, хочу дать вам немного поиграться, с тем, что уже есть, да и у себя по-сусекам пошустрить - у меня было много заготовок, надо подумать, как их показать.

Вообще тут буду показывать в первую очередь самые простые методики (на мой взгляд), считаю, что один раз заинтересовавшись - сами начнете искать аналоги и более продвинутые методики.

А ты молодец. Теперь попробуй добавить еще и зависимость от адаптации - закаты и зрны с перепадом яркостей станут на порядок интересней:
Code

// тут думаю лучше использовать вариант из сток эффекта
float4 adapt
adapt=tex2D(s4, 0);
adapt.w=adapt.x + 0.0001; // 0.0001 чтоб в 0 не уходило, можно увеличить
adapt.w = 1/adapt.w ;
color.rgb = color.rgb * adapt.w;
adapt.y = 0.1 * adapt.w; // адаптация для блума (крути 0.1)
// как вариант можно сделать зависимость от grayscale = dot(color.rgb, 0.333);
// типа adapt.y = lerp( 0.1 * adapt.w, 2 * adapt.w, saturate(grayscale) * 0.75);
// я сам такое не пробовал, но поэкспериментируй
bloom.rgb = bloom.rgb * adapt.y;


посмотри на сток-эффект от бориса, и подумай, где есть похожее (подсказка - r5 = tex2D(s4, _c0.x) ) и куда нао поставить этот кусок ;)




Сообщение отредактировал AgainstAllAutority - Вторник, 2012-11-06, 19:51
 
offline
 Compotik
Дата: Вторник, 2012-11-06, 14:57 | Сообщение # 3169
Гангстер
Сообщений: 159
Spark98, Вообще класс.

Мультик?Я переделал онли санни винди(она была розвоой и крайне странной),другие погоду или сделаны светлей,изменен вет неба и отражения с ночныю.Все окружение на санни винди очень классное по моему,небо голубей чем на санни,так как я хочу облачную погоду 2х типов с более голубым и менее насыщенным небом,вот сейчас у меня так и это на мой взгляд здорова,насыщенность цветов у меня средняя вот фото
[spoiler="Фото"]












[/spoiler]
 
offline
 hunter63
Дата: Вторник, 2012-11-06, 16:30 | Сообщение # 3170
Гангстер
Сообщений: 252
Compotik, Очень приятная картинка) Цвета не очень насыщенные(тем самым на них приятно смотреть) самое то. Конф становиться лучше и лучше :)


Процесор: Intel core I7 4930K 4.6 ghz
ОЗУ: 32 ГБ Corsair Domination 2133 mhz
Видеокарта: Nvidia 2х SLI Geforce gtx 780 3Gb Zotac 384 bit
Мой Skype-erick1987122
 
offline
 Spark98
Дата: Вторник, 2012-11-06, 18:25 | Сообщение # 3171
Пользователь
Сообщений: 94
Quote (AgainstAllAutority)
bloom = bloom.rgb * adapt.y;

Тут кажется ошибка. Если так оставить, то не работает вообще, но кое-как исправил)
А так, отличный кодик, с его помощью отрегулировал поведение блума + общую яркость. Thanks ;)
Есть ещё что-то чем бы ты мог меня удивить или порадовать? :)
Compotik, хорошо поработал, чувствуется мягкость, но насыщенности на 6 скрине с такси многовато. И где ты взял деревья? Мертвые вообще, как будто из пуха :D По мне так деревья из Openbeta лучшие)

Чуть не забыл:


#NeRo by CrazY
Skype: spark1016394


Сообщение отредактировал Spark98 - Вторник, 2012-11-06, 18:26
 
offline
 AgainstAllAutority
Дата: Вторник, 2012-11-06, 19:59 | Сообщение # 3172
Гангстер
Сообщений: 801
Spark98, хорошо...
Quote (Spark98)
Тут кажется ошибка

ага -> bloom.rgb = bloom.rgb * adapt.y;

теперь тебе надо добавить контраста картинке.. Это можно сделать либо после тоунмапинга в LDR, либо заменив технику маппинга или же добавив его перед (тем самым регулируя контраст в HDR)

[spoiler="гнусавым голосом"]
я для себя выработал примерно такую последовательность манипуляций/техник в enbeffect.fx

1. вспомогательные функции
2. вычисление глубины
3. техника ДоФ по полученной глубине
4. техника блюра по результату ДоФа (по ДоФ-фактору)
5. операции с HDR цветом (Блюр от ДоФа уже нанесен)
5а. адаптация
5б. блю-шифт
6. Тоунмап Цвета
7. операции с Блумом HDR
7а адаптация
7б блю шифт, или "золочение" или и то, и то
8. Тоунмап Блума
9. Операции с цветом и блумом раздельно LDR
10. сведение цвета и блума в LDR
11. пост-эффекты результирующей картинки LDR

[/spoiler]

Попробуй погугли в поисках шейдера для изменения контрастности изобажения... Форумы фотографов, геймдев, форумы игровых движков, исходники других enbeffect.fx или графических модов.... в общем информации море!

Если возникнет вопрос - как адаптировать код/шейдер под енб - пиши тут, я подскажу... сделаем "школу эффектов" интерактивной!! :D




Сообщение отредактировал AgainstAllAutority - Вторник, 2012-11-06, 20:07
 
offline
 z550i
Дата: Среда, 2012-11-07, 00:07 | Сообщение # 3173
Пользователь
Сообщений: 94
Народ помогите... как убрать размытость в далеке?
пробовал в enbeffect.fx искать параметры,но не нашел(
вот мой enbeffect.fx от Fake, помогите
[spoiler="enbeffect.fx"] //++++++++++++++++++++++++++++++++++++++++++++
// ENBSeries effect file
// visit http://enbdev.com for updates
// Copyright 2010 © Boris Vorontsov
//edited by dpeasant3, dkt70, icelaglace and gp65cj04
// Using decompiled shader of GTA4 game by
// Rockstar Games.
//++++++++++++++++++++++++++++++++++++++++++++
#define AUTOFOCUS
//#define DECORATE_BLACK_LINES // Thx to gp65cj04
//#define DECORATE_PATTERN_1 // Thx to gp65cj04

#define MAX_MOTION_BLUR_SAMPLES 23 // Thx to gp65cj04

int DoF_TAPS = 24; // quality
int PixelSizeMultiplier = 1.85; // set this value to 2 when you active SSAA.

float2 FocusPoint = float2(0.666, 0.5);

//#define BLOOM_DISTORTION

float BloomDistortionAmount=0.25;

//#define SSAA_ENABLE; // enable it when ForceAntialiasing=true. Thx to gp65cj04

float Exposure=0.00805;
float Contrast = 0.00001;
//
//
//
// 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

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 texDistorted(sampler2D tex, float2 uv, float2 offset)
{

float4 r0=0;
float3 distortion=float3(-0.01, 0.0, 0.01);
r0.x=tex2D(tex, uv.xy + offset.xy * distortion.x).x;
r0.y=tex2D(tex, uv.xy + offset.xy * distortion.y).y;
r0.z=tex2D(tex, uv.xy + offset.xy * distortion.z).z;
r0.w=1.0;

return r0;
}

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

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(-50, 1.5, 1000.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 ),
};
/*
static float3 poisson[5] =
{
float3 (0.809, 0.41, 1),
float3 (-0.809, 0.41, 1),
float3 (0, 1 , 1),
float3 (-0.58, -0.809, 1),
float3 (0.58, -0.809, 1)
};
*/
float2 pixelSizeHigh;
float2 pixelSizeLow;

#ifdef SSAA_ENABLE
pixelSizeHigh.xy=2.0 / _c44.xy;
#else
pixelSizeHigh.xy=1.0 / _c44.xy;
#endif

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;

//***************
r3=r1;
r0.x=1.0;

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.xyz; //motionBlurMatrix.2
r5.xyz+=r0.z * _c72.xyz; //motionBlurMatrix.1
r5.xyz+=-r0.y * _c74.xyz; //motionBlurMatrix.3
r5.xyz+=_c75.xyz; //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.yz + r6.xy;

r0.y=r0.y * _c80.x; //gDirectionalMotionBlurLength.x
r0.z=r0.z * _c80.x;

int motionBlurSamples=int(pow(_c80.x, 0.5) * MAX_MOTION_BLUR_SAMPLES);

r4.xy=r0.yz / (float(motionBlurSamples) + 1);

r5=tex2D(s6, _v0.xy); //StencilCopySampler
r1.w=r5.x - _c85.x; //PLAYER_MASK.x
r4.zw=r3.xy * _c2.w; //8.0
r4.zw=_v0.xy * _c3.xy + r4.zw; //58.1640015, 47.1300011
r5=tex2D(s5, r4.zw); //JitterSampler
r4.zw=r4.xy * (r5.x - (float(motionBlurSamples) + 1.0)*0.5) + _v0.xy; //fixed

r5.xyz=r3.xyz;
r2.w=_c1.y; //1.0
r3.w=_c1.y; //1.0

//motion blur
for(int iii=0; iii < motionBlurSamples; iii++)
{
float4 tempuv;
tempuv.xy=r4.xy * r3.w + r4.zw;
tempuv.zw=0;
r7=tex2Dlod(s6, tempuv);
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=tex2Dlod(s2, tempuv);
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.y=r0.y * _c44.x; //globalScreenSize
r0.z=r0.z * _c44.y; //globalScreenSize

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

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 * 0.15);
r4.xyz=r5.xyz * r2.w - r3.xyz;
r0.xyz=r0.x * r4.xyz + r3.xyz;

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

float4 origcolor = tex2D(s2, _v0.xy);

//r0 = lerp(origcolor, r0, autofocus);

//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
//Edited by dpeasant3, also credits go to DKT70 for his shader code and to the creators of L3EVO for DOF code and

//other shader codes below.
//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;
r0.xyz=1.85 * r0.xyz * _c83.xyz; //ColorCorrect
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.0;

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

r0=r11+r0*0.4;

float Dpeasant3=1.0;
float luma=dot(r0.xyz,_c12.xyz);
float cgray=dot(r0.xyz, 0.333);//luma

#ifdef BLOOM_DISTORTION
float3 poweredcolor=r5.w*texDistorted(s3, _v0.xy, BloomDistortionAmount);//0.5
#else
float3 poweredcolor=pow(r0.xyz, Dpeasant3);
#endif

float newgray=dot(poweredcolor.xyz, 0.333);
r0.xyz=poweredcolor.xyz*cgray/(newgray+0.0001);

//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;
float distance=depth;
r7=tex2D(s3, _v0.xy); //bloom

Dpeasant3=3.1;
luma=dot(r7.xyz,_c12.xyz);
cgray=dot(r7.xyz, 0.333);//luma
poweredcolor=pow(r7.xyz, Dpeasant3);
newgray=dot(poweredcolor.xyz, 0.333);
r7.xyz=poweredcolor.xyz*cgray/(newgray+0.0001);

r7.r*=lerp(0.023, 0.995, saturate(pow(distance/50.0, 1.0)));
r7.g*=lerp(0.023, 0.995, saturate(pow(distance/50.0, 1.0)));
r7.b*=lerp(0.023, 0.995, saturate(pow(distance/50.0, 1.0)));
r0=r7*0.2 + r0;

//HERE 0.1 is bloom factor 1, soft bloom
//r0=r7*0.3 + r0; //0.05 //TEMP DISABLED
r10=dot(r0.xyz, _c12.xyz); //luminance
r10=r10*0.5;

//r0*=max(r10,0.4);
r0*=r10;

r0=(pow(r0*2,0.25))*0.3+r0*0.7;

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.25*r7 * r3.x + r0; //c10.x

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

luma=dot(r0.xyz,_c12.xyz);
r0.xyz/=luma;
luma=3*pow(luma,2)+pow(r10*0.06,2);
luma/=4;
luma=pow(luma,0.5*0.8)+pow(luma,0.5*1.2);
luma*=0.5;
r0.xyz*=luma;

float Suckmyballs=dot(r0.xyz,_c12.xyz); //dot(r0.xyz, 0.333); //dot(r0.xyz, float3(0.27, 0.67, 0.06));
float3 diffcolor=r0.rgb-Suckmyballs;
r0.rgb+=diffcolor*1;

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

luma=saturate(dot(r0.xyz,0.333));
luma=pow(1.5+luma*6,-luma*3);
float3 correctedcolor=saturate((0.99-r0*0.15)*0.07);
//r0.rgb=saturate(r0.rgb-correctedcolor)*0.96;
//r0.rgb=pow(r0.rgb,0.93);

float Dpeasant=0.05;
float4 DKT={0.3, 0.23, 0.4, 0.0};
float4 FogColor2={10.53, 0.3, 0.3, 0.0}; //

float Exposure2=0.45;
float BlueShift=0.05;

//r0.rgb = max(0, r0.rgb - Dpeasant * DKT.rgb);
//r0.rgb *= pow(2.0f, Exposure);
r0.rgb *=lerp(pow(2.0f, Exposure), pow(100.0f, Exposure), saturate(pow(distance/550.0, 3.0)));
//r0.rgb *= pow(1.0f, Exposure2);
float3 d = r0.rgb * float3(1.05f, 0.97f, 1.27f);
//r0.rgb = lerp(r0.rgb, d, BlueShift);
//r0.xyz=r0.xyz*0.6+sin(r0.xyz*3.14*0.5)*0.4;
r0.xyz = saturate(r0.xyz);
r0.xyz = lerp(r0.xyz, 0.5 * (1 + sin((r0.xyz - 0.5)*3.1415926)), Contrast);
//float fRatio=lerp(0.5, 0.2, saturate(pow(distance/550.0, 3.0)));
float fRatio = 0.02; // blend ratio (0-1)
float moodR = 0.5; // mood color red component
float moodG = 0.6; // mood color green component
float moodB = 0.7; // mood color blue component

float4 colInput = r0;
float4 colMood = 1.0f;
colMood.r = moodR;
colMood.g = moodG;
colMood.b = moodB;
float fLum = ( colInput.r + colInput.g + colInput.b ) / 3;

colMood = lerp(0, colMood, saturate(fLum * 2.0));
colMood = lerp(colMood, 1, saturate(fLum - 0.5) * 2.0);
float4 colOutput = lerp(colInput, colMood, saturate(fLum * fRatio));
r0.rgb=max(0, colOutput);
r0.a=1.0;
/*
r0.rgb=saturate(r0.rgb);
float3 brightness=0.001;//tex2D(s4, _c0.x);//adaptation luminance
// brightness=brightness/(brightness+1.0);
float3 palette;
float4 uvsrc=0.0;
uvsrc.y=brightness.r;
uvsrc.x=r0.r;
palette.r=tex2Dlod(s13, uvsrc).r;
uvsrc.x=r0.g;
uvsrc.y=brightness.g;
palette.g=tex2Dlod(s13, uvsrc).g;
uvsrc.x=r0.b;
uvsrc.y=brightness.b;
palette.b=tex2Dlod(s13, uvsrc).b;
r0.rgb=palette.rgb;
*/

#ifdef DECORATE_PATTERN_1

float2 centerCood;
centerCood.x=_v0.x-0.5;
centerCood.y=0.5-_v0.y;
float decorate=length(centerCood.xy)*1.41421;
decorate=pow(decorate, 8.0);
decorate=min(decorate, 0.4);
r0.xyz=saturate(r0.xyz-decorate);
#endif

#ifdef DECORATE_BLACK_LINES

r0.xyz=(_v0.y > 0.05 && _v0.y < 0.95) ? r0.xyz : 0.0;
#endif

// Bleach Bypass
float saliva = 0.222;
luma = dot(r0.xyz, _c12.xyz);
float3 blend = luma.xxx;
float L = min(1, max(0, 10*(luma - 0.5)));
float3 result1 = 2.0 * r0.xyz * blend;
float3 result2 = 1.0 - 2.0*(1.0 - blend)*(1.0 - r0.xyz);
float3 newColor = lerp(result1.xyz, result2.xyz, L);
float3 flows = saliva * newColor.xyz;
flows += ((1.0f - saliva) * r0.xyz);
r0.xyz = flows;

/* Blackbars
//Vignette code from hd7
float rovigpwr = 0; //for a circular vignette
float2 sqvigpwr = float2( 0.7, 0.65 ); // for the top and bottom of the screen
float vsatstrength = 1; // color distortion
float vignettepow = 0; // increases the contrast and sharpness
float vstrengthatnight = 7.5;

float2 inTex = _v0;
float vhnd = 0.5;
float4 voriginal = r0;
float4 vcolor = voriginal;
vcolor.xyz=1;
inTex -= 0.5; // center
inTex.y += 0.01; // offset from the center
float vignette = 1.0 - dot( inTex, inTex );
vcolor *= pow( vignette, vignettepow );

float4 rvigtex = vcolor;
rvigtex.xyz = pow( vcolor, 1 );
rvigtex.xyz = lerp(float3(0.5, 0.5, 0.5), rvigtex.xyz, 2.0); // contrast
rvigtex.xyz = lerp(float3(1,1,1),rvigtex.xyz,rovigpwr); // strength of the circular vinetty

//darken the top and bottom
float4 vigtex = vcolor;
vcolor.xyz = float3(1,1,1);
float3 topv = min((inTex.y+0.5)*2,1.5) * 2; // top
float3 botv = min(((0-inTex.y)+0.5)*2,1.5) * 2; // botton
topv= lerp(float3(1,1,1), topv, sqvigpwr.x);
botv= lerp(float3(1,1,1), botv, sqvigpwr.y);
vigtex.xyz = (topv)*(botv);
//vigtex.xyz = lerp(float3(1,1,1),vigtex.xyz,sqvigpwr); // strength of the top and bottom

// mix the two types of vignettes
vigtex.xyz*=rvigtex.xyz;
vigtex.xyz = lerp(vigtex.xyz,float3(1,1,1),(1-vstrengthatnight)*(1-vhnd)); //for a dark screen
vigtex.xyz = min(vigtex.xyz,1);
vigtex.xyz = max(vigtex.xyz,0);
float3 vtintensity = dot(r0.xyz, float3(0.2125, 0.7154, 0.0721));
r0.xyz = lerp(vtintensity, r0.xyz, ((((1-(vigtex.xyz*2))+2)-1)*vsatstrength)+1 );
//color.xyz+=0.02;
r0.xyz *= (vigtex.xyz);
*/

/* Vignette
float rovigpwr = 0.75; //for a circular vignette
float2 sqvigpwr = float2( 0.5, 0.5 ); // for the top and bottom of the screen
float vsatstrength = 1; // color distortion
float vignettepow = 1; // increases the contrast and sharpness
float vstrengthatnight = 10.25;
float2 inTex = _v0;
float vhnd = 0.5;
float4 voriginal = r0;
float4 vcolor = voriginal;
vcolor.xyz=1;
inTex -= 0.5; // center
inTex.y += 0.01; // offset from the center
float vignette = 1.0 - dot( inTex, inTex );
vcolor *= pow( vignette, vignettepow );
float4 rvigtex = vcolor;
rvigtex.xyz = pow( vcolor, 1 );
rvigtex.xyz = lerp(float3(0.5, 0.5, 0.5), rvigtex.xyz, 2.0); // contrast
rvigtex.xyz = lerp(float3(1,1,1),rvigtex.xyz,rovigpwr); // strength of the circular vinetty
float4 vigtex = vcolor;
vcolor.xyz = float3(1,1,1);
float3 topv = min((inTex.y+0.5)*2,1.5) * 2; // top
float3 botv = min(((0-inTex.y)+0.5)*2,1.5) * 2; // botton
topv= lerp(float3(1,1,1), topv, sqvigpwr.x);
botv= lerp(float3(1,1,1), botv, sqvigpwr.y);
vigtex.xyz = (topv)*(botv);
vigtex.xyz*=rvigtex.xyz;
vigtex.xyz = lerp(vigtex.xyz,float3(1,1,1),(1-vstrengthatnight)*(1-vhnd)); //for a dark screen
vigtex.xyz = min(vigtex.xyz,1);
vigtex.xyz = max(vigtex.xyz,0);
float3 vtintensity = dot(r0.xyz, float3(0.2125, 0.7154, 0.0721));
r0.xyz = lerp(vtintensity, r0.xyz, ((((1-(vigtex.xyz*2))+2)-1)*vsatstrength)+1 );
r0.xyz *= (vigtex.xyz);
*/

_oC0.xyz=r0.xyz;

//_oC0=0.077*tex2D(s15, _v0.xy);//s2

//_oC0.xyz=1.0;

//_oC0.w=1.0;
return _oC0;
}

//mine temporary post process
technique Shader_C215BE6E
{
pass p0
{
PixelShader = compile ps_3_0 PS_C215BE6E();
}
}

//original shader of post processing
technique Shader_ORIGINALPOSTPROCESS
{
pass p0
{

PixelShader=
asm
{
//
// Generated by Microsoft ® HLSL Shader Compiler 9.23.949.2378
//
// Parameters:
//
// 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
//

ps_3_0
def c0, 0, 0.212500006, 0.715399981, 0.0720999986
def c1, 0.25, 1, 256, 0
def c2, 0, 2, 4, 8
def c3, 58.1640015, 47.1300011, 0, 0
def c4, -0.5, -1.5, 1.5, 0.5
def c5, 2, -1, 0.125, 0
def c6, 256, 2, 4, 8
def c180, 0.0, 0.0, 0.0, 100.5
def c181, 1.0, 0.0, 0.0, 20.01
def c183, 800.0, 600.0, 0.0, 100.5
defi i0, 7, 0, 0, 0
dcl_texcoord v0.xy
dcl_2d s0
dcl_2d s1
dcl_2d s2
dcl_2d s3
dcl_2d s4
dcl_2d s5
dcl_2d s6
texld r0, v0, s1
add r0.y, -c77.x, c77.y
rcp r0.y, r0.y
mul r0.z, r0.y, c77.y
mul r0.z, r0.z, -c77.x
mad r0.x, c77.y, -r0.y, r0.x
rcp r0.x, r0.x
mul r0.y, r0.z, r0.x
texld r1, v0, s2
texld r2, v0, s3
abs r0.w, c79.w
mov r3, c4
mad r4.xy, c76, r3, v0
texld r4, r4, s2
mad r5.xy, c76, r3.zxzw, v0
texld r5, r5, s2
mad r3.xz, c76.xyyw, r3.wyzw, v0.xyyw
texld r6, r3.xzzw, s2
mad r3.xy, c76, r3.ywzw, v0
texld r7, r3, s2
dp3 r1.w, r4, r4
rcp r1.w, r1.w
cmp r3.xyz, -r1.w, c0.x, r4
dp3 r1.w, r5, r5
rcp r1.w, r1.w
cmp r4.xyz, -r1.w, c0.x, r5
dp3 r1.w, r6, r6
rcp r1.w, r1.w
cmp r5.xyz, -r1.w, c0.x, r6
dp3 r1.w, r7, r7
rcp r1.w, r1.w
cmp r6.xyz, -r1.w, c0.x, r7
dp3 r1.w, r1, r1
rcp r1.w, r1.w
cmp r7.xyz, -r1.w, c0.x, r1
mad r0.x, r0.z, r0.x, -c78.w
mad r0.x, c78.y, -r3.w, r0.x
max r1.w, r0.x, c0.x
rcp r0.x, c78.z
mul r0.x, r1.w, r0.x
lrp r1.w, r0.x, c79.z, c79.y
min r0.x, c79.z, r1.w
dp3 r0.z, r7, c0.yzww
dp3 r8.x, r3, c0.yzww
dp3 r8.y, r4, c0.yzww
dp3 r8.z, r5, c0.yzww
dp3 r8.w, r6, c0.yzww
dp4 r1.w, r8, c1.x
add r8, r8, -r1.w
dp4 r2.w, r8, r8
add r0.z, r0.z, -r1.w
mad r0.z, r0.z, r0.z, -r2.w
mul r0.x, r0.x, r0.x
cmp r0.x, r0.z, c1.y, r0.x
texld r8, v0, s0
mov r8.yz, c1
mad r9, r8.w, -r8.z, c2
cmp r9, r9, c1.y, c1.w
mad r10, r8.w, -c6.x, c6.yzwx
cmp r10, r10, -c1.y, -c1.w
add r9, r9, r10
mul r9, r9, c4.x
dp4 r0.z, r9, c1.y
add r0.z, r0.z, c4.w
rcp r0.z, r0.z
mul r8.xzw, r3.xyyz, r9.x
mad r7.xyz, r7, c4.w, r8.xzww
mad r7.xyz, r4, r9.y, r7
mad r7.xyz, r5, r9.z, r7
mad r7.xyz, r6, r9.w, r7
mul r7.xyz, r0.z, r7
add r0.z, -r0.x, c1.y
mul r1.w, r0.x, c1.x
mul r3.xyz, r3, r1.w
mad r3.xyz, r7, r0.z, r3
mad r3.xyz, r4, r1.w, r3
mad r3.xyz, r5, r1.w, r3
mad r3.xyz, r6, r1.w, r3
mad r4.xyz, v0.yxyw, c5.x, c5.y
mul r0.z, r4.y, c77.z
mul r0.z, r0.y, r0.z
mul r1.w, -r4.x, c77.w
mul r1.w, r0.y, r1.w
mul r5.xyz, r1.w, c73
mad r5.xyz, r0.z, c72, r5
mad r5.xyz, -r0.y, c74, r5
add r5.xyz, r5, c75
mul r0.y, -r5.z, c77.z
rcp r0.y, r0.y
mul r6.x, r5.x, r0.y
mul r0.y, r5.z, c77.w
rcp r0.y, r0.y
mul r6.y, r5.y, r0.y
add r0.yz, -r4, r6.xxyw
mul r0.yz, r0, c80.x
mul r4.xy, r0.yzzw, c5.z
texld r5, v0, s6
add r1.w, r5.x, -c85.x
mul r4.zw, r3.xyxy, c2.w
mad r4.zw, v0.xyxy, c3.xyxy, r4
texld r5, r4.zwzw, s5
add r2.w, r5.x, c4.x
mad r4.zw, r4.xyxy, r2.w, v0.xyxy
mov r5.xyz, r3
mov r2.w, c1.y
mov r3.w, c1.y

rep i0
mad r6.xy, r4, r3.w, r4.zwzw
texld r7, r6, s6
add r5.w, r7.x, -c85.x
cmp r5.w, r5.w, c1.w, c1.y
texld r6, r6, s2
mad r5.xyz, r6, r5.w, r5
add r2.w, r2.w, r5.w
add r3.w, r3.w, c1.y
endrep

rcp r2.w, r2.w
mul r0.yz, r0, c183.xxyw//c44.xxyw
dp2add r0.y, r0.yzzw, r0.yzzw, c0.x
rsq r0.y, r0.y
rcp r0.y, r0.y
mul r0.y, r0.y, c4.w
add r0.x, r0.x, c1.y
rcp r0.x, r0.x
mul_sat r0.x, r0.y, r0.x
mad r4.xyz, r5, r2.w, -r3
mad r0.xyz, r0.x, r4, r3
cmp r0.xyz, r1.w, r3, r0
cmp r0.xyz, -r0.w, r0, r1

texld r1, c0.x, s4
rcp r0.w, r1.x
mul r0.w, r0.w, c81.y
rcp r1.x, r0.w
mul r1.x, r1.x, c81.x
mad r1.xyz, r2, c66.x, -r1.x
max r2.xyz, r1, c0.x
mul r1.xyz, r2, c81.z
mul r1.xyz, r1, c1.x
mad r0.xyz, r0, c66.x, r1
mul r1.xyz, r0.w, r0
dp3 r1.x, r1, c0.yzww
mad r0.xyz, r0, r0.w, -r1.x
mad r0.xyz, c82.x, r0, r1.x
mul r0.w, r1.x, c84.w
mul r1.yzw, r0.w, c84.xxyz
mov_sat r2.x, r0.w
mad r0.xyz, c84, -r0.w, r0
mad r0.xyz, r2.x, r0, r1.yzww
// mul r0.xyz, r0, c83
add r0.xyz, r0, r0
mov_sat r1.x, r1.x
add r0.w, -r8.y, c82.z
pow r2.x, r1.x, r0.w
//mul r2.x, r2.x, c181.x
mul oC0.xyz, r0, r2.x
mov oC0.w, c1.y

//texld r1, v0, s2
//mul oC0.xyz, r1, c199.z
};
}
}

[/spoiler]

и ещё есть какая-то странность с зеленым светом на светофоре,мергает разными цветами,может знаете как исправить..вот на скрине видно:
[spoiler="Название"]
http://fotki.yandex.ru/users/igorsemenko0/view/513633/[/spoiler]




Сообщение отредактировал z550i - Среда, 2012-11-07, 18:58
 
offline
 ramoncosta
Дата: Среда, 2012-11-07, 00:59 | Сообщение # 3174
Пользователь
can u guys help me out here .. i know this is not related to enb, but i cannot install modded cars without getting "Taxi Bug" , and if i install the trafic load fix i get missing textures everywhere, how do u guys deal with that ?
i have a 3570k@4.5ghz , Gtx 670 and 16 gb ddr3

edit: ok i found out that its because of the size of the modded cars .. they cant be too big because the game cant handle then, so, how big a modded car can be ? 5mb ?


Сообщение отредактировал ramoncosta - Среда, 2012-11-07, 02:46
 
offline
 AgainstAllAutority
Дата: Среда, 2012-11-07, 10:48 | Сообщение # 3175
Гангстер
Сообщений: 801
z550i, у тебя в enbseries.ini forceantialiasing=true?
тогда поставь
Code

int    PixelSizeMultiplier = 2; // set this value to 2 when you active SSAA.  

#define SSAA_ENABLE; // enable it when ForceAntialiasing=true  

если же ты не пользуешься ССАА из ини, то  

int    PixelSizeMultiplier = 1; // set this value to 2 when you active SSAA.  

//#define SSAA_ENABLE; // enable it when ForceAntialiasing=true  


 
offline
 Spark98
Дата: Среда, 2012-11-07, 15:42 | Сообщение # 3176
Пользователь
Сообщений: 94
AgainstAllAutority, как ты и сказал, добавил в енбэффект изменение контраста. Картинка стала чуть лучше. Но что ещё можно добавить такого?
Code

Вот нарыл один код, что то вроде небольшого тоунмапа

float3 xncol=normalize(color.xyz);
float3 scl=color.xyz/xncol.xyz;
scl=pow(scl, 1.2); /// 1.2 как я понял отвечает за контраст
xncol.xyz=pow(xncol.xyz, 1.2); // здесь 1.2 отвечает за сатурацию и понижает яркость картинки
color.xyz=scl*xncol.xyz;

Фото отчетик небольшой:


#NeRo by CrazY
Skype: spark1016394


Сообщение отредактировал Spark98 - Среда, 2012-11-07, 15:42
 
offline
 Simple999
Дата: Среда, 2012-11-07, 17:47 | Сообщение # 3177
Гангстер
Сообщений: 1000
Spark98,
Круто получилось, только суховато, добавь чуток влаги


? 21.12.2013 - Дней на сайте: 999
 
offline
 Spark98
Дата: Среда, 2012-11-07, 18:54 | Сообщение # 3178
Пользователь
Сообщений: 94
Simple999, я б воды налил, но боюсь потом комп работать не будет :D Если подскажешь как это сделать без весомых потерь буду благодарен ;)


#NeRo by CrazY
Skype: spark1016394
 
offline
 z550i
Дата: Среда, 2012-11-07, 19:14 | Сообщение # 3179
Пользователь
Сообщений: 94
Quote (AgainstAllAutority)
z550i, у тебя в enbseries.ini forceantialiasing=true? тогда поставь Code int    PixelSizeMultiplier = 2; // set this value to 2 when you active SSAA.   #define SSAA_ENABLE; // enable it when ForceAntialiasing=true   если же ты не пользуешься ССАА из ини, то   int    PixelSizeMultiplier = 1; // set this value to 2 when you active SSAA.   //#define SSAA_ENABLE; // enable it when ForceAntialiasing=true  


что-то не помогло,все равно так же размыто остается вдали и под некоторыми ракурсами вблизи(
вот скринчик, в enbseries.ini forceantialiasing=false, может это InjectFXAA размывает картинку?
[spoiler="скринчики"]

http://fotki.yandex.ru/users/igorsemenko0/view/513895/
http://fotki.yandex.ru/users/igorsemenko0/view/513893/[/spoiler]




Сообщение отредактировал z550i - Среда, 2012-11-07, 19:15
 
offline
 Spark98
Дата: Среда, 2012-11-07, 20:06 | Сообщение # 3180
Пользователь
Сообщений: 94
z550i, какой нафиг Inject?? У тебя явно доф размывает картинку. Вон здание же не размыто! Доф моно отключать полностью, но ты вряд ли поймешь как. Поставь PixelSizeMultiplier на 0 и увидишь.


#NeRo by CrazY
Skype: spark1016394
 
Форум GtaMania.ru » Сайт и форум » Архив » ENB Series GTA 4 (Часть IV) (Ваши настройки, инструкции, вопросы и т.д.)
Страница 212 из 450«12210211212213214449450»
Поиск:

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