Правильная установка и настройка FSX — Microsoft Flight Simulator X

Спасибо, Palermo, помогло!
У меня стояли лишь разгон и несколько сценариев.
После этой утилиты, установки directX и msxml4 всё запустилось

Помогите пожалуйста!!! В самом начале освоения сима поставил себе ФСХ, Потом снес его (уж не знаю до конца ли) и поставил 9-ку. Сейчас же Захотел поставить ФСХ обратно, но он не ставится, говорит что есть уже установленный симулятор! Что делать? В списке программ его нет, реестр я почистил как мог, удалил все файлы конфигов, которые нашел, не знаю уже что делать??? Заранее спасибо!

Просмотр сообщенияZhekaDub (14 October 2010 — 04:25) писал:

Помогите пожалуйста!!! В самом начале освоения сима поставил себе ФСХ, Потом снес его (уж не знаю до конца ли) и поставил 9-ку. Сейчас же Захотел поставить ФСХ обратно, но он не ставится, говорит что есть уже установленный симулятор! Что делать? В списке программ его нет, реестр я почистил как мог, удалил все файлы конфигов, которые нашел, не знаю уже что делать??? Заранее спасибо!

Я 4 часа мучался, тоже вычистил все что можно, перечитал кучу форумов, ничего не помогло, в итоге переустановил Windows. Лучше бы сразу так сделал, сэкономил бы 4 часа.

Этого я и боялся :sarcastic: Но все равно спасибо за помощь)

У меня тоже недавно была такая проблема, я почистил реестр, перезагрузил комп,
затем удалил все конфиги, заново перезагрузил комп.
После этого у меня все нормально установилось, без всяких проблем!

Блин!! Не могу больше. Я не летаю а настраиваю сим. Часами. Днями. Неделями. Задолбало! Летаю в основном в сценариях от Orbx и Ozx. Хочу полетать, но как вижу размыленые текстуры земли — полностью пропадает желание лететь и снова начинаю ковырять. Но не помогает ничего. Не могу настроить скорость детализации текстур земли. Пока стоит сим на паузе — все текстуры четкие, идеальные. Начинаю лететь -следующие не успевают прорисовываться и остаются более замыленые чем предыдущие. Нажиаю паузу — через время догружаются.
Машина не самая слабая. Видях GForce 9800GTX 512Mb, проц Сore2Duo 3Gh, оперативы 4Gb.
Что я делаю не так? В Fsx.cfg перебрал практически все комбинации, описанные на хабре, сейчас измененные строки выглядят так:
[JOBSCHEDULER]
AffinityMask=3 (для 2х ядерных процов)
[BUFFERPOOLS]
PoolSize=12000000
[Display]
TEXTURE_BANDWIDTH_MULT=400 (пробовал 70 — особой разницы нет. при 30 мылит сильнее)
[Main]
DisablePreload=1
FIBER_FRAME_TIME_FRACTION=0.75 (якобы % распределения процессорного времени между загрузкой текстур и рендерингом)
[TERRAIN]
TERRAIN_MAX_AUTOGEN_TREES_PER_CELL=1200
TERRAIN_MAX_AUTOGEN_BUILDINGS_PER_CELL=1000
LOD_RADIUS=5.500000 (при любом изменении в свойствах игры сбрасывается на стандатрные 4.500000)
При этом частота держится 18-35 fps, скачками.
На чистом конфиге без изменений та-же шляпа. может немного иначе, но смысл тот-же.

Нужна помощь. Т.к. ничерта не могу с этим сделать…

Просмотр сообщенияLDemon (17 October 2010 — 15:47) писал:

Машина не самая слабая. Видях GForce 9800GTX 512Mb, проц Сore2Duo 3Gh, оперативы 4Gb.

Но и не самая сильная. Поэтому не успевают подгружаться. У меня тоже самое на 3,6 Ггц.
Вариант — гнать проц.

Просмотр сообщенияLDemon (17 October 2010 — 15:47) писал:

Блин!! Не могу больше.

[Display]
TEXTURE_BANDWIDTH_MULT=10 // Useless.. its simply a multiplier, what you REALLY want to tweak is TextureMaxLoad
TextureMaxLoad=21 // You can try 12, 15, 18 and 21 (it will make texture loading faster)

но TBM 10 не ставь, оставь 40-70. TextureMaxLoad начинай с низших, т.е. от 12. При завышении могут появится рывки

FIBER_FRAME_TIME_FRACTION=0.75 — удали вообще эту строку из файла

PoolSize=0. Если появится флэшинг тексур и автогена воду поставь на High

LOD_RADIUS=5.500000 — скромнее надо быть :crazy: . 3,5-4,5

TERRAIN_MAX_AUTOGEN_TREES_PER_CELL=1200
TERRAIN_MAX_AUTOGEN_BUILDINGS_PER_CELL=1000
Сомнительно использование этих настроек с Орбиксом

ФПС в данном случае лучше залочить, хотя бы средствами сима

Благодарю, Palermo. Реально помогло выставление PoolSize=0. Благодаря статье, которую Вы цитируете, на многие вещи в конфиге взглянул по-новому. Теперь заново эксперименты. Но пока-что добился картинки средней приятности. Теперь можно и LOD_RADIUS=3.500000 поставить. Ранее только 5.5 боль-мень прогружали текстуры не «под носом». В Orbx Pacific NorthWest при залоченых 30 держит четко 30. В Австралии получаем 18-20. В YMML даже можно худо-бедно летать — 12-15 на B17 :sarcastic:
Кстати, заметил неприятную фишку — после 40мин. перелета на В17 начинаются приличные тормоза в виртуальном кокпите. Чета он там накапливает…
За то текстура земли на протяжение всего полета оставалась приятной для взгляда :joystick:)
Вобщем благодарю за правильную подсказку. Будем ковырять.

Не совсем это та статья. Вот кусок.

[GRAPHICS]
HIGHMEMFIX=1
//Fixes errors with texture addressing modes in WDDM1.0 and 1.1 when using a lot of video memory
The HIGHMEMFIX=1 you see above, fixes a bug in the FSX engine on how it handles texture addressing modes (Wrap,Clamp) and initial render states on single pass shaders, it will completely prevent textures, buildings and entire cockpits from dissapearing! this ‘bug’ is triggered when there is a high video memory usage situation. so, enjoy :rolleyes: this is my way of giving to a community that has given me so much over the years.

Устраняет ошибку с режимами адрессации текстур в WDDM1.0 и 1.1 при использовании большого объема видеопамяти. Полностью убирает эффект исчезновения текстур кокпита, зданий и пр…при больших загрузах видеопамяти.

[GRAPHICS]
SHADER_CACHE_VERSION=1
// Increment this number EVERYTIME you change fsx.cfg (it simply rebuilds the shader cache)
Увеличивайте этот номер КАЖДЫЙ РАЗ при изменении fsx.cfg (протсо обновляет кэш шейдеров)

[DISPLAY]
TextureMaxLoad=9
// Carefull. CAN induce stutters on LOW END systems! use multiples of 3 *ONLY* (3, 6, 9 etc) perfect for PhotoRealistic scenery and PNW . Цифры значительно ниже. Хотя видеокарта у него GTX 285.

Если UPPER_FRAMERATE_LIMIT (ограничение FPS)стоит, тогда:
MAX_TEXTURE_DATA = (TEXTURE_MAX_LOAD * (TextureMaxLoad * TEXTURE_BANDWIDTH_MULTIPLIER)) / UPPER_FRAMERATE_LIMIT

Если UPPER_FRAMERATE_LIMIT (ограничение FPS)не установлено — бесконечно, тогда:
MAX_TEXTURE_DATA = TextureMaxLoad * TEXTURE_MAX_LOAD

As you can see above, TEXTURE_BANDWIDTH_MULTIPLIER its just that, a multiplier. Evidently, changing it DOES change things, however,
when running UNLIMITED frames, it is USELESS, so you are better of playing with TextureMaxLoad directly.

Как видно выше, это всего лишь множитель. Но его изменение ВЛИЯЕТ на работу, он если частота кадров не ограничена, то он бесполезен и лучше следует поиграть с TextureMaxLoad (не путать с TEXTURE_MAX_LOAD !!!!) напрямую.

be VERY CAREFULL, the ‘resulting’ value of this formula (MAX_TEXTURE_DATA) corresponds to the MAXIMUM number of bytes the TEXTURE MANAGER is allowed to ‘upload’ per frame. If the resulting value (in bytes) for MAX_TEXTURE_DATA is TOO HIGH you will spike your GPU! (and cause a stutter), so this is a ‘test and see’ value. Ideally, you’ll see an impact on COMPLEX high resolution textures sceneries like PNW and/or PhotoReal scenery.

Будьте очень осторожны, полученное значение (MAX_TEXTURE_DATA)соответствует максимальному числу байт, которые текстурный менеджер позволяет загрузить за один кадр. Если полученное значение (в байтах) для MAX_TEXTURE_DATA слишком велико, ваша видяха офигеет:)) (в оригинале обещают ее прибить:) прим.пер.)и получим дергание. Вобщем, это единица класса «попробуй и узнаешь». В идеале Вы увидите влияние (хорошее или плохое?? прим.пер.) на сложные текстуры высокого разрешения сценариев типа PNW или фоториал сценариев…

It is important to mention that THIS value does NOT have an impact on CPU if you are running a Multiple core setup, due to the texture
manager threads running in the cores responsible for texture loading and object batching. (which are the last 3 if you have 4 cores)

Важно понимать, что это значение НЕ ВЛИЯЕТ на CPU, если у вас многоядерный проц, т.к. текстурный менеджер совместно обрабатается ядрами, ответственными за загрузку текстур и группирование объектов, которыми являются ядра 2,3 и 4
CORERE0 is responsible for: Fibers and main scheduler (ядро 0 ответственно за Волокна???(в ФСХ Fibers ответственны за загрузку земли) и основной планировщик)
CORE1, CORE2 and CORE3 are responsible for the Texture Manager AND Object Batching (Autogen) (ядра1,2 и 3 отвечают за текстурный менеджер и группирование объектов — Автогенерируемый пейзаж)
Короче, без лишних слов,

[JOBSCHEDULER]
AffinityMask=14

Без него ядро 0 ответственно за Fibers — загрузку земли) и основной планировщик)
ядра 1, 2 и 3 отвечают за текстурный менеджер и группирование объектов — Автогенерируемый пейзаж)
С ним Ядро 0 ответственно за Fibers
Ядро 1 — за основной планировщик
Ядра 2 и 3 отвечают за текстурный менеджер и группирование объектов (автоген)
Т.е. для двухядерников эта строка (с указанием 2х ядер) бесполезна.

[MAIN]
FIBER_FRAME_TIME_FRACTION=0.25

the above value means that 0.25 (which means 25%) percentage! is the % ammount of ‘time’ that the ‘fibers’ will ‘cooperate’ with the main scheduler to ‘render’ the terrain system. So, assume you run you sim LOCKED to 25 FPS… thats 25 Frames EACH second, correct? 1 second is the same as 1000 miliseconds. So, if you divide 1000 miliseconds / 25 frames what do you have? you have Miliseconds PER frame. That number is 40 Milisecond.

Это значение подразумевает, что 0.25 — это 25% времени на кооперирование Фиберов с основным планировщиком для рендеринга земли. Предположим, вы залочили сим на 25 кадров в секунду. 1 сек — 1000 милисекунд. если разделить 1000мс/25 кадров, получим милисекунды на 1кадр. Это число — 40мс.

so, now we KNOW that EACH frame, takes aproximately 40 Miliseconds to render (if running frames locked at 25). Now, out of those 40 milliseconds PER frame, HOW MUCH time (or % of time) you want the fiber to cooperatively multitask with the main scheduler? well.. if you read re-read and analyze what Adam told Phil Taylor you’ll see Adam hinted Taylor on ‘what’ the ‘optimal’ time is to do just that, Adam ‘optimal’ value required for the fiber to communicate with the thread is 10ms read here: (thats why they came up with the 0.33) http://blogs.msdn.co…-week-or-2.aspx

Теперь мы знаем, что каждый кадр требует примерно 40 милисек для прорисовки (при ограничении 25 кадров в сек). Теперь, исходя из этих 40мс/кадр, сколько (в %) времени вы хотите выделить на кооперирование Фиберов с основным планировщиком для рендеринга земли? Кое-кто сказал что 10мс (ссылка не работает) Вот откуда они взяли 0.33

So, that value should be adjusted according to your frame rate. Of course, it REALLY doesn’t have any IMPACT whatsoever UNLESS you are running a SINGLE core machine (so you can not offload the scheduler) or you run tileproxy or something VERY heavy. For cases like tile proxy or VERY complex terrain I assume 10ms is simply not enough so you need to give the fiber MORE TIME otherwise, the blurries are going to be TERRIBLE!

Вобщем, это значение должно быть выведено исходя из вашей частоты кадров. Оно ни как не влияет, если у вас одноядерный проц. (т.что вы можете не выгружать планировщик) или вы запустите tileproxy или что-то очень тяжелое. Для этих случаев (tileproxy или тяжелый сценарий) 10мс просто недостаточно, так что вам надо дать больше времени, иначе замыливание будет ужасное.

[TERRAIN]
SWAP_WAIT_TIMEOUT=30

This variable is the number of frames that the terrain engine will wait for terrain textures to be loaded into video memory before forcing new tiles of terrain triangles to be rendered. This is because terrain triangles are bound to a specific texture resolution by the texture coordinates contained in each vertex. When the terrain engine wants to increase the texture resolution on a tile of terrain, for example when you fly closer to the tile, the texture coordinates must be updated to reference the higher resolution texture. However, the new tile can’t be rendered successfully unless the new texture is available in video memory. The terrain engine will wait for some number of frames determined by SWAP_WAIT_TIMEOUT for the new texture to be loaded into video memory. If after SWAP_WAIT_TIMEOUT frames the texture still isn’t available, the terrain engine starts using the new triangles anyway. This usually results in a tile of terrain that is either missing or textured strangely/incorrectly for a few frames until the texture finally shows up in video memory.
(A warm thanks to Adam Szofran, a Microsoft ACES team member and well known community member for his clear definition :-))

Это значение — кол-во кадров, которые движок земли будет ждать, пока грузятся текстуры земли в видеопамять, прежде чем тулить новые поверхности треугольников земли для прорисовки (части земной поверхности под текстуру)
Это происходит потому что треугольники земли ограничены разрешением текстур текстурныим координатами, находящимися в каждом вертексе (точки треугольника земли). Когда жвижок земли желает увеличить разрешение текстуры поверхности земли, к примеру, когда вылетите ближе к поверхности земли, координаты текстуры должны быть обновлены в связи с повышенным разрешением новой текстуры. Но новая поверхность не может быть отрисована удачно до тех пор, пока новая текстура не появится в видеопамяти. Движок земли будет ждать несколько кадров, указанных в SWAP_WAIT_TIMEOUT появления новой текстуры. Если по прошествии этого времени текстура не появилась, движек начнет все равно использовать новый треугольник. Это приводит к отсуствующему или неправильно отображенному куску земли, который потом появляется.

Взято отсюда. http://forums1.avsim…p0-conclusions/

Цитата

If the resulting value (in bytes) for MAX_TEXTURE_DATA is TOO HIGH you will spike your GPU!
Если полученное значение (в байтах) для MAX_TEXTURE_DATA слишком велико, ваш проц офигеет

В оригинале говорится про видюху GraphicProcUnit

А «статья» вота :rolleyes:
http://forum.avsim.n…ak-compilation/

Верно. Спасибо, исправил.
Возник вопрос номер 2. А чем зафиксировать ФПС кроме самого сима?

есть такая штука fps_limiter , но мутная она, нужно бэтч-файл создавать, отзывы на авсимнете неоднозначные.

Просмотр сообщенияPalermo (18 October 2010 — 21:59) писал:

есть такая штука fps_limiter , но мутная она, нужно бэтч-файл создавать, отзывы на авсимнете неоднозначные.

а в чем мутность-то? пример файла есть. вроде все понятно. На форуме отзывов не нашел.

пробуйте, потом расскажите. :)
Действительно работает. Спасибо! И действительно плавнее чем с родным локером. Есть подобие GUI. Там нужно указать путь к ФСХ и желаемую частоту. После чего прога создает батник. С помошью ярлыка на который и запускаем впоследствии игру.
http://pcbuild.ucoz.kz/forum/4-11-1 Взял тут.
Удивительная штука этот ФСХ. Один фиг мажет землю… И это на проверенном позавчера конфиге… Что-ж я не так делаю? Буквально вчера при запуске в YMML полушил шикарную картинку, пусть и с 15 кадрамисек. Что-ж случилось-то?
Сколько времени можно сжегать на настройку этой хреновины. Есть какие-нить идеи, почему тот-же конфиг то мажет, то нет. Строку для обновления шейдеров включил, машину перегружал…
Правда обновил драйвера видяхи. Но это ведь не видеокарта мажет, а система не прогружает тексуры. Нагрузки на видеокарте нет. Видяха даже в самых нагруженых сценах почти простоивает. А видопамяти используется окоо 300Мб из 500. А вот проц пыхтит на 100%

Ладно, продолжим-с перевод.
[BufferPools]
UsePools=0

(note that PoolSize is ignored if UsePools equals 0. Use 1 if you experience crashes )When you see ‘toggle’ values (1 or 0) it means ON/OFF — UsePools its an ON / OFF value (1 or 0)
PoolSize its a ‘size’ value (in bytes) If you ‘DISABLE’ the pools, you will get increased performance, AND ALSO, instability if you don’t ‘balance’ your components and sliders apropiately, in case of instability, then simply DO use pools by changing the value of usePools to 1 and ‘adjust’ PoolSize. BE CAREFUL (and forget everything you have been told about this value)it does NOT use video memory, PERIOD. it uses SYSTEM memory, because its a special type of pool called Explicit Vertex buffer which DOESN’T GO INTO VIDEO MEMORY unless they have A VERY SPECIFIC FLAG(and they don’t) more info here: http://msdn.microsof…y/ff539490.aspx you can also do your own tests and see how ‘increasing’ PoolSize affects the size of the fsx.exe process proportionally.

Заметьте, что значение PoolSize игнорируется, если UsePools=0. (Это вроде переключателя. 1 — задействован, 0 — выключен.)
PoolSize — это резерв памяти (в байтах). Если вы выключите UsePools, получите прирост в производительности, и, также отсутствие стабильности, если вы не сбалансировали компоненты и ползунки. По-этому в случае нестабильности используйте этот резерв, изменив 0 на 1 в UsePools и задав размер в PoolSize. Бутьте осторожны и забудьте все, что вам говорили про это значение. Оно НЕ ИСПОЛЬЗУЕТ ВИДЕОПАМЯТЬ, а только системную, т.к. это особый вид резерва, называемый Explicit Vertex buffer. Можно провести личный тест и посмотреть, как изменение его значения влияет наразмер процесса fsx.exe.

[DISPLAY]
TextureMaxLoad=9
// Carefull. CAN induce stutters on LOW END systems! use multiples of 3 *ONLY* (3, 6, 9 etc)

Используйте числа только кратные 3! (3, 6, 9…)

[SCENERY]
SmallPartRejectRadius=4

Незначительно влияет на восприятие но добавляет пару лишних кадров. Размер в пикселях объектов, которые исключаются из прорисовки на экране. Т.е. при удалении объекта на такое расстояние, при котором он на экране будет занимать 4 пикселя, он исчезнет. Подбирать по вкусу.

Остались непонятными строки

[FSDREAMTEAM]
AntiPopUp=100
AltitudeCull=1

[GRAPHICS]
STALE_BUFFER_THRESHOLD=1024 // Valid values are 5-1024

Единицы измерения:
STALE_BUFFER_THRESHOLD=1024 => KB
TEXTURE_BANDWIDTH_MULT=400 => просто множитель
TextureMaxLoad=15 => (часть формулы: TextureMaxLoad x Texture_Max_Load)
PoolSize=10000000 => Байты
RejectThreshold=102400 => Байты

Вот еще пост того же автора.

Вот — про внешний ограничитель ФПС, у меня он стал ускорять время системное, за секунду проскакивает 2..3 (WIndows XP)

Я наконец добился равновесия между качеством картинки и фпс. ФПС ниже 30 не падает. Наконец-то стало летать комфортно.
У меня, кстати, PoolSize=100 миллионов.
Мой конфиг (только те секции, где вносились изменения)

Spoiler

Избавился от размытия текстур включив анизотропную фильтрацию.

Просмотр сообщенияSchrek (21 October 2010 — 12:04) писал:

Я наконец добился равновесия между качеством картинки и фпс. ФПС ниже 30 не падает. Наконец-то стало летать комфортно.
У меня, кстати, PoolSize=100 миллионов.

Если не трудно,то выделите строки,в каких сделали изменения.

Просмотр сообщенияforza59 (21 October 2010 — 18:47) писал:

Избавился от размытия текстур включив анизотропную фильтрацию.

Мы говорим о разных размытиях. Анизатропная фильтрация устраняет (оптимизирует) визуальный эффект фильтрации текстур. А выше описывались проблемы с их наличием. Размазанные текстуры — текстуры экстремально пониженного разрешения. Вплоть до монотонного размазывания местами прямо под брюхом самолета, которые со временем прогружаются, если поставить на паузу.

Вот мой конфиг на сегодня. Экстремально задрал FIBER_FRAME_TIME_FRACTION=0.80 для более плавной картинки.

Spoiler

[quote name=’LDemon’ timestamp=’1287687381′ post=’1615414′]
Вот мой конфиг на сегодня. Экстремально задрал FIBER_FRAME_TIME_FRACTION=0.80 для более плавной картинки.

У меня в основном артифакты достали.

Попробовал Ваши установки — те же яйца, только в профиль :brrr1:
Это ещё всё зависит от карточки,как она настроена,сколько памяти.Я раньше тоже только и крутил этот файл и пришёл к выводу,что всё это мартышкин труд,чего я только не менял — всё одно и тоже,чаще становилось только хуже :)