Prepar3D Tweak Assistant — Prepar3D v3

Да, Сергей все правильно описал. Облако отбрасывает тень на ландшафт и на объект, скажем, крафт. Глубину отбрасываемой тени на ландшафте можно подстроить в terrain lighting, на объектах — в autogen lighting.

Ambient в обоих случаях настраивает глубину тени.  Diffuse настраивает освещенность не затененных областей террейна и объектов?

 

Пысы. Сергей, спасибо за разъяснения, стало понятнее. У вас на скринах включены тени от объектов, не сильно просаживает фпс? У меня по ощущениям стало больше фризить..

Ambient в обоих случаях настраивает глубину тени.  Diffuse настраивает освещенность не затененных областей террейна и объектов?

 

У вас на скринах включены тени от объектов, не сильно просаживает фпс? У меня по ощущениям стало больше фризить..

 

По теням — да, именно так.

 

Да, тени от объектов просаживают ФПС. Когда начинает фризить, я их отключаю.

Затем можно разделить для различных объектов: if (cb_mObjectType == 10) { cColor = cDiffuse * 1.6;}
А вот что бы я посоветовал, так это сделать общую настройку для объектов, и минимум три частных случая для самолета, автогенных домиков и автогенных деревьев.

Идея интересная, хотя при использовании такого множителя, если объект яркий, полутона потеряются: что должно быть почти белым, станет белым и т.п. Т.е. применять можно, но с полным пониманием, т.е. как вы — в кастомных твиках.  :) 
Разводить по объектам что-то не хочется для всех. Добавишь домики, уплывут мостики, добавишь мостики, захочется вышки ЛЭП, эта музыка будет вечной. И будет вынос мозга.

Кому действительно надо, разберется и сделает, инструмент для этого есть.

Вам респект и спасибо!

Разводить по объектам что-то не хочется для всех. Добавишь домики, уплывут мостики, добавишь мостики, захочется вышки ЛЭП, эта музыка будет вечной. И будет вынос мозга.

 

Насчет всего подряд тоже не уверен, что надо. А вот отдельно деревья очень хотелось бы иметь возможность подкрутить. В orbx они всегда темные относительно остального террейна и постоянно хочется сделать светлее, Это все с условием, что картинку смотрю на калиброванном мониторе. 

 

Да и далеко не только мне деревья посветлее хочется сделать судя по читаемому в разных местах.

 

Например, я добился яркой освещенности деревьев на солнце.

Подскажите пожалуйста по Custom tweaks. В решейд 3.0.5 подобрал устраивающие меня параметры и хочу перенести в твикер. Проблема в том, что в последней версии настройки подобрал в  Technicolor2, там такие настраиваемые параметры:

 

post-18513-0-01202500-1482164766.jpg

 

в РТА 2.0 прямого аналога нет. Код самого эффекта:

 

 

/**
 * Technicolor2 version 1.0
 * Original by Prod80
 * Optimized by CeeJay.dk
 */

uniform float3 ColorStrength <
	ui_type = "color";
	ui_tooltip = "Higher means darker and more intense colors.";
> = float3(0.2, 0.2, 0.2);

uniform float Brightness <
	ui_type = "drag";
	ui_min = 0.5; ui_max = 1.5;
	ui_tooltip = "Higher means brighter image.";
> = 1.0;
uniform float Saturation <
	ui_type = "drag";
	ui_min = 0.0; ui_max = 1.5;
	ui_tooltip = "Additional saturation control since this effect tends to oversaturate the image.";
> = 1.0;

uniform float Strength <
	ui_type = "drag";
	ui_min = 0.0; ui_max = 1.0;
> = 1.0;

#include "ReShade.fxh"

float3 TechnicolorPass(float4 vpos : SV_Position, float2 texcoord : TexCoord) : SV_Target
{
	float3 color = saturate(tex2D(ReShade::BackBuffer, texcoord).rgb);
	
	float3 temp = 1.0 - color;
	float3 target = temp.grg;
	float3 target2 = temp.bbr;
	float3 temp2 = color * target;
	temp2 *= target2;

	temp = temp2 * ColorStrength;
	temp2 *= Brightness;

	target = temp.grg;
	target2 = temp.bbr;

	temp = color - target;
	temp += temp2;
	temp2 = temp - target2;

	color = lerp(color, temp2, Strength);
	color = lerp(dot(color, 0.333), color, Saturation);

	return color;
}

technique Technicolor2
{
	pass
	{
		VertexShader = PostProcessVS;
		PixelShader = TechnicolorPass;
	}
} 

Reshade.fxh :

#pragma once

#if !defined(__RESHADE__) || __RESHADE__ < 30000
	#error "ReShade 3.0+ is required to use this header file"
#endif

#ifndef RESHADE_DEPTH_INPUT_IS_UPSIDE_DOWN
	#define RESHADE_DEPTH_INPUT_IS_UPSIDE_DOWN 0
#endif
#ifndef RESHADE_DEPTH_INPUT_IS_REVERSED
	#define RESHADE_DEPTH_INPUT_IS_REVERSED 0
#endif
#ifndef RESHADE_DEPTH_INPUT_IS_LOGARITHMIC
	#define RESHADE_DEPTH_INPUT_IS_LOGARITHMIC 0
#endif
#ifndef RESHADE_DEPTH_LINEARIZATION_FAR_PLANE
	#define RESHADE_DEPTH_LINEARIZATION_FAR_PLANE 1000.0
#endif

namespace ReShade
{
	// Global variables
	static const float AspectRatio = BUFFER_WIDTH * BUFFER_RCP_HEIGHT;
	static const float2 PixelSize = float2(BUFFER_RCP_WIDTH, BUFFER_RCP_HEIGHT);
	static const float2 ScreenSize = float2(BUFFER_WIDTH, BUFFER_HEIGHT);
	
	// Global textures and samplers
	texture BackBufferTex : COLOR;
	texture DepthBufferTex : DEPTH;

	sampler BackBuffer { Texture = BackBufferTex; };
	sampler DepthBuffer { Texture = DepthBufferTex; };

	// Helper functions
	float GetLinearizedDepth(float2 texcoord)
	{
#if RESHADE_DEPTH_INPUT_IS_UPSIDE_DOWN
		texcoord.y = 1.0 - texcoord.y;
#endif
		float depth = tex2Dlod(DepthBuffer, float4(texcoord, 0, 0)).x;

#if RESHADE_DEPTH_INPUT_IS_LOGARITHMIC
		const float C = 0.01;
		depth = (exp(depth * log(C + 1.0)) - 1.0) / C;
#endif
#if RESHADE_DEPTH_INPUT_IS_REVERSED
		depth = 1.0 - depth;
#endif
		const float N = 1.0;
		depth /= RESHADE_DEPTH_LINEARIZATION_FAR_PLANE - depth * (RESHADE_DEPTH_LINEARIZATION_FAR_PLANE - N);

		return depth;
	}
}

// Vertex shader generating a triangle covering the entire screen
void PostProcessVS(in uint id : SV_VertexID, out float4 position : SV_Position, out float2 texcoord : TEXCOORD)
{
	texcoord.x = (id == 2) ? 2.0 : 0.0;
	texcoord.y = (id == 1) ? 2.0 : 0.0;
	position = float4(texcoord * float2(2.0, -2.0) + float2(-1.0, 1.0), 0.0, 1.0);
} 

 

 

Насколько я понял, при создании нового твика для глобального наложения нужно выбрать general.fx , а вот что дальше делать — буксую. Или эти настройки можно применить к существующему Technicolor и все намного проще?

 
А вот отдельно деревья очень хотелось бы иметь возможность подкрутить…
 

 

Так это как раз и есть вопрос «вкусностей». Меня, например, затененные деревья устраивают. Но если б не понравились — вэлком! Юрий мало того, что сделал удобный редактор шейдеров (нарастающие аплодисменты), так и есчо добавил таки в него возможности для кастома (бурные овации в зале).

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

 

За что ему, безусловно, огромный респект!

Но лично я не программист и лазить сам в код шейдеров не буду по причине банального неумения. Погружаться во все это — сорри, просто на сим время не всегда есть. Покрутить понятные параметры в твикере и посмотреть на результат — это может почти каждый. Отсюда и просьба.

За что ему, безусловно, огромный респект!
Но лично я не программист и лазить сам в код шейдеров не буду по причине банального неумения. Погружаться во все это — сорри, просто на сим время не всегда есть. Покрутить понятные параметры в твикере и посмотреть на результат — это может почти каждый. Отсюда и просьба.

Отдельных твиков в виде галочек не будет, почему — написал выше. 
Вот решение для раскрашивания объектов:
Крутите всё, как хотите. Правда, деревья у ORBX разного цвета: есть светлые, есть темные.

Spoiler

Яркость крутить числом, на которое указывает красная стрелка.
Синяя стрелка — указывает на код объекта.
А коды объектов такие:
 
1 небо
3 облака, включая верхние циррусы
6  мосты эстакады
10 деревья и городские огни
11 Здания автогена
14 рулежные дорожки в портах
15 асфальт в портах (большие площади)
16 — взлетные полосы
17 — всякая хрень типа наземный и морской траффик, рукава в портах, таблички на рулежках, статуя свободы… А также окрестности аэропортов в сценах типа Aerosoft Prague
19  крафт, кокпит
21 — эффект линз от солнца
22 — разметка на ВПП, потертости асфальта в портах
23 —  разметка на рулежных дорожках, на асфальте в портах
24 — буквы в портах на асфальте, например,  H — для вертолетов
28 — огни на шоссе, специфичные 3D объекты типа крайслер билдинг, здания портов, спецмосты.

Некоторые порты могут быть нарисованы с другими кодами объектов.

Насколько я понял, при создании нового твика для глобального наложения нужно выбрать general.fx , а вот что дальше делать — буксую. Или эти настройки можно применить к существующему Technicolor и все намного проще?

Нет, это пост-процессинг, он ставится в HDR.hlsl. Включите Technicolor в пост-процессинге, и посмотрите, как он ставится в HDR.hlsl.
Если с программированием на ты, то надо адаптировать функцию float3 TechnicolorPass(float4 vpos : SV_Position, float2 texcoord : TexCoord) : SV_Target
по образу и подобию обычного Technicolor и так же подключить.
Вообще, в Reshade 3 много вкусного добавилось, возможно, в след.версиях какие-то шейдеры из него добавлю.
А что, Technicolor2 сильно вкуснее обычного?

Если с программированием на ты, то надо адаптировать функцию float3 TechnicolorPass(float4 vpos : SV_Position, float2 texcoord : TexCoord) : SV_Target
по образу и подобию обычного Technicolor и так же подключить.
Вообще, в Reshade 3 много вкусного добавилось, возможно, в след.версиях какие-то шейдеры из него добавлю.
А что, Technicolor2 сильно вкуснее обычного?

Программировал еще на асме Z80, в современных языках особо смысла не вижу разбираться, уже другие интересы. Из-за этого и спрашивал.

 

Technicolor2 мне понравился не как оттеночный фильтр, а именно как глобальный твикер картинки с возможностью регулировать насыщенность при отключенном HDR. Именно с ним я получил ощущение яркого солнечного дня в полдень, а не постоянного пасмурного оттенка. При этом ночь стала ночью, а не бесконечным закатом. Конечно, на вкус и цвет, но глобальное освещение я уже трогать не буду. 

 

 

Spoiler

 

А перенести хочу, потому что в решейде есть пренеприятнейший глюк — с ним не выводится инфа в планшете и брифинг миссий. Матерится на сбой в AceXML

Имхо, название у проги сменить бы. На западных форумах слово «tweak» ассоциируется со всякими хитростями для улучшения производительности и поднятия ФПС, от этого многие даже слушать не хотят, когда им предлагаешь посмотреть.

Программировал еще на асме Z80, в современных языках особо смысла не вижу разбираться, уже другие интересы. Из-за этого и спрашивал.

 

Technicolor2 мне понравился не как оттеночный фильтр, а именно как глобальный твикер картинки с возможностью регулировать насыщенность при отключенном HDR. Именно с ним я получил ощущение яркого солнечного дня в полдень, а не постоянного пасмурного оттенка. При этом ночь стала ночью, а не бесконечным закатом. Конечно, на вкус и цвет, но глобальное освещение я уже трогать не буду. 

[/spoiler]

 

А перенести хочу, потому что в решейде есть пренеприятнейший глюк — с ним не выводится инфа в планшете и брифинг миссий. Матерится на сбой в AceXML

А разве Tonemap, Vibrance, Levels, Curves нельзя добиться изменения насыщенности? Ну тогда никак.

Имхо, название у проги сменить бы. На западных форумах слово «tweak» ассоциируется со всякими хитростями для улучшения производительности и поднятия ФПС, от этого многие даже слушать не хотят, когда им предлагаешь посмотреть.

Не вариант, название PTA уже довольно известно.

А разве Tonemap, Vibrance, Levels, Curves нельзя добиться изменения насыщенности? 

Можно, конечно, но Technicolor2 и Curves я достаточно быстро настроил картинку без применения всего остального. В свое время на свитовских твиках долго бился, но результат меня не удовлетворил — если день нормальный, то ночь никакая.

Можно, конечно, но Technicolor2 и Curves я достаточно быстро настроил картинку без применения всего остального. В свое время на свитовских твиках долго бился, но результат меня не удовлетворил — если день нормальный, то ночь никакая.

В PTA можно развести день и ночь параметром DayNightUse

Не вариант, название PTA уже довольно известно.

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

Но, по моему впечатлению, среди европейско-американского симмерского сообщества она незаслуженно обойдена вниманием именно из-за названия. Ну и из-за отсутствия инфы о ней там, конечно.

 

Сильно заблуждаетесь. Софт известен и очень активно обсуждается. Его используют и рекомендуют даже разработчики ORBX, включая их директора, что можно легко найти на их форуме.

 

Тут скорее сам по себе Prepar не так популярен. Процентов 60-70 сообщества сидит на FSX никуда не собираясь двигаться, а еще часть так и вообще на FS2004, не признавая даже FSX. Симмерское сообщество очень консервативно. Отчасти это объясняется тем, что многие потратили в буквальном смысле годы на доведение работоспособности симулятора до нужных им кондиций и с ужасом представляют как им придется пройти весь путь заново. Даже внутри сообщества Prepar есть масса людей, которые упорно не хотят переходить с V2 на V3.

Вот решение для раскрашивания объектов:
Крутите всё, как хотите.

 
Спасибо!
А есть возможность тут сделать два параметра ambient и diffuse? Я бы вот скорее diffuse крутил.
 

10 деревья и городские огни

Они жестко сцеплены? Т.е. сделать поярче, одно не повлияв на другое, никак?

Спасибо!
А есть возможность тут сделать два параметра ambient и diffuse? Я бы вот скорее diffuse крутил.
 
Они жестко сцеплены? Т.е. сделать поярче, одно не повлияв на другое, никак?

Множитель (1 — cb_mDayNightInterpolant) в формуле ночью равен 0. Поэтому они разведены.

Юрий,

Я правильно понимаю, что бета будет работать с новым HF2, но clouds’ saturation останется по дефолту?

Юрий,

Я правильно понимаю, что бета будет работать с новым HF2, но clouds’ saturation останется по дефолту?

Нет, нужно обязательно обновиться. ЛМ добавили что-то в облака, чтобы снизить повторяемость их структуры. А твик clouds’ saturation, если не обновиться просто облака убивает.
Обновление уже доступно на сайте, щаз анонс допилю

Спасибо. Старые профили будут работать ?

Sent from my iPhone using Tapatalk

PTA 2.0 выложил на сайт.

Как обновляться с версий 1.Х:
———————————
1. Формат пресетов в версии 2.0 значительно поменялся. Пресеты из предыдущих версий утилиты НЕ СОВМЕСТИМЫ с версией 2.0. Пожалуйста, сделайте настройки вручную, с учетом ваших настроеных пресетов в версии 1.X.
2. Лучше ставить PTA 2 в отдельный каталог, не смешивая с предыдущей версией.
3. Перед запуском 2.0 необходимо вернуть в препар дефолтные шейдеры. Если PTA 1.X уже используется, это можно сделать через меню «Actions — Restore original P3D shaders».
4. После того, как дефолтные шейдеры восстановлены, распакуйте архив в отдельный каталог. При первом старте утилита создаст, как обычно, бекапы конфига и дефолтных шейдеров.

Как обновляться с версии 2.0 beta:
———————————
пресеты совместимы, просто заменить exe-файл и применить пресет.

В новой версии:

1. Совместимость с Prepar3D V3.4 Hotfix 2 (3.4.18 build 19475).
2. Новый твик «Clouds light scattering».
3. Твик «Clouds shade adjustment» переименован в «Clouds saturation».
4. Новый твик «Cirrus lighting».
5. Новый твик «Clouds shadows depth»: отдельная регулировка глубины теней для облаков.
6. Новый твик «Aircraft lighting». Старая версия твика «Aircraft brightness tuning» теперь часть нового, более общего твика.
7. Новый твик «Objects lighting». Старый твик «Adjust autogen ambient sunight» теперь часть нового твика.
8. Твики освещения ландшафта объединены в один универсальный: «Terrain lighting». Если в предыдущей версии вы использовали не все твики, то в новом твике просто оставляйте значения по умолчанию в неиспользуемых параметрах.
9. Новый твик «Autogen emissive lighting».
10. Новый твик «Terrain saturation.».
11. Старые твики ночного освещения ландшафта объединены в один: «Urban areas lighting at night». Если в предыдущей версии вы использовали не все твики, то в новом твике просто оставляйте значения по умолчанию в неиспользуемых параметрах.
12. В твик Rayleigh scattering добавлен флажок «Exclude clouds». Когда флажок установлен, из просчета эффекта исключаются облака.
13. Новый твик «Sky fog tuning». Кувалдометр для AS2016 против сильного замутнения неба на всякий случай.
14. Новый твик «Sky saturation».
15. Новый твик «Specular lighting».
16. Новый твик «Waves size». Позволяет уменьшать волны с набором высоты. В дефолте эта зависимость корявая.
17. Старые твики воды Reflection, refraction, granularity объединены в один универсальный «Water surface tuning». Если в предыдущей версии вы использовали не все твики, то в новом твике просто оставляйте значения по умолчанию в неиспользуемых параметрах.
18. Как и в пост-обработке, во всех параметрах твиков могут теперь использоваться выражения с шейдерными переменными. Дает некоторую дополнительную гибкость. Какие переменные можно использовать и как, см. в Help, раздел 10. Там же пара примеров.
19. Значения по умолчанию можно вернуть отдельно для каждого твика.
20. В дополнение к встроенным в PTA твикам, в пресет можно добавить свои собственные твики. Если у вас есть какие-то свои наработки, предусматривающие ручную правку, которая затиралась PTA при применении пресета, то просто интегрируйте их в пресет.
Эти правки будут применены сразу после встроенных твиков. ВАЖНО! т.к. это ваши правки, то никакого контроля ошибок в вашем коде не предусмотрено.
Если нужно отловить баг, активируйте опцию «Content Error Logging» в секции General в настройках сима. (Ошибки сыпятся в лог после выхода из сима). В любом случае, отключив свой твик, всегда можно вернуться в исходное состояние.
Предусмотрены правки только тех шейдеров, которые использует PTA во встроенных твиках. Учитывая, что там все основные шейдеры, этого вполне достаточно.
21. Логика сохранения пресетов изменена. Опция «Autosave preset on exit» выпилена, теперь производится анализ изменений и при их наличии утилита запрашивает необходимость сохранения.
22. В настройках добавился флажок, позволяющий отслеживать выход новых версий утилиты. (Проверка производится раз в 3 дня).
23. Изменения в интерфейсе. Новые скины.
24. Справка переписана. В разделе 10 несколько примеров использования выражений в параметрах твиков.
25. Описание твиков поправлено. Огромная благодарность Adam (aka Adamski_NZ) из ORBX team за помощь! Переделаны иллюстрации ко всем твикам, на них указаны параметры.
26. Исправлен баг в пост-процесс шейдере «Curves».

Спасибо. Старые профили будут работать ?

Sent from my iPhone using Tapatalk

из 2.0 beta будут

Что касается «кувалдометра».

Я нашел методом тыка, что убогая дымка на горизонте начинается ниже 150 миль в настройках upper max visibility. От 150 до 199 — все работает нормально в зависимости от ваших эстетических предпочтений. Проблема однако в том, что облака в P3D дальше 110 миль не рисуются, несмотря на то, что в AS2016 есть опция до 200. Поэтому, имея максимальную видимость 150, видна «дырка» между окончанием границы 110-мильного фронта и «продолженной» видимостью до 150.

Если в ASCA поставить upper visibility max на 110 (to match clouds’ range), то получаем эту ужасную дымку ниже FL150 и «кувалдометр» тут не помогает, как мне кажется

В сложившейся ситуации мне видится, что лучше как-то «замазать» пустое пространство в 40 миль между краем облачного фронта на 110 миль и самим горизонтом на 150. Можно это как-то сделать через инструментарий PTA?

Cпасибо