При хостинг поддержке Интернет-сообщества VBIOS CS-Mapping.com.ua
Вернуться   CS-Mapping.com.ua > Forum > Картостроение > Помощь > Помощь по Counter-Strike 1.6
Ник
Пароль
Регистрация Правила форума FAQ Пользователи Администрация Календарь Поиск За 24 часа Пометить все разделы прочитанными

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
Старый 03.03.2017, 17:00  #1
KaJlawHuKoB
KaJlawHuKoB
Рядовой
Регистрация: 05.07.2010
Адрес: Украина, Волынская обл., пгт Маневичи
Возраст: 28
Сообщения: 35


Желтая звезда Оптимизация карты. R-Speeds. Wpoly, epoly.

Всем привет! Как известно, в учебнике Дмитрича пишет, что "wpoly" - это полигоны от брашей, а "epoly" - полигоны от моделей (рук с оружием, моделей ироков, моделей на карте). Возникает вопрос, полигоны от энтити-объектов (func_wall и т.д.) попадают в категорию wpoly или epoly? В другой статье от Дмитрича о компиляторах ZHLT Custom build идет речь о закрашивании нуллом невидимых сторон брашевых энтити (к примеру, дно или место прислонения к другому брашу). А в брашах, которые прислонены друг к другу (например, забор, который соприкасается с землей) тоже нужно этой текстурой дно закрашивать или эти стороны автоматически "отсечет" HLVIS?
KaJlawHuKoB вне форума Ответить с цитированием
Старый 03.03.2017, 17:56  #2
xDShot
xDShot
Генерал-Полковник
Регистрация: 20.12.2010
Адрес: Санкт-Петербург
Возраст: 26
Сообщения: 1,819
Замечания: 2


По умолчанию

[ Цитата ] Возникает вопрос, полигоны от энтити-объектов (func_wall и т.д.) попадают в категорию wpoly или epoly?
epoly
xDShot вне форума Ответить с цитированием
Старый 03.03.2017, 18:17  #3
Cep}I{
Cep}I{
>: 4 8 15 16 23 42 ▌
Регистрация: 23.11.2008
Адрес: Казахстан, Темиртау
Возраст: 32
Сообщения: 941


По умолчанию

[ Цитата ] Сообщение от KaJlawHuKoB: А в брашах, которые прислонены друг к другу (например, забор, который соприкасается с землей) тоже нужно этой текстурой дно закрашивать .... ?
Обязательно! Всё невидимое закрашиваем нуллом.
Cep}I{ вне форума Ответить с цитированием
Старый 03.03.2017, 18:23  #4
Leshiy
Leshiy
Редактируемый
Регистрация: 24.09.2011
Возраст: 27
Сообщения: 216


По умолчанию

А разве движок не обрезает эти места при компиляции? По крайней мере в соурс работает. До недавнего времени прям с пеной из рта закрашивал все "невидимое" нодравом. Но потом оказалось что на производительность или скорость компиляции - не влияет...
(Это я именно про плоскости брашей которые прилегают друг к другу)
Leshiy вне форума Ответить с цитированием
Старый 03.03.2017, 18:27  #5
Дядя Миша
Дядя Миша
Регистрация: 28.03.2010
Адрес: Кубань
Сообщения: 15,383


По умолчанию

2 KaJlawHuKoB: функ_валлы это wpoly тоже.
Ну да проверить легко. Делаешь карту-коробку и ставишь на ней функ_валл. Включаешь r_speeds и вертишь башкой, чтобы функ_валл пропадал из поля зрения. Ну и смотришь какой счётчик меняется.
Дядя Миша вне форума Ответить с цитированием
Старый 03.03.2017, 19:43  #6
Cavador
Cavador
Генерал-Майор
Регистрация: 09.12.2007
Сообщения: 1,367
Замечания: 1


По умолчанию

обязательно надо красить, просто иметь хорошую привычку сначала NULL, а потом уже окрашивать; дело не в том, что компилятор обрежет а, что нет, это просто как хорошее правило.
Cavador вне форума Ответить с цитированием
Старый 03.03.2017, 21:04  #7
Лорд Канистра
Лорд Канистра
ПМС КСМ
Регистрация: 28.05.2006
Адрес: 0x00000034 Прерывание: 0x00000015
Возраст: 29
Сообщения: 4,554
Замечания: 14


По умолчанию

Вот мне издревле было интересно, как же так движок умудряется рисовать вполики гораздо медленней еполиков. Не может ж быть, что вся разница только из-за налепленных на них лайтмап?
Лорд Канистра вне форума Ответить с цитированием
Старый 03.03.2017, 23:27  #8
Дядя Миша
Дядя Миша
Регистрация: 28.03.2010
Адрес: Кубань
Сообщения: 15,383


По умолчанию

2 Лорд Канистра: модельки в стрипах, браши в обычных полигонах.
Дядя Миша вне форума Ответить с цитированием
Старый 04.03.2017, 05:14  #9
npocTo_LaM
npocTo_LaM
Генерал-Лейтенант
Регистрация: 27.10.2012
Сообщения: 1,474


По умолчанию

Имхо, текстурой null стоит закрашивать поверхности (при условии что окрашиваемая поверхность не видна игроку) соприкасающиеся:
- браш + func_detail - красим поверхность браша, поверхность func_detail компилятор сам удалит:
- браш + брашевая энтитя - красим стороны у обоих;
- брашевая энтитя + брашевая энтитя (пример: func_wall + func_wall) - красим стороны у обоих;
- браш + браш, покрытый текстурой sky - красим сторону браша, текстурой скай его покрывать можно, но не нужно, так как полигон все таки останется.
Внешняя поверхность карты и поверхности брашей не видные игроку в игре (пример крыши домов) - красим текстурой null.
Тратить время специально на закрашивание отдельный поверхностей, стоит когда есть проблемы с в_поли. В принципе, выполнять выше описанное - это скорее правило хорошего тона да, компиляция идет быстрее в любом случае, но не всегда это заметно. На сложных картах, как насыщенных деталями, так и сложных по архитерктуре (не обязательно с точки зрения игрока, в основном с точки зрения движка) - ОБЯЗАТЕЛЬНО!
Вообще оптимизация нужна и по части моделей, правда лимит там шире.
Как-то так, возможно какой то случай забыл, можно дополнить, если кто вспомнит.
Примечание: построение карты из брашей покрытых текстурой null - это скорее привычка или один из способов брашворка, если нормально и правильно стыковать браши, то это не обязательно.
npocTo_LaM вне форума Ответить с цитированием
Старый 04.03.2017, 09:56  #10
Дядя Миша
Дядя Миша
Регистрация: 28.03.2010
Адрес: Кубань
Сообщения: 15,383


По умолчанию

Я вам предлагаю провести нехитрый эксперимент:
взять карту где нет ни одной текстуры NULL. Сделать её резервную копию. И копию закрасить нуллом там где вы привыкли обычно красить. Скомпилировать оба варианта и сравнить wpoly.
Дядя Миша вне форума Ответить с цитированием
Старый 04.03.2017, 11:35  #11
npocTo_LaM
npocTo_LaM
Генерал-Лейтенант
Регистрация: 27.10.2012
Сообщения: 1,474


По умолчанию

ну что привел выше, это отчасти влияет на в_поли, думаю в зависимости от сложности карты разница будет от 25 до 100-150 в_поли, опять же смотря какие методы снижения в_поли были использованы, они то больше влияют на полигоны. Замена текстуры sky на null, описанная выше, лишь слегка отразится на времени просчета освещения при компиляции, на в_поли никак не повлияет.
npocTo_LaM вне форума Ответить с цитированием
Старый 04.03.2017, 12:06  #12
Flash
Flash
Регистрация: 21.09.2004
Адрес: Кривой Рог, Украина
Возраст: 38
Сообщения: 16,697


По умолчанию

2 Дядя Миша:
Я такой "эксперимент" проводил более десяти лет назад, когда пришлось карту оптимизировать, ибо вполи сильно велик был. Мне тогда пришлось выделить всю карту и махом перекрасить в нулл, красить всё заново было очень утомительно, но результат того стоил, с тех пор я и взял себе за привычку строить изначально нулле.
Flash вне форума Ответить с цитированием
Старый 04.03.2017, 12:14  #13
Дядя Миша
Дядя Миша
Регистрация: 28.03.2010
Адрес: Кубань
Сообщения: 15,383


По умолчанию

2 Flash: 10 лет назад еще не было VHLT.
Дядя Миша вне форума Ответить с цитированием
Старый 04.03.2017, 12:48  #14
FiEctro
FiEctro
Регистрация: 28.07.2006
Адрес: Эквестрия
Возраст: 30
Сообщения: 17,146


По умолчанию

2 Flash:
Так CSG всё обрежет же, крась не крась нуллом, а результат будет один и тотже. Исключение разве что составляют фейсы соприкасающиеся с небом, наверное как раз из-за них ты и получил различные результаты.
FiEctro вне форума Ответить с цитированием
Старый 04.03.2017, 13:03  #15
Enimakanaon
Enimakanaon
Незабаненный
Регистрация: 30.06.2015
Адрес: Новосибирск
Возраст: 38
Сообщения: 1,046


По умолчанию

Я вам, любителям мерять карту вполями, вот что скажу. У новых компов проблем с картами на голдсорсе нет. У меня вот даже арканос в самом сочном месте не проседает ничуть. А у старых компов отчего-то совсем другие проблемы, нежели вполи. Мигающие источники света, анимированые спрайты, стекла-решеточки, и прочая лабудень, и особенно эти ваши любимые модели, сжирают фпс на старье намного сильнее, чем даже экстремально высокие показатели wpoly.

Постоянно имея в своем распоряжении много старых машин, плюс множество знакомых мапперов под ХЛДМ, которые тоже играют с чего придется, я заметил, что вполи в 95% современных случаев - самое последнее, из всего, что может уронить фпс. До смешного доходило, у игроков на слабых машинах лагала карта коробка, на которой вообще ничего не было, а вполи был в пределах 200. Причина нашлась - тормозило от оружия и патронов (!) слишком густо наваленных в эту коробку.

Так что хватит бегать там, с r_speeds 1, и меряться вполями. Это чушь собачая, а не оптимизация.

Методы оптимизации были всю жизнь одинаковые, описаны в доисторические времена, и актуальны до сих пор. Красить нуллом помогает, но очень слабо. Больше всего лишних вполи вылезает не от незанулленых обратных сторон брашей, а от разбиения брашей брашами. Там реально счет на тысячи лишних полигонов, от которых можно и нужно избавляться. Очень важно знать, что браши внутри ентити также режут друг друга - о такой подставе многие и не подозревают, считая, что если они перегнали что-то в func_wall (func_detail), то браши друг друга больше не бьют. Авотфиг! Надо делать слоеный пирог из двух-трев воллов, чтобы внутри одного волла браши друг друга не трогали - если хочется полностью избежать разрезания.

И краеугольный камень оптимизации - это собственно строение карты. Если карта состоит из огромной открытой коробки, где все на виду, то там оптимизировано не будет, хоть тресни. Надо помнить, под какой устаревший отстой мапишь, и ограничивать игроку обзор, чтобы он слишком многое не видел.

Способы определения "оптмизированности" карты, которые принято, с подачи дмитрича, использовать - совершенно никуда не годятся. Даже если вы не будете все измерять параметрами wpoly\epoly, а по правильному напишете какой-нибудь fps_max 1000 (fps_override 1 на стиме) , и будете смотреть, где фпс просаживается от тысячи на вашем суперновом задротском компе - это объективно ни о чем не скажет, потому что, как я уже писал, узкие места у старых компьютеров и у новых - разные.

Потому просто заведите себе друзей с хреновыми машинами, или выкладывайте карты на КСМ - он же для этого и нужен. Пускай народ высказывает, тормозит или нет. Надежнее способа нет. Если не тормозит у того, для кого собсно карта - нафига тогда что-то оптимизировать?

Enimakanaon, подумав, добавил 04.03.2017 в 13:10
Собственно, браши очень просто переводятся в модель. Зачастую можно некоторые брашевые конструкции целиком переводить в модель, инструментов для этого множество.

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

Последний раз редактировалось Enimakanaon, 04.03.2017 в 13:10.
Enimakanaon вне форума Ответить с цитированием
Старый 04.03.2017, 13:30  #16
Дядя Миша
Дядя Миша
Регистрация: 28.03.2010
Адрес: Кубань
Сообщения: 15,383


По умолчанию

[ Цитата ] Очень важно знать, что браши внутри ентити также режут друг друга - о такой подставе многие и не подозревают
В моих свежих компиляторах есть параметр zhlt_nocsg 1 который отключает такое повидение. Прописывать в настройки энтити.
Дядя Миша вне форума Ответить с цитированием
Старый 04.03.2017, 13:38  #17
npocTo_LaM
npocTo_LaM
Генерал-Лейтенант
Регистрация: 27.10.2012
Сообщения: 1,474


По умолчанию

Как бы вопрос "как правильно оптимизировать карту" в ветке не обсуждался.
Их (способов) достаточно много, некоторые в стародавние времена были не доступны (не известны) большинству мапперов (типа замена конструкций из брашей на модели).
Само собой понятно, что чем мощнее комп, тем меньше просядет фпс и тем быстрее фпс будет выровнен и тем менее лаг будет заметен игроку. Опять же карта может не лагать при тестовом прогоне и может залагать при сетевой игре. И такая ситуация возможна даже на весьма не кислом компе. Так что, опять же имхр, при необходимости карту все же лучше оптимизировать, а не полагаться на то, что у всех достаточно мощные компы и лагов никто не заметит. А то, не ровен час, повторится ситуация с первый крайзисом
Да, движек далеко не новый, но проблема в_поли есть и в сорсе, просто там лимит больше и появились дополнительные способы "оптимизации" карты (снижения в_поли).
По поводу устарелости "оптимизации по Дмитричу", основные работают и по сей день, причем даже в том же сорсе. Так что, имхо, если маппер будет пользоваться хотя бы ими будет уже весьма неплохо.
npocTo_LaM вне форума Ответить с цитированием
Старый 04.03.2017, 14:14  #18
Hypax
Hypax
Парам парам пам! ПАМ!
Регистрация: 18.07.2013
Адрес: Россия
Возраст: 30
Сообщения: 564


По умолчанию

Соприкасаемые поверхности брашей,после компила обрезаются даже если не красить null-ем,во всяком случае на vhlt33.Когда тестил,на wpoly не повлияло,как и на base patches.Проверить это не сложно,особенно если в jack-e,там для ленивых даже комнатка тестовая создается сама

И не следует пренебрегать w_poly,а то начнут щас делать все мелкие детали на карте брашиками и выльется это в 100000+ вполиков,а на каждый крутой комп,найдется еще более круче.
Hypax вне форума Ответить с цитированием
Старый 04.03.2017, 14:20  #19
Enimakanaon
Enimakanaon
Незабаненный
Регистрация: 30.06.2015
Адрес: Новосибирск
Возраст: 38
Сообщения: 1,046


По умолчанию

[ Цитата ] Сообщение от npocTo_LaM: ситуация с первый крайзисом

Гонево это все, про первый крайзис. Там была ОЧЕНЬ хорошая оптимизация, которая не снилась многим современным играм. Я его проходил без всяких тормозов, на очень скромном, даже по меркам того времени компе (GF 8800 GS, Pentium IV 2.4, 512 RAM).

Утку про то, что там плохая оптимизация, запустили после того, как толпы ламеров на своих убер древних развалинах поставили галочку ULTRA напротив всех настроек графики (мошнблюры, супертурбоантиалисинг в овер 9к проходов и прочая лабуда, которая была создана только для того, чтобы было чем нагрузить супер-мощные видеокарты) , и начали выть в интернетах про то, что у них 10 фпс.

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

А вся оптимизация Вархеада заключалась в том, что убрали галочку ULTRA.


[ Цитата ] В моих свежих компиляторах есть параметр zhlt_nocsg 1

Это круто. Но, с другой стороны, неудобно, что сразу для всей карты. Бывает, что как раз надо, чтобы браши внутри волла порезали друг друга, и дали правильную красивую тень.

Enimakanaon, подумав, добавил 04.03.2017 в 14:24
[ Цитата ] начнут щас делать все мелкие детали на карте брашиками и выльется это в 100000+ вполиков

Не сделают. Лимитов не хватит.

Последний раз редактировалось Enimakanaon, 04.03.2017 в 14:27.
Enimakanaon вне форума Ответить с цитированием
Старый 04.03.2017, 20:36  #20
rave
rave
Сержант
Регистрация: 10.04.2011
Возраст: 34
Сообщения: 254


По умолчанию

2 Enimakanaon:
Просто у тебя не было ноута с Intel HD Graphics, которые очень не любят goldsrc (например, в cs:go на максимальных настройках fps выше чем в 1.6).
rave вне форума Ответить с цитированием
Ответ

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB-коды Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход



Часовой пояс GMT +3, время: 06:15.


Designed by FT-502, [email protected] Originally by Ulric Spaak
Hosted by: VBIOS.COM, Powered by: vBulletin
copyright © 2002 - 2021 by CS-Mapping.com.ua Community