Перейти к контенту

Народная 2010 разработка


n6260

Рекомендуемые сообщения

(изменено)
либо держать все ниточки в своих руках, либо откатываться на стандартные методы... Второе - надёжнее

sapsan, стоит все же доделать начатое, как думаешь?

Вместо присваивания nil вполне можно использовать table.remove. Ведь результат проверки наличия в таблице что переменной, которой присвоен nil, что вообще не существующей там переменной одинаков. А то, что проверки на ~= nil нужны - так это и так давно известно (и не только в случае с таблицами).

table.getn не составит труда вообще глобально заменить на #

 

Учитывая вышесказанное про циклы по таблицам, меняющие число записей самих таблиц - придётся проанализировать, что именно делает цикл.

Возможно, где-то я погорячился, заменив for k,v in pairs(table) do на for i=1, #table do. :blush:

Делал это не просто так: скорость работы второго метода в разы больше первого. Хорошо, что не так много нужно пересмотреть

 

function my_binder:net_spawn() в netpacket_pda_binder.script при каких условиях должен отрабатывать ?

Dennis_Chikin, в любом биндере net_spawn() одинаково работает: при загрузках лок и сейвов

 

в этом самом xr_logic.script на pstor_load_all() внимательно

Dennis_Chikin, "последняя рука" - моя, что там не так? :)

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

Ошибка же 1490 - лишь результат неправильной записи в пстор актора (точнее, записи чего-то левого). При чтении это уже не исправишь. При записи же стоят заглушки, какие можно. Разве что при загрузке при попадании в условие потенциального зависа вместо ctr = 0 поставить return. Но там и так дальше идет цикл, который сработает только если ctr > 0

 

-----

Проверка на classname == nil ничего не даст - тут вылет даже нужен, т.к. все одно это означает, что в сейве уже побитый пстор. Проверяй, не проверяй - с этим уже ничего не сделаешь.

В нет_пда мусора не будет - там не пишутся ничего такого (разве что гпс-маячки). Если есть желание - попробуй проверку сделать :)

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

Изменено пользователем Shadowman

Железо: Intel Core i5 9400F / 16Gb DDR4 2400MHz / SSD NVMe M.2 Samsung 970 EVO Plus 256Gb / GF GTX 1050Ti 4Gb Ось: Win10x64

Поделиться этим сообщением


Ссылка на сообщение
(изменено)
for k,v in pairs(table) - это ты зря убрал,там же ключи не обязательно 1..#table

Monnoroch, Я сначала смотрел, что за таблица и, естественно, делал это только на тех таблицах, у которых автоматический числовой индекс.

Фактически, сделано это пока только в одном-двух скриптах, только вот запамятовал, в каких именно :blush:

 

malandrinus, прямо в точку :lol:

Но с другой стороны... под лежачий камень вода-то не течёт. Просто так ведь не трогали бы ничего.

 

sapsan, если есть серьёзные сомнения по поводу определенного кода - можно и откатить часть правок, вызывающих сомнение.

И, наверное, не стоит делать впоследствии такого количества правок одновременно, потому как точно не выплывем потом из этого всего.

 

Предлагаю на данный момент откатить все присвоения t[#t+1] = 1 и удаления путём "обниления" из "чужих" скриптов и оставить их только в "своих", которые знаем от корки до корки. И также оставить кеширование конфигов. sapsan

 

sapsan, Наверное, так... Жаль, не один час на это потрачен. offline_alife один чего стоит - там этого добра - вагон

 

dimos, "аборт" в Соли вообще ничего кроме записи в консоль не делает :)

А на предмет "there is no specified level in the game graph" Сапсан точно что-то делал и выкладывал (что-то вроде проверки валидности level'a)

Изменено пользователем Shadowman

Железо: Intel Core i5 9400F / 16Gb DDR4 2400MHz / SSD NVMe M.2 Samsung 970 EVO Plus 256Gb / GF GTX 1050Ti 4Gb Ось: Win10x64

Поделиться этим сообщением


Ссылка на сообщение
(изменено)

BadSven, в 1.07 есть единственное изменение, которое было бы интересно для сингла:

- увеличено число стеков памяти выделяемой xr_3da.exe, возможно повлияет на уменьшение вылетов при переполнении памяти

Но, к сожалению, это только для мультиплеера.

Что в конфигах - я пока не сравнивал...

 

TREWKO, можно. Но некрякнутый ехе после этой операции перестанет запускаться, а у крякнутого - это не единственная проблема, к сожалению

 

ЗЫ: Давно бы уже пора GSC выложить хотя бы ехе без старика, я уже не говорю про исходники :D

Изменено пользователем Shadowman

Железо: Intel Core i5 9400F / 16Gb DDR4 2400MHz / SSD NVMe M.2 Samsung 970 EVO Plus 256Gb / GF GTX 1050Ti 4Gb Ось: Win10x64

Поделиться этим сообщением


Ссылка на сообщение
(изменено)
Закомментировал в бинд_сталкер.скрипт арбалет и сразу появились часы и биорадар. Ковырнуть бы этот арбалет на предмет меньшего потребления ресурсов. Может у кого есть какие соображения?

dimos, Можно, я выскажусь? Поскольку чуть позже выяснилось, что и некоторые другие действия по разгрузке проца приводят к такому же благотворному результату, лично мне кажется, что дело не в конкретном участке кода/функции/скрипте, а в критической нагрузке на процессор, которую удаётся снять любым из перепробованных тобой способов.

Кстати, почти уверен, что переполнение стека и остальные чудеса у Romale имеют похожее объяснение, разве что в его случае перегруз не проца, а игровой памяти (помните про ограничение 2Гб/приложение?). И, например, возможно если в уборщике к примеру прописать более жесткие параметры уборки и систематические вылеты с разными логами (заметьте, с разными!) сами собой пройдут. Могу, конечно, ошибаться, но стоит попробовать что-нибудь удалить, не относящееся непосредственно к описанным проблемам - например, каких-нибудь крыс на других локах - чисто для эксперимента.

 

dimos, прикол еще в том, что ключ -noprefetch работает только до 1.0005. Ну и кстати, на патче 1.0005 проблем с памятью поменьше.

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

 

Monnoroch, я знаю. И даже подозреваю, почему именно на новом АТП, к примеру, жалобы на вылеты с переполнением стека чаще всего.

Как я понимаю, там опять же из-за лавинообразной обработки колбеков разного типа (хит, смерть) система или железо не справляется, стек вовремя не освобождается и это приводит к его переполнению. Но сути высказывания это не меняет - игра захлёбывается и результатом является вылет с матюком на стек.

Изменено пользователем Shadowman

Железо: Intel Core i5 9400F / 16Gb DDR4 2400MHz / SSD NVMe M.2 Samsung 970 EVO Plus 256Gb / GF GTX 1050Ti 4Gb Ось: Win10x64

Поделиться этим сообщением


Ссылка на сообщение
(изменено)
...один только биорадар съедает до 25% fps!

dimos, давай уже будем честными до конца: проверили ведь практически всё подозрительное на "пожирание" ресурсов, ведь так?

И ничего кроме биорадара вообще фактически твой проц не кушало. Я к тому, что оборот "один только" можно воспринять так, что фпс можно и в два раза поднять, если ещё чего отключить, а ведь это не так :)

 

V92, ну да, сработал дроп на всё, что было в тайнике. Прикольно :crazy:

 

Сейв мой у тебя есть (чтоб работал поставь читспавнер из моего поста в народном творчестве)

а что интересно такго в читспавнере, что может не давать сейвы грузить? Разве только спавнил квестовиков или еще кого-то из spawn_sections_v92?

 

sapsan про то, как это было написано и работало ранее, лучше не выражаться даже :crazy:

Лично моё мнение - что именно твоя работа по переписке всех напряжных для игры моментов дала возможность Архаре добавить пару-тройку вкусностей.

 

dimos, мы ещё забыли с тобой сказать самое интересное про методику тестирования: чтобы увидеть, что мы с процом делаем, мы же еще и видяху на статику сбрасывыали :)

А то оно конечно да, 25% фпс (85 - 115, кажется?) на статике, но это когда когда видяха влёт справляется. А так - вкатай фул динамику, и что в скриптах ни крути - один фиг, простите :russian_ru:

 

Я аж чуть со стула не упал, когда на статике на Phenom II X4 955 (3,2GHz, 4 ядра 6Mb cache) посмотрел фпс: 120-400 (средний - 200-250 :shok: ). Это на последней Соли. Там, конечно, только 2 ядра задействованы, но еще учесть, что какие-то процессы подгрызают остальные 2...

Изменено пользователем Shadowman

Железо: Intel Core i5 9400F / 16Gb DDR4 2400MHz / SSD NVMe M.2 Samsung 970 EVO Plus 256Gb / GF GTX 1050Ti 4Gb Ось: Win10x64

Поделиться этим сообщением


Ссылка на сообщение
(изменено)
все свойства объектов пишутся в их собственные пакеты... но вот для артефактов что-то не нашел...

mangust, sapsan, парни, я конечно тоже не гуру, но, имхо, без ковыряния движка - не получится. Конфиги объектов берутся из *.ltx и никак иначе.

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

"Рэндомность" свойств (фиктивную) можно реализовать только размножением готовых секций в конфигах (как у броников с разными апдейтами). Но, сами понимаете, работёнка будет нехилая, даже очень. И дело не в написании самих секций, а в последующей правке всего, где что-то прописано по артам.

ЗЫ: Kolmogor, насколько мне известно, занимался подобным вопросом, но вот о результатах я не осведомлён...

 

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

sapsan

 

Хмм... не знаю - не пробовал ковырять нетпакеты предметов - может быть... Я как раз и имел в виду, что именно "свойственные свойства" (те, что читаются из конфигов) - врядли удастся перекрыть скриптами. Если же ты прав - это очень круто, между прочим.

 

sapsan, того, что ты понаписал - нет даже в луа_хелп. Откуда инфа вообще (просмотрел весь скриптовый набор в Сталкере ТЧ)?

 

Оно есть в амк.скрипт. Есть и в других (некоторые очевидно копировали чтобы не зависеть от АМК-мода и сделать свой для чистого ТЧ), но не знаю кто что откуда брал и кто есть изначальными авторами.

sapsan

 

set_* функций, которые ты привёл, не нашел нигде. Мы вообще про какой АМК говорим? Про 1.4.1?

 

наверное ты искал как "set_anomaly_data()", а не просто "set_anomaly_data" :)

sapsan

Изменено пользователем Shadowman

Железо: Intel Core i5 9400F / 16Gb DDR4 2400MHz / SSD NVMe M.2 Samsung 970 EVO Plus 256Gb / GF GTX 1050Ti 4Gb Ось: Win10x64

Поделиться этим сообщением


Ссылка на сообщение
(изменено)
Shadowman, а кстати вопрос как специалисту, по поводу "зачем вы их подбираете". Ну, с давних пор, не знаю, прав, нет, но стараюсь (не особо, но так, между делом), освобождаться от "мусора" на локах - таскал "вечные" трупы в аномалии (сейчас, конечно, не сильно потаскаешь), разбивал все ящики подряд, мутантов всех выносил (ну там, где как на АС - накапливались). Ну наивно думал, что все имеют свой ID и всякие for i=0, 65535 (или там от 1?) - скачут по ним тоже. Подбирал все брошенное оружие.

 

Ну сейчас оружие убирается. Но а вот эти бинты, артефакты, выпавшая из зомби мелочь - или это действительно мелочь, на что не надо обращать внимание, или это все тоже убирается? Кроме того раздражает количество всякой эээ... ерунды, которые с течением времени накапливают сталкеры - "найденные" артефакты и собранная с трупов та же мелочь. Так и хочется их грохнуть, а все принадлежащее им "аннигилировать" (где угодно, хоть в ящике, хоть у торговца), но воздерживаюсь, конечно.

 

Это от смутного подозрения, что такое долгое время синхронизации зависит и от этого. Или это реально мизерные доли по сравнению с тем, что дают новые локи. Или это вообще бред?

 

mangust, давай по порядку.

Ид=0 - у ГГ, 65535 - земля-матушка :)

1) Ид действительно находятся в пределах от 0 до 65535 и назначаются всем объектам в игре, либо явно из аллспавн, либо движком автоматически.

2) Если игра не может назначить ид автоматом из-за переполнения (все ид использованы) - следует вылет "not enough ID's".

3) Если делается попытка заспавнить объект с ид, который в игре уже есть - следует вылет "Specified story object is already in the Story registry!".

 

Оружие, трупы - убираются уборщиком. Те бинты - Сяка и его ф-ция сама их ставит и убирает, нечего их трогать.

Артефакты, не подобранные ГГ и неписями убираются при выбросе. Все, что есть ненужного запросто можно продать торговцам или аннигилировать, как описано выше.

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

Долгое время синхронизации - плата за оптимизацию быстродействия в реалтайме. FPS ведь важнее, правда? А лишняя сотня объектов игре - это капля в море, так что не тратьте свое игровое время на ерунду. Если у вас горы трупов на дороге у неписей и вы не хотите, чтобы те их обчистили и ходили с набитыми всякой ерундой рюкзаками - обберите их сами и продайте все лишнее. Если же та же гора трупов где-то в безлюдном месте - не парьтесь, уборщик втихаря эту операцию проделает за вас. Например, если вынести "под ноль" ту же базу вояк на агропроме, и нет желания возиться подбирать лут - можете спокойно вернуться на свалку. Гляньте потом в журнал на сообщения уборщика - и всё будет ясно.

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

 

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

Изменено пользователем Shadowman

Железо: Intel Core i5 9400F / 16Gb DDR4 2400MHz / SSD NVMe M.2 Samsung 970 EVO Plus 256Gb / GF GTX 1050Ti 4Gb Ось: Win10x64

Поделиться этим сообщением


Ссылка на сообщение
(изменено)

sapsan, скажу честно: без понятия. Я как-то мельком на это натыкался - не вникал, зачем.

Гдето в скриптах есть ф-ция sak.add_tail() - вот там эта штука зарыта

 

крайт, не должны лежать. Я не горячился. По крайней мере, у меня - так, как я написал (на последней допе). Последняя рука по правкам этого - не моя...

Изменено пользователем Shadowman

Железо: Intel Core i5 9400F / 16Gb DDR4 2400MHz / SSD NVMe M.2 Samsung 970 EVO Plus 256Gb / GF GTX 1050Ti 4Gb Ось: Win10x64

Поделиться этим сообщением


Ссылка на сообщение
(изменено)
примитивный скриптовый запрет на спавн артов

Arhara, странный какой-то способ... надо будет посмотреть, как это по-человечески реализовать.

 

Dennis_Chikin, про трупы разговора вроде не было... к тому же, не забывай, что есть таблица исключений: кого не убирать (неправильно только одно - это значит не убирать никогда). По сути, вечно-трупиков не так уж и много... Да и с кого тогда тайники брать? Только распитием водки тогда.

Вечно-трупики, по идее, можно убирать после каких-либо событий (получения поршней, например). Но это если кто-то возьмётся за исследование - кто у нас в исключениях по уборке, зачем мы их оставляем и когда их можно безболезненно убирать. Соответствующий код, который позволит пользоваться таблицей исключений вида "секция" -> "поршень" (вместо существующей "секция") написать несложно.

А ящики - это какие? Деревянные, те, что ножичком можно разбить?

Изменено пользователем Shadowman

Железо: Intel Core i5 9400F / 16Gb DDR4 2400MHz / SSD NVMe M.2 Samsung 970 EVO Plus 256Gb / GF GTX 1050Ti 4Gb Ось: Win10x64

Поделиться этим сообщением


Ссылка на сообщение

deadmoroz, кроме оружейных, есть ведь еще и другие текстуры...

Вобщем, «Огласите, пожалуйста, весь список» © :)

Железо: Intel Core i5 9400F / 16Gb DDR4 2400MHz / SSD NVMe M.2 Samsung 970 EVO Plus 256Gb / GF GTX 1050Ti 4Gb Ось: Win10x64

Поделиться этим сообщением


Ссылка на сообщение
(изменено)

malandrinus, попробовал вчера поиграться с мипмап уровнями текстур от Солянки. Несколько массовых стволов таки наблюдаются с текстурами без них - Абакан, МП-5, аддоны всякие, ФП2000 и несколько других (причем, во многих случаях бампы - с уровнями, а сами текстуры - без). Поправил несколько. Сделал по принципу оригинальных от ПЫС (в случае, если бампы с уровнями, на текстуре делал такое же количество, сохранял все в формате DXT5).

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

И еще вопрос: ведь после проделанной процедуры формально размер самого файла текстуры и её размер в пикселях увеличивается - откуда же будет выигрыш? Ведь движку подгружать файл текстуры бОльшего размера (размер файла текстуры примерно на 30% больше, а в пикселях - в два раза размер по горизонтали- от 1024х1024 до 1024х2047 при добавлении мипмапов).

И ещё: понятно, что на дальних расстояниях будет натянута текстура из меньшего уровня (соответствие между расстояниями и уровнем мипмапа, наверное, в движке зашито?), а как будет с ползунками в настройках видео? Это будет как-то влиять на используемую текстуру, или это "из другой оперы"?

 

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

 

--------

Еще немного текстурок сделал. Использовал формат DXT3.

1. Есть ли какая-то разница, сколько уровней добавлять? (в некоторых текстурах/бампах стоит 9, в некоторых 10, есть какие-то мелкие текстурки каких-то там глушителей и еще какой-то мелочи, где их 5-7).

1а. Будет ли какая-то беда, если в текстуре будет к примеру 10 уровней, а в бампе 9 или наоборот (сложно порой определить, сколько уровней есть - последние очень мелкие и если края нечеткие - легко ошибиться при подсчете, а в инфе по файлу ничего не видно).

2. Нужно ли делать уровни на очень мелкие текстуры и на такие, которые в основном в руках ГГ и бывают. Т.е. к примеру, перекрестия прицелов - они ведь только перед самым носом ГГ используются...

 

Пока больше делать не буду - вдруг что-то неправильно сделано? Очень хорошо было бы получить отзыв у кого-то, кто что-то понимает в вопросе.

 

 

--------

deadmoroz, при первом прочтении вашего поста показалось, что все, что я сделал - в топку. При следующем же, а также после прочтения ответа уважаемого malandrinus, возник естественный вопрос - так в чём же собственно ошибочка? В рассуждениях? Ведь по-любому при сохранении плагин не даст сделать ошибку. Даже если я укажу, что уровней надо 9, а на самом деле нужно 10, то плагин сам разберётся, сколько их нужно - и столько сделает :)

Если же ошибка всё же есть в самой продукции - то конкретно прошу указать, какие именно текстуры оказались "бракованными" (пример хотя бы).

 

--------

deadmoroz, malandrinus, спасибо, понял.

 

Текстуры выложены здесь

Изменено пользователем Shadowman

Железо: Intel Core i5 9400F / 16Gb DDR4 2400MHz / SSD NVMe M.2 Samsung 970 EVO Plus 256Gb / GF GTX 1050Ti 4Gb Ось: Win10x64

Поделиться этим сообщением


Ссылка на сообщение
(изменено)

Vasilij28, готово. Поправленные текстуры солянки Часть 3

 

deadmoroz, мы с тобой одни и те же текстуры правили (мой второй архив и твой второй - во многом пересекакются) :(

Это я виноват - нужно было выложить список... (сорри за неполную информацию :blush: )

tex_pravka_23092010.7z:

Aaz\

amk\

arsenal_mod\

wpn\

tex_pravka_23092010_1.7z

amk\

cod4\

detail\

fx\

glow\

grnd\

hol\

internal\

item\

jeffry\

map\

veh\

water\

wm\

zimovie\

 

 

 

1 Отмасштабировать до стандартного (если квадратная)

2 Нарастить чёрным до стандартного. И где располагать изображение - в центре или в углу

3 Допустимо ли растягивать/сжимать изображение (искажая его)

1. Скорей всего так и надо. Я пару текстур 2048х2048 не тронул, хотя все остальные текстуры того же назначения 1024х1024.

(по-видимому, их надо бы тоже перегнать в 1024х1024)

2. Наращивать - это смотря что... Расположить в левом верхнем углу, скорей всего.

3. Вот искажать - скорей всего не стоит...

 

deadmoroz, amk_ui_base_texture.dds - явно не соляночая (в последнем твоем архиве).

 

----------

chorik, не хочешь ли ты сказать, что если я сохранил текстуры бампов нВидиевским плагином в DXT3, а не в DXT5, то этим самым их "поломал"?

Кстати, если не затруднит, скачай, пожалуйста, любой из архивов (самый маленький - мой 2-й, 30Мб) и глянь, все ли там как надо. Про то что в каталогах detail, wm у меня лежат непофиксенные текстуры - я знаю, уже поправил. Еще штук 120 текстур сегодня сделал - выложу попозже. Похоже, это таки уже всё.

Походу возник вопрос: текстуры неба (выброс, облака) в Соли - с ними всё в порядке? Там как-то по-другому мипмапы сделаны - мне непонятно.

Изменено пользователем Shadowman

Железо: Intel Core i5 9400F / 16Gb DDR4 2400MHz / SSD NVMe M.2 Samsung 970 EVO Plus 256Gb / GF GTX 1050Ti 4Gb Ось: Win10x64

Поделиться этим сообщением


Ссылка на сообщение
(изменено)
При добавлении мини-мап размер архива текстур увеличится. и на много

Trapper023, всего на 30% при добавлении мипмапов к текстуре ( текстура 1024х1024 растёт с 1Мб до 1,3Мб) :)

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

Другое дело, что явно нужно сократить количество уникальных текстур в Соли процентов на 20-30 и всё будет нормально. Это можно сделать либо выбросив все лишнее, либо какими-либо другими способами (думаю, их есть немало - вплоть до создания "сборных" текстур, - такие тоже имеются).

Я сейчас собираю все "до кучи" - получается правленых текстур примерно 1/6 - 1/5 от общего объема добавленных в Соли (соляночных текстур всего - 2,5Гб). Оружейных из них (из правленых) - чуть ли не половина. Заставляет задуматься. Здорово, когда "всего много", но может лучше локаций добавить, а предметов поубрать?

* [ D3D ]: textures[763585 K]

ЗЫ: посмотрел логи в своей игре "до" и "после". Очень неоднозначные данные, но всё же. При каждой загрузке локации этот показатель растёт и потом примерно стабилизируется (при игре несколько часов подряд).

до правки текстур: * [ D3D ]: textures[985735 K] (иногда эта цифра чуть зашкаливала за 1Гб)

после правки: * [ D3D ]: textures[766070 K]

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

 

 

 

убрать ту кучу костюмов

C2D, ага :rolleyes:

 

 

Текстуру amk_ui_base_texture.dds из архива deadmoroz textur_prav_2.7z не брать! (текстура не от Солянки).

Если поставили её себе - верните оригинальную. Путь: gamedata\textures\ui\amk_ui_base_texture.dds

 

Кто всем этим будет заниматься?

Вот-вот. Удаление стволов - задачка по сложности ничем не уступает добавлению...

Переполовинить - точно можно. ПП в игре - уйма, реально оставить парочку-тройку...

Изменено пользователем Shadowman

Железо: Intel Core i5 9400F / 16Gb DDR4 2400MHz / SSD NVMe M.2 Samsung 970 EVO Plus 256Gb / GF GTX 1050Ti 4Gb Ось: Win10x64

Поделиться этим сообщением


Ссылка на сообщение
(изменено)

крайт, я как раз и говорю про то, что богатое разнообразие стволов, розданных НПЦ, съедает драгоценной памяти значительно больше, чем богатое разнообразие потенциально возможных апгрейдов броников, т.к. первые в игре есть сразу почти все (ну, точнее, по мере спавна неписей с этим оружием или появлением его у ГГ), вторые же появляются только при апгрейде Меченым конкретно для своих нужд (т.е. появляется в игре со всеми текстурами и прочей начинкой).

если нечего брать то и иконка не нужна

[spoiler=крайт,]Ага, и если ГГ бросит костюмчик на землю - будет вылет. Да и в инвентаре всё одно его надо показывать :)

 

 

malandrinus, согласен, не замечал порчи текстур при пересохранениях. Кстати, так и не нашёл способа посмотреть, в каком формате текстура сохранена изначально. DDS - понятно, а точно какой именно формат - непонятно. Метаданных нет про это, Фотошоп - тоже только с плагином при сохранении даёт сконвертить. Может, какую-то программку найти можно, которая покажет текущий формат? Хотя... по размеру файла и размерам в пикселях можно вычислить вроде

Изменено пользователем Shadowman

Железо: Intel Core i5 9400F / 16Gb DDR4 2400MHz / SSD NVMe M.2 Samsung 970 EVO Plus 256Gb / GF GTX 1050Ti 4Gb Ось: Win10x64

Поделиться этим сообщением


Ссылка на сообщение
если убрать из нычки и запретить выпадение, ГГ будет нечего выбрасывать

(прошу прощения: поставил запятую в цитате, но иначе смысл теряется)

крайт, ...т.е. иными словами, вы предлагаете лишить Меченого куртки новичка вначале? Пахнет посягательством на... ладно, молчу :D

Можно будет избавится от 15 икон.

Это в плане борьбы за место для последующей упаковки файла иконок в размер 2048х2048, или ради чего?

Ну выиграем мы клаптик в файле иконок... файл ведь меньше от этого не станет ни на байт. Или не для слабых видеокарт?

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

Железо: Intel Core i5 9400F / 16Gb DDR4 2400MHz / SSD NVMe M.2 Samsung 970 EVO Plus 256Gb / GF GTX 1050Ti 4Gb Ось: Win10x64

Поделиться этим сообщением


Ссылка на сообщение
(изменено)

Trapper023, ты прям прочитал мои мысли :)

За WTV и папку det - спасибо. Я не понял сначала, где deadmoroz нашёл текстуры в 32bit-A8R8G8B8, а смотреть формат - вообще было нечем.

Значит, я погорячился насчет того, что часть 4 переделанных текстур - последняя. Это ж надо - "слона-то я и не приметил".

Думаю, всё же правильней det в DXТ5 посохранять - всё равно размер тот же, а качество - чуть получше. Надо же подумать и про тех, кто на максималках играет: может быть заметно...

И по-видимому многие текстурки можно в DXТ1 сделать, где альфа без градаций, полной прозрачностью. Таких тоже очень немало.

 

----

папку det вообще можно в DXТ1 выгнать - там везде и так либо 1-битный альфа-канал, либо вообще без альфы!

 

----

Короче вот: правленные текстуры, Часть 5 (теперь в ДХТ5).

Обязательно сделать бэкап папочки gamedata\textures\det.

Очень желательно поставить дальность видимости, плотность травы и качество текстур на макс и глянуть. А еще лучше - заскриншотить со старыми и новыми текстурами. Особенно интересно было бы посмотреть, как это будет на двух производителях видях: Радике и нВидии.

 

-----

Trapper023, перепаковал в ДХТ5 и перезалил :)

Изменено пользователем Shadowman

Железо: Intel Core i5 9400F / 16Gb DDR4 2400MHz / SSD NVMe M.2 Samsung 970 EVO Plus 256Gb / GF GTX 1050Ti 4Gb Ось: Win10x64

Поделиться этим сообщением


Ссылка на сообщение
(изменено)
Есть DXT5. Комменты от корифеев, включая ПЫС к этому склоняются. Нужно ли тут моделирование и пробы?

Arhara, нужно. Соль вылетает по памяти и частенько. Если можно сделать текстуру в 10 раз (!) меньше без потери качества - я считаю, что это нужно сделать. Конечно, это крайний случай, но всё же... Во многих случаях выигрыш вдвое, да ещё считая, что мипмапы добавляются.

Изменено пользователем Shadowman

Железо: Intel Core i5 9400F / 16Gb DDR4 2400MHz / SSD NVMe M.2 Samsung 970 EVO Plus 256Gb / GF GTX 1050Ti 4Gb Ось: Win10x64

Поделиться этим сообщением


Ссылка на сообщение
(изменено)

deadmoroz, травку я уже выложил вчера в DXT5.

На самом деле не так уж сложно поделить текстуры на несколько папок, каждую под свой метод конвертирования, а потом собрать их вновь.

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

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

В общем, будет время - займусь.

 

Кстати, насчёт патронов: по-моему, нельзя конфигом задать, сколько патронов в пачке (патроны ведь не поштучно, а пачками выдаются).

Поскольку наименьшее кол-во патронов в пачке - для снайперок и дробовиков, то ими и вооружить неписей на баре, так как именно там самый "тугой" вход в онлайн :)

 

 

Изменено пользователем Shadowman

Железо: Intel Core i5 9400F / 16Gb DDR4 2400MHz / SSD NVMe M.2 Samsung 970 EVO Plus 256Gb / GF GTX 1050Ti 4Gb Ось: Win10x64

Поделиться этим сообщением


Ссылка на сообщение
(изменено)
Исключение составляют:

-тектура кровососа, о-сознанца, маскхалата (акторы)

deadmoroz, act_monol_holo.dds - это ведь и есть текстура о-сознанца? Так вот, она уже в оригинальной геймдате сделана в DTX1 с альфой и мапами :)

И вообще, столкнулся с тем, что многие бампы изначально сделаны с мапами в DTX3.

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

Не вижу смысла конвертить те бампы, которые сделаны с мапами, но в DTX3.

Как думаешь?

 

-------

deadmoroz, дело в том, что довольно многие основные текстуры (опять же в оригинале) действительно сделаны с компрессией DTX1 (есть и оружие и текстуры лиц и визуалов сталкеров, рюкзаки всякие и т.п.), поэтому лично я не сомневаюсь, что предложение привести к "общему знаменателю", так сказать, все остальные текстуры - правильное решение. Особенно если учесть, что на этом мы сэкономим еще память и выиграем в быстродействии.

Кстати, походу еще вопрос. Как быть с текстурами - "пустышками" в формате 32bit-A8R8G8B8 (размер у них 132, 212 байт)?. Т.е. нужно ли их конвертить? Ну а мапы, понятное дело, добавлять там не из чего :)

ЗЫ: занимаюсь сейчас сортировкий текстур исходя из установленных правил (дхт1 - налево, дхт5 - направо). Уже пару часов убил и только первые три папки разобрал. Та ещё работёнка. Получается пока, что примерно 60-70% тектсур - под переделку. Размеры менять не буду нигде, только конвертирование и мапы при необходимости.

ЗЗЫ: можно на "ты", мы ведь тут не на официальной церемонии.

Изменено пользователем Shadowman

Железо: Intel Core i5 9400F / 16Gb DDR4 2400MHz / SSD NVMe M.2 Samsung 970 EVO Plus 256Gb / GF GTX 1050Ti 4Gb Ось: Win10x64

Поделиться этим сообщением


Ссылка на сообщение
(изменено)

chorik, если подойдёт опыт текстурщика-недоучки, то слушай.

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

Во-вторых, в DXT1 тоже есть прозрачность. Только она (альфа-канал) - 1-битная, т.е. не поддерживает неполную прозрачность.

 

-----------

chorik, DXT1 совершенно спокойно можно ставить на иконки худа, будь то инвентарь или всякие иконки в диалогах. Там альфа-канал - сплошным цветом.

Это точно проверено и работает. Ну и плюс, естественно его используют в оригинале повсеместно на непрозрачных текстурах (асфальт, кирпичные стены и проч.). На оружии он тоже работает "на ура". Бампы - отдельная песня, они должны быть со сжатием не менее DХТ3 (как правило, в DХТ5).

 

... с текстурами прицельных сеток типа "коллиматор"...

deadmoroz, вообще это не трогал, именно из приведенных тобой соображений. По идее, никакой беды от этого не будет.

Изменено пользователем Shadowman

Железо: Intel Core i5 9400F / 16Gb DDR4 2400MHz / SSD NVMe M.2 Samsung 970 EVO Plus 256Gb / GF GTX 1050Ti 4Gb Ось: Win10x64

Поделиться этим сообщением


Ссылка на сообщение
  • Недавно просматривали   0 пользователей

    Ни один зарегистрированный пользователь не просматривает эту страницу.

AMK-Team.ru

×
×
  • Создать...