Четверг, 02.05.2024, 11:26

logo

Пользовательский поиск

Форма входа
Логин:
Пароль:

Меню сайта
Категории раздела
Форма входа
Логин:
Пароль:
Наш сервер CS 1.6
Поиск
Наш опрос
Ваш телефон
Всего ответов: 181
Друзья сайта


Главная » FAQ [ Добавить вопрос ]


  
   Скорее всего, это результат ошибки при компиляции. Злостные тормоза происходят от того, что карта не была обработана VIS'ом из-за ошибки при работе BSP. Такой ошибкой, как правило, является Утечка (LEAK), когда уровень, попросту, не герметичен, т.е. в нем есть дыры, из которых какие-то ентити "могут вывалиться" во внешнее пространство. Если утечек нет, то проверьте, может какая-то энтитя создана за пределами карты.

В случае утечки компилятор BSP генерирует файл с расширением pts, который может помочь в поиске дырки. Зайдите в игру и наберите в консоли pointfile - на карте появится линия из точек, которая где-то выходит за пределы карты. Если карта не маленькая, то может появиться сообщение 'Not enough free particles' - в этом случае, вам надо запустить халф с параметром -particles 9999.
Можно просматривать линию прямо из редактора - зайдите в Map->Load pointfile. Начинается линия в тех координатах, которые указал компилятор при сообщении об утечке.

Можно дать пару общих советов относительно некоторых ошибок компиляции. Если это ошибка csg, то поищите в тексте компиляции (в логе) информацию о проблемном браше, например, такую:

Entity 0, Brush 952, Side 6

По номеру энтити и браша легко найти проблемное место. В редакторе нажмите ctrl+shift+g (или в меню Map -> Go To brush number), там введите номера энтити и браша, и нажмите ОК. Выделение переместится на этот браш, чтобы вы могли разобраться, что с ним не так. Как правило, проблема в сложной и "впуклой" форме браша.

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

Еще один общий совет - найдя в логе тип ошибки (например, "Leaf portal saw into leaf" или "brush outside world"), то прежде чем спрашивать на форуме, загляните в документацию, прилагающуюся к компиляторам zhlt - там есть описания ошибок. Если там не нашли, или не совсем понятно, то поищите по фразе ошибки в google или другой поисковой системе - велика вероятность, что сразу найдете множество описаний этой ошибки. Если-же все-таки обратились на форум, то сразу выложите лог компиляции.

С помощью pakExplorer'a зайдите в pak0.pak и загляните в папку gfx/env. Там будут графические файлы, по шесть на каждое небо. Выберите подходящее, и в редакторе зайдите в Map->Map properties, где убрав последние две буквы в названии (rt, bk, up и т.д.), запишите это имя в поле environment map (например, 'night'). Далее выберите текстуру sky и покрасте ею все браши, которые будут представлять собою небо.
Чтобы небо освещало карту, поставьте точечную энтитю light_environment и задайте ему в параметрах нужный угол и питч (угол наклона по вертикали (отрицательный - вниз, положительный - вверх)

Добавьте к RAD'у параметры -extra -bounce 2 и -dscale 1. Это сделает свет более мягким и заставит его отражаться от стен столько раз, сколько указано в числе после bounce.
Совет - в большинтве случаев гораздо лучше вместо энтити light использовать светящиеся текстуры. Вам ничего особого не надо будет делать, просто покрасьте плоскость в нужную текстуру, и в игре от нее будет исходить свет. Список текстур, излучающих свет, содержится в файле lights.rad, который, в свою очередь, должен находиться в той же папке, где и компилятор RAD. Внутри файл lights.rad выглядт примерно так:
C3A2_LIGHT 176 92 0 10000
~TRN_LT1 255 255 128 10000
+0~LIGHT2A 255 255 192 1500
Сначала идет имя текстуры, затем пара знаков табуляции (для красоты ), потом цвет в RGB (интенсивность красного-зеленого-синего), и яркость, т.е. дальность испускаемого света. Естественно, вы без проблем можете добавить туда свои.
Когда задаете цвет источника в light или light_enviroment, то обратите внимание на значение яркости. Например, после установки цвета через диалог 'pick color', параметр color примет значение типа
255 180 40 200
Яркостью здесь является посленее число, равное по умолчанию двухста, и оно не настраивается из диалога 'pick color'.

Особенно важно НИКОГДА не погружать всю карту в одну большую коробку, чтобы избежать утечек! Запускайте компилятор VIS с параметром -full. Также старайтесь всякие мелкие детали прилегающие к стенам, типа ламп, труб, столбов, мебели, которые особо обзор не загораживают, отодвигать от стен хотя-бы на пиксель, или, в крайнем случае, делать энтитями (хотя это не совсем хорошо сказывается на освещении, поэтому находите баланс для каждой области)
Большие открытые пространства создавать надо с умом - на больших плоскостях (например, на земле) растягивайте текстуры в полтора, два или даже больше раз.
Если на вашей карте много коридоров и комнат, то делайте коридоры извилистыми, чтобы меньше комнат было видно одновременно.
Все эти методы позволяют уменьшить количество рисуемых в кадре полигонов. Узнать его можно запустив half-life с параметром -dev и набрав затем в консоле r_speeds 1. Число wpoly - это и есть эти самые полигоны. Старайтесь не превышать этот показатель выше 1000, лучше будет держать его в пределе шестиста или ниже. epoly - это полигоны моделей, не созданных в VHE, например, монстров, пушек, аптечек и т.п.

1-5 6-10 ... 26-30 31-35 36-40 41-43

Copyright www.akksimo.net © 2024