Добавил: root
2013-01-05 16:41:22
1666 просмотров
В данной статье мы подробно рассматриваем наиболее частые ошибки компиляции, рассказываем как их избежать и как исправить. В конце статьи мы приводим сводную таблицу всех возможных ошибок, причем в той форме, в которой они выдаются компиляторами ZHLT Custom Build. С небольшими изменениями данные ошибки выводятся и в официальных компиляторах ZHLT.
Итак, известно, что далеко не все ошибки, имеющиеся на карте, обнаруживаются в редакторе карт при проверке на ошибки по [Alt-P]. Большинство серьезных ошибок обнаруживается только во время компиляции.
Утилиты ZHLT при наличии ошибки создают файл *.ERR, в который записывается тип ошибки, номер объекта, вызвавшего ее, а также краткое руководство по исправлению, но, естественно, на английском языке.
Содержание статьи:
ЧАСТЬ 1. Наиболее часто встречающиеся ошибки компиляции
- Plane with no normal
- Brush with coplanar faces
- Leaf portal saw into leaf
- Brush ‘outside world’
- Mixed face contents
- === LEAK in hull 0 ===
- Exceeded MAX_PATCHES
- Причины медленной работы HLVIS
- Причины медленной работы HLRAD (проблемы с MakeScales)
- HLRAD failled to allocate a block of memory
- Bad Surface Extents
- Missing [ in texturedef
- MAX_PORTALS_ON_LEAF
- MAX_MAP_CLIPNODES
ЧАСТЬ 1. Наиболее часто встречающиеся ошибки компиляции
1. Plane with no normal
Пример:
Entity 10, Brush 0, Side 4: plane with no normal
Entity 10, Brush 0, Side 5: plane with no normal
Данная ошибка возникает при неправильной манипуляции с вертексами. Как известно, любая плоскость определяется 3 точками. Если одна или несколько точек плоскости имеют одинаковые координаты, то это будет уже не плоскость, а линия или точка. Как исправить? Удалить неправильный объект и заменить его новым.
2. Brush with coplanar faces
Пример:
Entity 10, Brush 0, Side 5: has a coplanar plane at (-753, -9, 251), texture CA1X_CON1B
Entity 10, Brush 0, Side 6: has a coplanar plane at (-753, -32, 251), texture CA1X_CON1B
Данная ошибка возникает при неправильной манипуляции с вертексами. Давайте рассмотрим случай возникновения такой ошибки. Предположим, что на карте у нас есть такой объект (см. рис. ниже).
На виде сверху (2D top) в режиме работы с вертексами объект будет выглядеть, как показано на рисунке внизу, слева. Предположим мы решили сделать из этого объекта куб. Для этого верхнюю точку (вертекс) опускаем вниз (см. рис. ниже).
Так делать нельзя! Так как мы получаем, что на одной стороне объекта расположено 2 плоскости, а этого быть не должно. Вот как эта не правильная операция выглядит в 3-х мерном виде (см. рис. ниже).
Как исправить? Можно, узнав номер неправильного браша или энтити-объекта из ERR-файла с ошибкой, перейти к нему, нажав [Shift-Ctrl-G] в редакторе. При этом Вы увидите небольшое окошко (см. рис. ниже), первая строка которого позволяет перейти к определенному энтити-объекту, вторая — к брашу. Номер неправильного объекта указывается в ERR-файл в следующем виде: «Entity 10, Brush 0, Side 5….», это означает, что ошибка у 10-го энтити-объекта на 5 стороне.
После нахождения неправильного объекта, его можно удалить, а можно попытаться исправить. В приведенном выше примере необходимо переместить верхний средний вертекс направо или налево, таким образом, мы превратим две грани, лежащие в одной плоскости, в одну (см. рис. ниже).
После переноса точки Вам будет задан вопрос: «Merge Vertices?» («Совместить вершины?»), обязательно отвечайте «Да».
3. Leaf portal saw into leaf
Данная ошибка возникает, когда компилятор HLVIS пытается сравнить 2 портала (leaf portals), которые принадлежат одной видимой вершине (visibility node). Посмотрите на картинку ниже:
Красный и желтый порталы на самом деле были одним порталом, которыл был разбит на два. Оба показанных портала должны лежать на одной прямой, но учитывая ограниченную точность компьютеров при осуществлении операций с плавающей точкой, эти порталы могут слегка наклониться по отношению друг к другу (угол наклона порталов настолько мал, что его невозможно заметить невооруженным глазом — только в бинокль :).
Если возникает такая ситуация, когда два портала принадлежат одной вершине и образуют кривую линию, то получается ошибка «Leaf portal saw into leaf». Вот как это выглядит:
На рисунке выше угол наклона одного портала к другому сильно преувеличен (для наглядности). Также существуют несколько других похожих ситуаций, когда возникает данная ошибка, все они — результат ограниченной точности компьютеров в осуществлении операций с плавающей точкой.
Как исправить? Лучше всего загрузить карту с ошибкой и попытаться отыскать, так называемый, эффект зеркального отражения ( hall of mirrors effect ). Эта ошибка может легко вызываться тем, что координаты одного из вертексов браша немного отклоняются от координатной сетки. В этом случае проще всего пересоздать неправильный браш, но также можно попробовать использовать параметр
-full
для компилятора HLVIS, который помогает уменьшить количество возможных vis-ошибок. Время компиляции с параметром -full обычно увеличивается на 30% . R_speeds (количество полигонов) при этом остается приблизительно таким же, как и при нормальной vis-компиляции.
4. Brush ‘outside world’
Пример:
Entity 10, Brush 0: outside world(+/-4096): (-9000, -64, 216)-(9000,23,283)
Существует несколько причин, по которым возможно появление данной ошибки. Во-первых, такая ошибка возможна при наличии поврежденного браша (из-за неправильной манипуляции с вертексами). В этом случае необходимо внимательно посмотреть на координаты поврежденного объекта, которые сообщаются в ERR-файле с описанием ошибки. Если какая-то из координат равна -9000 или 9000, то такой объект должен быть удален и заменен новым.
Во-вторых, такая ошибка может возникнуть из-за того, что объект находится вне зоны, доступной для редактирования или около ее границы. Объекты, находящиеся ближе 64 юнитов к границе, также могут вызвать данную ошибку, поэтому следите, чтобы Ваша карта не сильно приближалась к границам рабочего пространства в редакторе.
5. Mixed face contents
Пример:
Entity 0, Brush 12: mixed face contents
Texture ROCK_X1 and SKY
Каждый отдельный объект в Half-Life может быть окрашен в текстуру только одного типа (например, только в текстуру воды). Например, объект, окрашенный с пяти сторон обычной текстурой, а
с шестой — текстурой воды, вызовет данную ошибку.
Всего существует несколько типов текстур, которые не могут быть нанесены на объект вместе с другими. К таким текстурам относятся: SKY, CLIP, ORIGIN и текстуры воды. А самую подробную информацию о типах текстур и их совместимости Вы можете получить из соответствующей статьи: «Типы текстур в Half-Life/CS» .
Как исправить? Перейдите к объекту, вызвавшему ошибку, по [Shift-Ctrl-G] и закрасьте его со всех сторон текстурами одного типа.
6. === LEAK in hull 0 ===
LEAK — дырка на карте. Это самая известная и, пожалуй, самая нелюбимая ошибка. А все потому, что ее трудно обнаружить и легче не допускать, чем потом часами искать (прям стихи
А причиной такой ошибки является дырка (зазор) на уровне. Например, есть два браша, между которыми существует зазор (по неосторожности Вы не состыковали эти браши вплотную). Эти браши могут быть, например, стенами или землей Вашей карты. При компиляции программы-компиляторы, обнаружив такую дырку, начинают думать: «А что же за этой дыркой?». Они видят зазор, а за ним ужасающая пустота — в итоге возникает ошибка.
Ниже на картинке мы приводим пример такой ошибки.
Но не всегда LEAK виден так явно, как на рисунке выше. Зачастую LEAK имеет очень маленькие размеры, гораздо меньше даже 1 юнита. Особо много LEAK’ов в декомпилированных картах. Например, Вы решили немного изменить De_Dust, разумеется, декомпильнули его, затем попытались вновь скомпилировать и получили кучу ошибок LEAK.
Второй причиной вызывающей появление LEAK ошибки, является нахождение точечного энтити-объекта за пределами карты. Например, Вы сделали карту, построили вокруг нее небо и случайно поместили какой-нибудь там ambient_generic снаружи карты. В итоге получаем LEAK. Но это лучше, чем искать дырку на карте, т.к. объект найти гораздо проще.
Как исправить? Можно воспользоваться специальной утилитой LeakMarker . А можно попытаться найти LEAK при помощи самой игры. Для этого нужно скопировать файл *.PTS, который создается в директории с компиляторами при обнаружении ошибки LEAK, в директорию « cstrike/maps », где лежит Ваша недокомпилированная карта, которая тем не менее способна запускаться. Далее нужно запустить консоль и ввести: map имя_карты . После загрузки карты, пишем: pointfile .
После ввода этих команд на своей карте Вы обнаружете тонкую извивающуюся линию из черно-белых точек (см. рис. ниже).
Эта линия располагается около места с ошибкой LEAK. Запомнив место, открываете редактор и внимательно смотрите на границы брашей, четко ли они состыкованы. Попробуйте инструментом Vertex Manipulation выровнить вершины подозрительных брашей по координатной сетке.
Если при попытке загрузить pointfile Half-Life вылетает — значит этот файл слишком большой. Придется применять другие методы.
Если ничего не помогает и найти LEAK не удается, создайте вокруг карты небо коробкой, т.е. поместите всю свою карту в большую «комнату», окрашенную со всех сторон текстурой SKY. Это поможет 100%
Кстати, если Вы вдруг не заметили, что компиляторы выдали ошибку и подумали, что карта нормально откомпилировалась, то обнаружить неладное можно по жутким тормозам на карте (т.к. HLVIS не успел дойти до оптимизации карты), а освещение на карте будет очень светлым и монотонным (см. рис. выше). Теней от объектов не будет, т.к. HLRAD даже не приступил к работе из-за ошибки.
7. Exceeded MAX_PATCHES
Когда начинает работу компилятор HLRAD, обрабатывающий освещение на карте, он разбивает все видимые поверхности на небольшие участки, называемые патчами (patches). Существует ограничение на максимальное количество патчей — их не должно и не может быть больше 65535.
По умолчанию размер каждого патча составляет 64х64 юнита. Если масштаб (scale) текстуры больше или меньше (речь идет не о размере текстуры, а именно о масштабе), то это сказывается на количестве патчей. Это означает, что текстура с масштабом 2, будет иметь в 4 раза меньше патчей, нежели текстура с масштабом 1.
Когда Вы делаете вокруг карты небо в виде большой коробки, чтобы избежать ошибки LEAK (см. выше), компилятор HLVIS обрабатывает все поверхности снаружи карты, которые игрок в игре не видит (а значит зря он их обрабатывает :). На больших уровнях это может вызвать данную ошибку, т.к. количество патчей может превысить порог в 65535 штук.
Как исправить? В строку запуска компилятора HLRAD можно прописать параметр «-chop 96» или «-chop 128». Этот параметр устанавливает минимальный размер патча в юнитах. Напомним, что по умолчанию минимальный размер патча составляет 64 юнита. При установке размера патча более 96 юнитов, происходит заметное ухудшение качетсва освещения карты, может появиться эффект «лесенки» на тенях, отбрасываемых объектами.
Также для уменьшения числа патчей можно увеличить масштаб (scale) текстур, например, больших текстур на скалах или земле. Большие по масштабу текстуры создают гораздо меньше патчей. Ну, а если небо у Вас сделано большой коробкой вокруг карты — закрасьте все внешние стороны и дно карты текстурой SKY. При компиляции такие поверхности не просчитываются на освещение и не создают патчей.
8. Причины медленной работы HLVIS
Время компиляции карты, а именно расчет ее визуальной части компилятором HLVIS, не должно быть слишком большим. На грамотно сделанных картах оно не должно превышать 40-45 минут при использовании машины класса PII-300.
Причиной долгой работы HLVIS может быть окружение карты небом в виде большой коробки с целью избежания ошибки LEAK. В этом случае HLVIS обрабатывает большие территории снаружи карты, что увеличивает время его работы.
Второй причиной увеличения времени компиляции HLVIS’ом может стать архитектура на карте. Это довольно трудно объяснить, поэтому приведем несколько примеров:
корридоры, пересекающие стену не под прямым углом; браши, развернутые на произвольный угол; большие, высокие комнаты с неперпендикулярными к земле стенами; большое количество мелких брашей (не энтити) на обширных, открытых пространствах
Третья причина: большие открытые территории, которые имеют большое число проходов в различные помещения, при условии, что движок их все прорисовывает.
Как избежать долгой компиляции HLVIS? Просто не делайте описанного выше: не создавайте больших, открытых пространств; не делайте небо коробкой вокруг карты; корридоры разворачивайте на 30, 45 или 90°. Да, это все серьезные ограничения, но ничего поделать невозможно. Необходимо просто это принять. Half-Life далеко не новая игра и ее движок не расчитан на большое количество полигонов. Да, и нужны ли все эти «красоты» игроку? Главное — интересный геймплей.
9. Причины медленной работы HLRAD (проблемы с MakeScales)
У Вас долго проходит операция «Make Scales» или «Swap Transfers»? Тогда читайте ниже.
Компилятору HLRAD необходимо довольно большое количество оперативной памяти. Количество памяти необходимое для обработки визуальной матрицы (vismatrix) компилятором HLRAD экспоненциально зависит от размера этой визуальной матрицы. Формула для расчета количества необходимой vismatrix-памяти такова: (количество патчей) 2 /16 = количество vismatrix-памяти в байтах. Если число патчей максимально 65535, то памяти потребуется 256 Мб.
Но память необходима не только для просчета визуальной матрицы. Она также нужна для выполнения операции MakeScales. Количество необходимой памяти для этой операции приблизительно равно половине vismatrix-памяти, т.е. на обе операции вместе, в самом наихудшем случае с 65535 патчами, компилятору HLRAD может понадобится 256+128=384 Мб памяти.
При выполнении операции MakeScales на больших детализированных картах можно часто наблюдать следующую особенность: сначала MakeScales доходит до 90%, скажем за 20 минут, а следующие 10% обрабатываются несколько часов или даже дней! Это происходит при исчерпывании ресурса оперативной памяти, при этом начинается активное обращение к файлу подкачки. Данную ситуацию можно поробовать разрешить, добавив параметр -sparse в строку запуска компилятора HLRAD. Это снизит затраты оперативной памяти на 10% за счет увеличения нагрузки на процессор. Ну, а лучше всего установить дополнительную оперативную память.
Для ускорения работы HLRAD подходят те же методы, которые применяются для устранения ошибки «Exceeded MAX_PATCHES», рассмотренной выше. Используя эти методы, можно уменьшить количество патчей, тем самым уменьшить потребность HLRAD в памяти. Также можно использовать параметр
-bounce 0
для компилятора HLRAD. При этом на карте останется лишь прямое освещение, а отраженное попросту не будет просчитано. Но этот параметр можно применять только для тестовой компиляции. При окончательной компиляции парметр -bounce всегда должен быть больше 0.
Также можно посоветовать использовать параметр -incremental для компилятора HLRAD. При этом при повторной (но не при первой!) компиляции будут «пропущены» стадии: BuildVisLeafs, MakeScales, SwapTransfers. Использовать этот параметр очень просто. В первый раз Вы компилируете карту как обычно, но добавив параметр -incremental . При этом будет дополнительно создан файл размером до нескольких десятков мегабайт. При повторной компиляции карты с этим же параметром данный файл будет использован и позволит пропустить перечисленные операции. Таким образом, если у Вас мало оперативной памяти, то можно помучиться только один раз (при первой компиляции), дальше все пройдет значительно быстрее. Кстати, если Вы поменяете свойства или расположение источников света (объекты: light, light_spot и light_environment), то не забудьте обновить эту информацию в MAP-файле при помощи параметра -onlyents , прописанного в компиляторе HLCSG.
10. HLRAD failled to allocate a block of memory
Программа HLRAD (просчитывающая освещение) не смогла продолжить работу из-за недостатка памяти. В этом случае необходимо увеличить размер виртуальной памяти (файла подкачки) или (что гораздо лучше) установить дополнительную оперативную память на компьютер.
Если Вы не знаете, где в Windows изменяется размер виртуальной памяти, прочитайте об этом в статье «Что такое компиляция?» .
11. Bad Surface Extents
Обычно данная ошибка возникает при нанесении текстур со слишком большим масштабом (более 10, а обычно более 100). Эту ошибку можно обнаружить и в редакторе Hammer. Там она будет найдена, как «Texture axis perpendicular to face». А иногда в редакторе ничего не отображается, вроде бы все чисто. Здесь надо попытаться вспомнить, чего такого необычного Вы сделали на своей карте в последнее время Может быть Вы сможете найти какой-то подозрительный объект или вспомните, что раньше были какие-то проблемы с текстурами у какого-то объекта. В общем поищите немного, и Вы наверняка найдете причину данной ошибки.
12. Missing [ in texturedef
Возможно несколько причин появления данной ошибки:
Одна или несколько поверхностей объекта не имеют текстуры (в редакторе такие объекты изображаются абсолютно белыми), или же имя текстуры состоит только из пробелов.
Проверьте карту на ошибки [Alt-P], редактор покажет такую ошибку как «Invalid texture» В имени текстуры присутствуют пробелы (это недопустимо). Замените такие текстуры. Данная ошибка возникает при импорте карт из WorldCraft 3.3 в WorldCraft 2.1, 2.0 Данная ошибка возникает при импорте карт из WorldCraft 3.3 в QuArK Карта сохранена в формате *.MAP, но в поле worldspawn отсутствует:
«mapversion» «220»
(встречается очень редко)
13. MAX_PORTALS_ON_LEAF
Обычно такая ошибка возникает из-за больших комнат с большим количеством ведущих в нее корридоров. Также причиной может быть поврежденный (неправильный) браш. Такой браш можно отыскать по [Alt-P] .
На картинке сверху изображена комната на виде сверху. Розовое — комната, синее — ее стены. Розовая комната является одной большой плоскостью, пространством (leaf). Данная комната соединяется с 32-мя небольшими комнатками (углубления в стенах), таким образом, у одного leaf образуется 32 портала (portals).
Так как в Half-Life «MAX_PORTALS_ON_LEAF» может быть равным 256, то данная ошибка чаще всего случается из-за «битого» браша.
14. MAX_MAP_CLIPNODES
Clipnodes — поверхности, определяемые игровым движком, как непроходимые для игрока. Каждый браш на карте (будь-то стена, пол или ящик) «окутывается» clipnode-поверхностями. Благодаря clipnode’ам игрок не проваливается сквозь землю и не может проходить сквозь стены. Помните старый халфовский чит «noclip» (хождение сквозь стены) — вот это оно и есть
Слишком большое число этих плоскостей может вызвать ошибку. В улучшенных компиляторах ZHLT Custom Build по умолчанию включен режим экономии таких плоскостей. Это означает, что при использовании этой версии компиляторов, количество clipnode-плоскостей будет меньше, чем обычно, но это не застраховывает Вас от появления данной ошибки.
Когда Вы делаете вокруг карты небо в виде большой коробки, чтобы избежать ошибки LEAK, создается большое число clipnodes, что может привести к появлению ошибки MAX_MAP_CLIPNODES, к тому же это приведет к увеличению времени работы компилятора HLVIS.
В архиве с официальной версией (неулучшенной) утилит ZHLT 2.5.3 есть пример (карта clipnode.map), в котором показано, как можно сберечь большое количество clipnodes.
Давайте посмотрим на картинку с этой карты:
На данном рисунке CLIP и HINT браши представлены в разрезе. Они имеют абсолютно одинаковый размер и расположены аккурат по размерам объекта. Если бы мы не поместили эти браши, то вокруг такого объекта с большим числом сторон было бы образовано большое количество clipnode-плоскостей, которые должны были бы точно указать форму объекта, через которую игрок не может пройти. А используя данный метод, мы значительно уменьшаем количество clipnodes, тем самым уменьшаем вероятность возникновения ошибки MAX_MAP_CLIPNODES и уменьшаем время работы компилятора HLVIS.
Мы провели эксперимент и скомпилировали карту с CLIP-брашем и без него. И вот результаты:
Clipnode-плоскостей с CLIP-брашем (как на рисунке): 30 Clipnode-плоскостей без CLIP-браша: 149
Как видите, результат более чем интересный. Получается, что используя CLIP-браш вокруг объектов с большим количеством сторон, мы сохраняем приличное количество clipnode-плоскостей. Конечно, если карта небольшая и clipnode-плоскостей порядка 10.000-15.000, то особого смысла экономить нет, но это может пригодится при создании большой карты. Кстати, оказалось, что HINT-браш никоим образом не влияет на количество clipnodes, его можно не использовать.
ЧАСТЬ 2. Обзор всех ошибок компиляции
Общие ошибки для всех компиляторов | ||
Ошибка | Описание | Как исправить |
Memory allocation failure | Компилятор не смог разместить информацию в памяти | Означает, что файл подкачки исчерпан. Увеличьте размер SWAP-файла или добавьте оперативной памяти |
NULL Pointer | Внутренняя ошибка компилятора | Сообщите об этой ошибке на merlinis@bigpond.net.au |
Bad Thread Workcount | Внутренняя ошибка компилятора | Сообщите об этой ошибке на merlinis@bigpond.net.au |
Unable to create thread | Внутренняя ошибка компилятора | Сообщите об этой ошибке на merlinis@bigpond.net.au |
Exceeded MAX_MAP_PLANES | Превышено максимально допустимое число плоскостей (> 32767) | Уменьшите размер карты, сделайте ее менее детализированной |
Exceeded MAX_MAP_TEXTURES | Превышено максимально допустимое количество текстур | Уменьшите количество текстур |
Exceeded MAX_MAP_MIPTEX | Превышено максимально допустимое количество памяти, выделяемой для текстур (> 4194304 байт) | Уменьшите количество разных текстур, уменьшите размер текстур или установите параметр -texdata (подробнее об этом параметре читайте здесь) |
Exceeded MAX_MAP_TEXINFO | Внутреннее ограничение компилятора | Сообщите об этой ошибке на merlinis@bigpond.net.au |
Exceeded MAX_MAP_SIDES | Внутреннее ограничение компилятора | Сообщите об этой ошибке на merlinis@bigpond.net.au |
Exceeded MAX_MAP_BRUSHES | Превышено максимально допустимое число брашей(> 8192) | Уменьшите число брашей |
Exceeded MAX_MAP_ENTITIES | Превышено максимально допустимое число энтити-объектов для компиляторов (> 1024) | Уменьшите число энтити-объектов |
Exceeded MAX_ENGINE_ENTITIES | Превышено максимально допустимое число энтити-объектов для движка Half-Life (> 1024) | Уменьшите число энтити-объектов |
Exceeded MAX_MAP_MODELS | Превышено максимально допустимое число брашевых энтити-объектов (> 400) | Уменьшите число брашевых энтити-объектов. Если это возможно, объедините несколько объектов в один |
Exceeded MAX_MAP_VERTS | Внутреннее ограничение компилятора | Сообщите об этой ошибке на merlinis@bigpond.net.au |
Exceeded MAX_MAP_EDGES | Внутреннее ограничение компилятора | Сообщите об этой ошибке на merlinis@bigpond.net.au |
Exceeded MAX_MAP_CLIPNODES | Превышено максимально допустимое число clipnode-плоскостей (> 32767) | Данная ошибка описана в первой части этой статьи |
Exceeded MAX_MAP_MARKSURFACES | Внутреннее ограничение компилятора | Сообщите об этой ошибке на merlinis@bigpond.net.au |
Exceeded MAX_MAP_FACES | Превышено максимально допустимое число полигонов (> 65535) | Увеличьте масштаб (scale) текстур на больших поверхностях (земля, стены, горы и т.п.). Возможно, ваша карта слишком большая. Уменьшите ее размер, сделайте менее детализированной |
Exceeded MAX_MAP_SURFEDGES | Внутреннее ограничение компилятора | Сообщите об этой ошибке на merlinis@bigpond.net.au |
Exceeded MAX_MAP_NODES | Превышено максимально допустимое число секций (> 32767) | Уменьшите размер карты, сделайте ее менее детализированной |
CompressVis Overflow | Внутренняя ошибка компилятора | Сообщите об этой ошибке на merlinis@bigpond.net.au |
DecompressVis Overflow | Внутренняя ошибка компилятора | Сообщите об этой ошибке на merlinis@bigpond.net.au |
Execution Cancelled | Запуск компилятора был прерван пользователем или установками компилятора | |
Internal Error | Внутренняя ошибка компилятора | Сообщите об этой ошибке на merlinis@bigpond.net.au |
Ошибки компилятора HLCSG | ||
Ошибка | Описание | Как исправить |
Missing ‘[‘ in texturedef (U) | Одна или несколько поверхностей на карте не имеют текстур или окрашены текстурой, в названии которой есть пробелы | Данная ошибка описана в первой части этой статьи |
plane with no normal | Неправильная форма объекта, полученная в результате манипуляции с вертексами | Данная ошибка описана в первой части этой статьи |
brush with coplanar faces | Неправильная форма объекта, полученная в результате манипуляции с вертексами | Данная ошибка описана в первой части этой статьи |
brush outside world | Неправильная форма объекта, полученная в результате манипуляции с вертексами | Данная ошибка описана в первой части этой статьи |
mixed face contents | Объект имеет на себе текстуры, которые не могут сочетататься | Данная ошибка описана в первой части этой статьи |
Brush type not allowed in world | Неразрешенный тип брашевого энтити-объекта | Удалите объект или замените другим |
Brush type not allowed in entity | Неразрешенный тип точечного энтити-объекта | Удалите объект или замените другим |
No visibile brushes | Нет видимых объектов или все они CLIP- и ORIGIN-браши (на карте должен быть хотя бы один видимый объект) | |
Entity with ONLY an ORIGIN brush | Любой энтити-объект должен состоять хотя бы из одного видимого брашевого объекта. CLIP, HINT и ORIGIN-браши не являются видимыми | |
Could not find WAD file | Компиляторы не смогли обнаружить текстурный wad-файл, указанный в карте | Проверьте наличие всех подключенных к редактору текстурных библиотек или используйте параметр -wadconfig (подробнее об этом параметре читайте здесь) |
Exceeded MAX_TRIANGLES | Внутреннее ограничение компилятора | Сообщите об этой ошибке на merlinis@bigpond.net.au |
Exceeded MAX_SWITCHED_LIGHTS | Превышено максимально допустимое количество включаемых/выключаемых источников света (light или light_spot) | Уменьшите количество таких источников света |
Exceeded MAX_TEXFILES | Внутреннее ограничение компилятора | Сообщите об этой ошибке на merlinis@bigpond.net.au |
Ошибки компилятора HLBSP | ||
Ошибка | Описание | Как исправить |
LEAK in the map | На карте присутствует «дырка» | Данная ошибка описана в первой части этой статьи |
Exceeded MAX_LEAF_FACES | На карте присутствует поврежденный браш или масштаб (scale) текстуры слишком маленький (от -1 до 1) | Удалите поврежденный браш (в основном проверьте вставленные на карту префабы, браши полученные с использованием Carve или путем манипуляции с вертексами). Увеличьте масштаб текстуры |
Exceeded MAX_WEDGES | Внутреннее ограничение компилятора | Сообщите об этой ошибке на merlinis@bigpond.net.au |
Exceeded MAX_WVERTS | Внутреннее ограничение компилятора | Сообщите об этой ошибке на merlinis@bigpond.net.au |
Exceeded MAX_SUPERFACEEDGES | Внутреннее ограничение компилятора | Сообщите об этой ошибке на merlinis@bigpond.net.au |
Empty Solid Entity | Брашевый энтити-объект (brush-based), например, func_wall не содержит брашей (пустой) | В редакторе нажмите [Alt-P], перейдите на такой объект кнопкой Go to error, закройте окно с ошибками, убедитесь, что размер объекта не является реальным (например, -1999998w), нажмите Delete, чтобы удалить объект. Повторите все шаги для каждого «пустого» объекта. |
Ошибки компилятора HLVIS | ||
Ошибка | Описание | Как исправить |
Leaf portal saw into leaf | Данная ошибка описана в первой части этой статьи | |
Exceeded MAX_PORTALS_ON_LEAF | Превышено максимально допустимое количество порталов для одной leaf-поверхности или на карте присутствует поврежденный браш (порталов > 256) | Данная ошибка описана в первой части этой статьи |
Invalid client/server state | Внутренняя ошибка компилятора | Сообщите об этой ошибке на merlinis@bigpond.net.au |
Ошибки компилятора HLRAD | ||
Ошибка | Описание | Как исправить |
Exceeded MAX_TEXLIGHTS | Превышено максимально допустимое число светящихся текстур | Уменьшите количество светящихся текстур, используемых на карте |
Exceeded MAX_PATCHES | Превышено максимально допустимое количество патчей (> 65535) | Данная ошибка описана в первой части этой статьи |
Transfer < 0 | Внутренняя ошибка компилятора | Сообщите об этой ошибке на merlinis@bigpond.net.au |
Bad Surface Extents | На объект были нанесены текстуры со слишком большим масштабом (scale больше 10, но обычно больше 100). | Данная ошибка описана в первой части этой статьи |
Malformed face normal | Примененный тип выравнивания текстуры на видимой поверхности объекта не возможен | Проверьте карту на ошибки, нажатием [Alt-P]. Исправьте все ошибки «Texture axis perpindicular to face» |
No Lights! | На карте нет источников света | Добавьте источник света (light, light_environment или light_spot) |
Bad Light Type | Внутренняя ошибка компилятора | Сообщите об этой ошибке на merlinis@bigpond.net.au |
Exceeded MAX_SINGLEMAP | Внутреннее ограничение компилятора | Сообщите об этой ошибке на merlinis@bigpond.net.au |
§ 3.1 Что такое компиляция?
§ 3.2 Компиляторы ZHLT
§ 3.3 Улучшенная версия ZHLT Custom Build
§ 3.4 Параметры компиляторов
§ 3.5 Как компилировать?
§ 3.6 Ошибки компиляции
§ 3.7 Разбор компиляционного LOG-файла
§ 3.8 Изменение карты без компиляции
§ 3.9 О декомпиляции карт
§ 3.10 Узнай устройство карты без декомпиляции
§ 3.11 Как ускорить компиляцию?
Тэги:
Добавил: root
2013-01-05 16:41:22
1648 просмотров
В данной статье мы подробно рассматриваем наиболее частые ошибки компиляции, рассказываем как их избежать и как исправить. В конце статьи мы приводим сводную таблицу всех возможных ошибок, причем в той форме, в которой они выдаются компиляторами ZHLT Custom Build. С небольшими изменениями данные ошибки выводятся и в официальных компиляторах ZHLT.
Итак, известно, что далеко не все ошибки, имеющиеся на карте, обнаруживаются в редакторе карт при проверке на ошибки по [Alt-P]. Большинство серьезных ошибок обнаруживается только во время компиляции.
Утилиты ZHLT при наличии ошибки создают файл *.ERR, в который записывается тип ошибки, номер объекта, вызвавшего ее, а также краткое руководство по исправлению, но, естественно, на английском языке.
Содержание статьи:
ЧАСТЬ 1. Наиболее часто встречающиеся ошибки компиляции
- Plane with no normal
- Brush with coplanar faces
- Leaf portal saw into leaf
- Brush ‘outside world’
- Mixed face contents
- === LEAK in hull 0 ===
- Exceeded MAX_PATCHES
- Причины медленной работы HLVIS
- Причины медленной работы HLRAD (проблемы с MakeScales)
- HLRAD failled to allocate a block of memory
- Bad Surface Extents
- Missing [ in texturedef
- MAX_PORTALS_ON_LEAF
- MAX_MAP_CLIPNODES
ЧАСТЬ 1. Наиболее часто встречающиеся ошибки компиляции
1. Plane with no normal
Пример:
Entity 10, Brush 0, Side 4: plane with no normal
Entity 10, Brush 0, Side 5: plane with no normal
Данная ошибка возникает при неправильной манипуляции с вертексами. Как известно, любая плоскость определяется 3 точками. Если одна или несколько точек плоскости имеют одинаковые координаты, то это будет уже не плоскость, а линия или точка. Как исправить? Удалить неправильный объект и заменить его новым.
2. Brush with coplanar faces
Пример:
Entity 10, Brush 0, Side 5: has a coplanar plane at (-753, -9, 251), texture CA1X_CON1B
Entity 10, Brush 0, Side 6: has a coplanar plane at (-753, -32, 251), texture CA1X_CON1B
Данная ошибка возникает при неправильной манипуляции с вертексами. Давайте рассмотрим случай возникновения такой ошибки. Предположим, что на карте у нас есть такой объект (см. рис. ниже).
На виде сверху (2D top) в режиме работы с вертексами объект будет выглядеть, как показано на рисунке внизу, слева. Предположим мы решили сделать из этого объекта куб. Для этого верхнюю точку (вертекс) опускаем вниз (см. рис. ниже).
Так делать нельзя! Так как мы получаем, что на одной стороне объекта расположено 2 плоскости, а этого быть не должно. Вот как эта не правильная операция выглядит в 3-х мерном виде (см. рис. ниже).
Как исправить? Можно, узнав номер неправильного браша или энтити-объекта из ERR-файла с ошибкой, перейти к нему, нажав [Shift-Ctrl-G] в редакторе. При этом Вы увидите небольшое окошко (см. рис. ниже), первая строка которого позволяет перейти к определенному энтити-объекту, вторая — к брашу. Номер неправильного объекта указывается в ERR-файл в следующем виде: «Entity 10, Brush 0, Side 5….», это означает, что ошибка у 10-го энтити-объекта на 5 стороне.
После нахождения неправильного объекта, его можно удалить, а можно попытаться исправить. В приведенном выше примере необходимо переместить верхний средний вертекс направо или налево, таким образом, мы превратим две грани, лежащие в одной плоскости, в одну (см. рис. ниже).
После переноса точки Вам будет задан вопрос: «Merge Vertices?» («Совместить вершины?»), обязательно отвечайте «Да».
3. Leaf portal saw into leaf
Данная ошибка возникает, когда компилятор HLVIS пытается сравнить 2 портала (leaf portals), которые принадлежат одной видимой вершине (visibility node). Посмотрите на картинку ниже:
Красный и желтый порталы на самом деле были одним порталом, которыл был разбит на два. Оба показанных портала должны лежать на одной прямой, но учитывая ограниченную точность компьютеров при осуществлении операций с плавающей точкой, эти порталы могут слегка наклониться по отношению друг к другу (угол наклона порталов настолько мал, что его невозможно заметить невооруженным глазом — только в бинокль :).
Если возникает такая ситуация, когда два портала принадлежат одной вершине и образуют кривую линию, то получается ошибка «Leaf portal saw into leaf». Вот как это выглядит:
На рисунке выше угол наклона одного портала к другому сильно преувеличен (для наглядности). Также существуют несколько других похожих ситуаций, когда возникает данная ошибка, все они — результат ограниченной точности компьютеров в осуществлении операций с плавающей точкой.
Как исправить? Лучше всего загрузить карту с ошибкой и попытаться отыскать, так называемый, эффект зеркального отражения ( hall of mirrors effect ). Эта ошибка может легко вызываться тем, что координаты одного из вертексов браша немного отклоняются от координатной сетки. В этом случае проще всего пересоздать неправильный браш, но также можно попробовать использовать параметр
-full
для компилятора HLVIS, который помогает уменьшить количество возможных vis-ошибок. Время компиляции с параметром -full обычно увеличивается на 30% . R_speeds (количество полигонов) при этом остается приблизительно таким же, как и при нормальной vis-компиляции.
4. Brush ‘outside world’
Пример:
Entity 10, Brush 0: outside world(+/-4096): (-9000, -64, 216)-(9000,23,283)
Существует несколько причин, по которым возможно появление данной ошибки. Во-первых, такая ошибка возможна при наличии поврежденного браша (из-за неправильной манипуляции с вертексами). В этом случае необходимо внимательно посмотреть на координаты поврежденного объекта, которые сообщаются в ERR-файле с описанием ошибки. Если какая-то из координат равна -9000 или 9000, то такой объект должен быть удален и заменен новым.
Во-вторых, такая ошибка может возникнуть из-за того, что объект находится вне зоны, доступной для редактирования или около ее границы. Объекты, находящиеся ближе 64 юнитов к границе, также могут вызвать данную ошибку, поэтому следите, чтобы Ваша карта не сильно приближалась к границам рабочего пространства в редакторе.
5. Mixed face contents
Пример:
Entity 0, Brush 12: mixed face contents
Texture ROCK_X1 and SKY
Каждый отдельный объект в Half-Life может быть окрашен в текстуру только одного типа (например, только в текстуру воды). Например, объект, окрашенный с пяти сторон обычной текстурой, а
с шестой — текстурой воды, вызовет данную ошибку.
Всего существует несколько типов текстур, которые не могут быть нанесены на объект вместе с другими. К таким текстурам относятся: SKY, CLIP, ORIGIN и текстуры воды. А самую подробную информацию о типах текстур и их совместимости Вы можете получить из соответствующей статьи: «Типы текстур в Half-Life/CS» .
Как исправить? Перейдите к объекту, вызвавшему ошибку, по [Shift-Ctrl-G] и закрасьте его со всех сторон текстурами одного типа.
6. === LEAK in hull 0 ===
LEAK — дырка на карте. Это самая известная и, пожалуй, самая нелюбимая ошибка. А все потому, что ее трудно обнаружить и легче не допускать, чем потом часами искать (прям стихи
А причиной такой ошибки является дырка (зазор) на уровне. Например, есть два браша, между которыми существует зазор (по неосторожности Вы не состыковали эти браши вплотную). Эти браши могут быть, например, стенами или землей Вашей карты. При компиляции программы-компиляторы, обнаружив такую дырку, начинают думать: «А что же за этой дыркой?». Они видят зазор, а за ним ужасающая пустота — в итоге возникает ошибка.
Ниже на картинке мы приводим пример такой ошибки.
Но не всегда LEAK виден так явно, как на рисунке выше. Зачастую LEAK имеет очень маленькие размеры, гораздо меньше даже 1 юнита. Особо много LEAK’ов в декомпилированных картах. Например, Вы решили немного изменить De_Dust, разумеется, декомпильнули его, затем попытались вновь скомпилировать и получили кучу ошибок LEAK.
Второй причиной вызывающей появление LEAK ошибки, является нахождение точечного энтити-объекта за пределами карты. Например, Вы сделали карту, построили вокруг нее небо и случайно поместили какой-нибудь там ambient_generic снаружи карты. В итоге получаем LEAK. Но это лучше, чем искать дырку на карте, т.к. объект найти гораздо проще.
Как исправить? Можно воспользоваться специальной утилитой LeakMarker . А можно попытаться найти LEAK при помощи самой игры. Для этого нужно скопировать файл *.PTS, который создается в директории с компиляторами при обнаружении ошибки LEAK, в директорию « cstrike/maps », где лежит Ваша недокомпилированная карта, которая тем не менее способна запускаться. Далее нужно запустить консоль и ввести: map имя_карты . После загрузки карты, пишем: pointfile .
После ввода этих команд на своей карте Вы обнаружете тонкую извивающуюся линию из черно-белых точек (см. рис. ниже).
Эта линия располагается около места с ошибкой LEAK. Запомнив место, открываете редактор и внимательно смотрите на границы брашей, четко ли они состыкованы. Попробуйте инструментом Vertex Manipulation выровнить вершины подозрительных брашей по координатной сетке.
Если при попытке загрузить pointfile Half-Life вылетает — значит этот файл слишком большой. Придется применять другие методы.
Если ничего не помогает и найти LEAK не удается, создайте вокруг карты небо коробкой, т.е. поместите всю свою карту в большую «комнату», окрашенную со всех сторон текстурой SKY. Это поможет 100%
Кстати, если Вы вдруг не заметили, что компиляторы выдали ошибку и подумали, что карта нормально откомпилировалась, то обнаружить неладное можно по жутким тормозам на карте (т.к. HLVIS не успел дойти до оптимизации карты), а освещение на карте будет очень светлым и монотонным (см. рис. выше). Теней от объектов не будет, т.к. HLRAD даже не приступил к работе из-за ошибки.
7. Exceeded MAX_PATCHES
Когда начинает работу компилятор HLRAD, обрабатывающий освещение на карте, он разбивает все видимые поверхности на небольшие участки, называемые патчами (patches). Существует ограничение на максимальное количество патчей — их не должно и не может быть больше 65535.
По умолчанию размер каждого патча составляет 64х64 юнита. Если масштаб (scale) текстуры больше или меньше (речь идет не о размере текстуры, а именно о масштабе), то это сказывается на количестве патчей. Это означает, что текстура с масштабом 2, будет иметь в 4 раза меньше патчей, нежели текстура с масштабом 1.
Когда Вы делаете вокруг карты небо в виде большой коробки, чтобы избежать ошибки LEAK (см. выше), компилятор HLVIS обрабатывает все поверхности снаружи карты, которые игрок в игре не видит (а значит зря он их обрабатывает :). На больших уровнях это может вызвать данную ошибку, т.к. количество патчей может превысить порог в 65535 штук.
Как исправить? В строку запуска компилятора HLRAD можно прописать параметр «-chop 96» или «-chop 128». Этот параметр устанавливает минимальный размер патча в юнитах. Напомним, что по умолчанию минимальный размер патча составляет 64 юнита. При установке размера патча более 96 юнитов, происходит заметное ухудшение качетсва освещения карты, может появиться эффект «лесенки» на тенях, отбрасываемых объектами.
Также для уменьшения числа патчей можно увеличить масштаб (scale) текстур, например, больших текстур на скалах или земле. Большие по масштабу текстуры создают гораздо меньше патчей. Ну, а если небо у Вас сделано большой коробкой вокруг карты — закрасьте все внешние стороны и дно карты текстурой SKY. При компиляции такие поверхности не просчитываются на освещение и не создают патчей.
8. Причины медленной работы HLVIS
Время компиляции карты, а именно расчет ее визуальной части компилятором HLVIS, не должно быть слишком большим. На грамотно сделанных картах оно не должно превышать 40-45 минут при использовании машины класса PII-300.
Причиной долгой работы HLVIS может быть окружение карты небом в виде большой коробки с целью избежания ошибки LEAK. В этом случае HLVIS обрабатывает большие территории снаружи карты, что увеличивает время его работы.
Второй причиной увеличения времени компиляции HLVIS’ом может стать архитектура на карте. Это довольно трудно объяснить, поэтому приведем несколько примеров:
корридоры, пересекающие стену не под прямым углом; браши, развернутые на произвольный угол; большие, высокие комнаты с неперпендикулярными к земле стенами; большое количество мелких брашей (не энтити) на обширных, открытых пространствах
Третья причина: большие открытые территории, которые имеют большое число проходов в различные помещения, при условии, что движок их все прорисовывает.
Как избежать долгой компиляции HLVIS? Просто не делайте описанного выше: не создавайте больших, открытых пространств; не делайте небо коробкой вокруг карты; корридоры разворачивайте на 30, 45 или 90°. Да, это все серьезные ограничения, но ничего поделать невозможно. Необходимо просто это принять. Half-Life далеко не новая игра и ее движок не расчитан на большое количество полигонов. Да, и нужны ли все эти «красоты» игроку? Главное — интересный геймплей.
9. Причины медленной работы HLRAD (проблемы с MakeScales)
У Вас долго проходит операция «Make Scales» или «Swap Transfers»? Тогда читайте ниже.
Компилятору HLRAD необходимо довольно большое количество оперативной памяти. Количество памяти необходимое для обработки визуальной матрицы (vismatrix) компилятором HLRAD экспоненциально зависит от размера этой визуальной матрицы. Формула для расчета количества необходимой vismatrix-памяти такова: (количество патчей) 2 /16 = количество vismatrix-памяти в байтах. Если число патчей максимально 65535, то памяти потребуется 256 Мб.
Но память необходима не только для просчета визуальной матрицы. Она также нужна для выполнения операции MakeScales. Количество необходимой памяти для этой операции приблизительно равно половине vismatrix-памяти, т.е. на обе операции вместе, в самом наихудшем случае с 65535 патчами, компилятору HLRAD может понадобится 256+128=384 Мб памяти.
При выполнении операции MakeScales на больших детализированных картах можно часто наблюдать следующую особенность: сначала MakeScales доходит до 90%, скажем за 20 минут, а следующие 10% обрабатываются несколько часов или даже дней! Это происходит при исчерпывании ресурса оперативной памяти, при этом начинается активное обращение к файлу подкачки. Данную ситуацию можно поробовать разрешить, добавив параметр -sparse в строку запуска компилятора HLRAD. Это снизит затраты оперативной памяти на 10% за счет увеличения нагрузки на процессор. Ну, а лучше всего установить дополнительную оперативную память.
Для ускорения работы HLRAD подходят те же методы, которые применяются для устранения ошибки «Exceeded MAX_PATCHES», рассмотренной выше. Используя эти методы, можно уменьшить количество патчей, тем самым уменьшить потребность HLRAD в памяти. Также можно использовать параметр
-bounce 0
для компилятора HLRAD. При этом на карте останется лишь прямое освещение, а отраженное попросту не будет просчитано. Но этот параметр можно применять только для тестовой компиляции. При окончательной компиляции парметр -bounce всегда должен быть больше 0.
Также можно посоветовать использовать параметр -incremental для компилятора HLRAD. При этом при повторной (но не при первой!) компиляции будут «пропущены» стадии: BuildVisLeafs, MakeScales, SwapTransfers. Использовать этот параметр очень просто. В первый раз Вы компилируете карту как обычно, но добавив параметр -incremental . При этом будет дополнительно создан файл размером до нескольких десятков мегабайт. При повторной компиляции карты с этим же параметром данный файл будет использован и позволит пропустить перечисленные операции. Таким образом, если у Вас мало оперативной памяти, то можно помучиться только один раз (при первой компиляции), дальше все пройдет значительно быстрее. Кстати, если Вы поменяете свойства или расположение источников света (объекты: light, light_spot и light_environment), то не забудьте обновить эту информацию в MAP-файле при помощи параметра -onlyents , прописанного в компиляторе HLCSG.
10. HLRAD failled to allocate a block of memory
Программа HLRAD (просчитывающая освещение) не смогла продолжить работу из-за недостатка памяти. В этом случае необходимо увеличить размер виртуальной памяти (файла подкачки) или (что гораздо лучше) установить дополнительную оперативную память на компьютер.
Если Вы не знаете, где в Windows изменяется размер виртуальной памяти, прочитайте об этом в статье «Что такое компиляция?» .
11. Bad Surface Extents
Обычно данная ошибка возникает при нанесении текстур со слишком большим масштабом (более 10, а обычно более 100). Эту ошибку можно обнаружить и в редакторе Hammer. Там она будет найдена, как «Texture axis perpendicular to face». А иногда в редакторе ничего не отображается, вроде бы все чисто. Здесь надо попытаться вспомнить, чего такого необычного Вы сделали на своей карте в последнее время Может быть Вы сможете найти какой-то подозрительный объект или вспомните, что раньше были какие-то проблемы с текстурами у какого-то объекта. В общем поищите немного, и Вы наверняка найдете причину данной ошибки.
12. Missing [ in texturedef
Возможно несколько причин появления данной ошибки:
Одна или несколько поверхностей объекта не имеют текстуры (в редакторе такие объекты изображаются абсолютно белыми), или же имя текстуры состоит только из пробелов.
Проверьте карту на ошибки [Alt-P], редактор покажет такую ошибку как «Invalid texture» В имени текстуры присутствуют пробелы (это недопустимо). Замените такие текстуры. Данная ошибка возникает при импорте карт из WorldCraft 3.3 в WorldCraft 2.1, 2.0 Данная ошибка возникает при импорте карт из WorldCraft 3.3 в QuArK Карта сохранена в формате *.MAP, но в поле worldspawn отсутствует:
«mapversion» «220»
(встречается очень редко)
13. MAX_PORTALS_ON_LEAF
Обычно такая ошибка возникает из-за больших комнат с большим количеством ведущих в нее корридоров. Также причиной может быть поврежденный (неправильный) браш. Такой браш можно отыскать по [Alt-P] .
На картинке сверху изображена комната на виде сверху. Розовое — комната, синее — ее стены. Розовая комната является одной большой плоскостью, пространством (leaf). Данная комната соединяется с 32-мя небольшими комнатками (углубления в стенах), таким образом, у одного leaf образуется 32 портала (portals).
Так как в Half-Life «MAX_PORTALS_ON_LEAF» может быть равным 256, то данная ошибка чаще всего случается из-за «битого» браша.
14. MAX_MAP_CLIPNODES
Clipnodes — поверхности, определяемые игровым движком, как непроходимые для игрока. Каждый браш на карте (будь-то стена, пол или ящик) «окутывается» clipnode-поверхностями. Благодаря clipnode’ам игрок не проваливается сквозь землю и не может проходить сквозь стены. Помните старый халфовский чит «noclip» (хождение сквозь стены) — вот это оно и есть
Слишком большое число этих плоскостей может вызвать ошибку. В улучшенных компиляторах ZHLT Custom Build по умолчанию включен режим экономии таких плоскостей. Это означает, что при использовании этой версии компиляторов, количество clipnode-плоскостей будет меньше, чем обычно, но это не застраховывает Вас от появления данной ошибки.
Когда Вы делаете вокруг карты небо в виде большой коробки, чтобы избежать ошибки LEAK, создается большое число clipnodes, что может привести к появлению ошибки MAX_MAP_CLIPNODES, к тому же это приведет к увеличению времени работы компилятора HLVIS.
В архиве с официальной версией (неулучшенной) утилит ZHLT 2.5.3 есть пример (карта clipnode.map), в котором показано, как можно сберечь большое количество clipnodes.
Давайте посмотрим на картинку с этой карты:
На данном рисунке CLIP и HINT браши представлены в разрезе. Они имеют абсолютно одинаковый размер и расположены аккурат по размерам объекта. Если бы мы не поместили эти браши, то вокруг такого объекта с большим числом сторон было бы образовано большое количество clipnode-плоскостей, которые должны были бы точно указать форму объекта, через которую игрок не может пройти. А используя данный метод, мы значительно уменьшаем количество clipnodes, тем самым уменьшаем вероятность возникновения ошибки MAX_MAP_CLIPNODES и уменьшаем время работы компилятора HLVIS.
Мы провели эксперимент и скомпилировали карту с CLIP-брашем и без него. И вот результаты:
Clipnode-плоскостей с CLIP-брашем (как на рисунке): 30 Clipnode-плоскостей без CLIP-браша: 149
Как видите, результат более чем интересный. Получается, что используя CLIP-браш вокруг объектов с большим количеством сторон, мы сохраняем приличное количество clipnode-плоскостей. Конечно, если карта небольшая и clipnode-плоскостей порядка 10.000-15.000, то особого смысла экономить нет, но это может пригодится при создании большой карты. Кстати, оказалось, что HINT-браш никоим образом не влияет на количество clipnodes, его можно не использовать.
ЧАСТЬ 2. Обзор всех ошибок компиляции
Общие ошибки для всех компиляторов | ||
Ошибка | Описание | Как исправить |
Memory allocation failure | Компилятор не смог разместить информацию в памяти | Означает, что файл подкачки исчерпан. Увеличьте размер SWAP-файла или добавьте оперативной памяти |
NULL Pointer | Внутренняя ошибка компилятора | Сообщите об этой ошибке на merlinis@bigpond.net.au |
Bad Thread Workcount | Внутренняя ошибка компилятора | Сообщите об этой ошибке на merlinis@bigpond.net.au |
Unable to create thread | Внутренняя ошибка компилятора | Сообщите об этой ошибке на merlinis@bigpond.net.au |
Exceeded MAX_MAP_PLANES | Превышено максимально допустимое число плоскостей (> 32767) | Уменьшите размер карты, сделайте ее менее детализированной |
Exceeded MAX_MAP_TEXTURES | Превышено максимально допустимое количество текстур | Уменьшите количество текстур |
Exceeded MAX_MAP_MIPTEX | Превышено максимально допустимое количество памяти, выделяемой для текстур (> 4194304 байт) | Уменьшите количество разных текстур, уменьшите размер текстур или установите параметр -texdata (подробнее об этом параметре читайте здесь) |
Exceeded MAX_MAP_TEXINFO | Внутреннее ограничение компилятора | Сообщите об этой ошибке на merlinis@bigpond.net.au |
Exceeded MAX_MAP_SIDES | Внутреннее ограничение компилятора | Сообщите об этой ошибке на merlinis@bigpond.net.au |
Exceeded MAX_MAP_BRUSHES | Превышено максимально допустимое число брашей(> 8192) | Уменьшите число брашей |
Exceeded MAX_MAP_ENTITIES | Превышено максимально допустимое число энтити-объектов для компиляторов (> 1024) | Уменьшите число энтити-объектов |
Exceeded MAX_ENGINE_ENTITIES | Превышено максимально допустимое число энтити-объектов для движка Half-Life (> 1024) | Уменьшите число энтити-объектов |
Exceeded MAX_MAP_MODELS | Превышено максимально допустимое число брашевых энтити-объектов (> 400) | Уменьшите число брашевых энтити-объектов. Если это возможно, объедините несколько объектов в один |
Exceeded MAX_MAP_VERTS | Внутреннее ограничение компилятора | Сообщите об этой ошибке на merlinis@bigpond.net.au |
Exceeded MAX_MAP_EDGES | Внутреннее ограничение компилятора | Сообщите об этой ошибке на merlinis@bigpond.net.au |
Exceeded MAX_MAP_CLIPNODES | Превышено максимально допустимое число clipnode-плоскостей (> 32767) | Данная ошибка описана в первой части этой статьи |
Exceeded MAX_MAP_MARKSURFACES | Внутреннее ограничение компилятора | Сообщите об этой ошибке на merlinis@bigpond.net.au |
Exceeded MAX_MAP_FACES | Превышено максимально допустимое число полигонов (> 65535) | Увеличьте масштаб (scale) текстур на больших поверхностях (земля, стены, горы и т.п.). Возможно, ваша карта слишком большая. Уменьшите ее размер, сделайте менее детализированной |
Exceeded MAX_MAP_SURFEDGES | Внутреннее ограничение компилятора | Сообщите об этой ошибке на merlinis@bigpond.net.au |
Exceeded MAX_MAP_NODES | Превышено максимально допустимое число секций (> 32767) | Уменьшите размер карты, сделайте ее менее детализированной |
CompressVis Overflow | Внутренняя ошибка компилятора | Сообщите об этой ошибке на merlinis@bigpond.net.au |
DecompressVis Overflow | Внутренняя ошибка компилятора | Сообщите об этой ошибке на merlinis@bigpond.net.au |
Execution Cancelled | Запуск компилятора был прерван пользователем или установками компилятора | |
Internal Error | Внутренняя ошибка компилятора | Сообщите об этой ошибке на merlinis@bigpond.net.au |
Ошибки компилятора HLCSG | ||
Ошибка | Описание | Как исправить |
Missing ‘[‘ in texturedef (U) | Одна или несколько поверхностей на карте не имеют текстур или окрашены текстурой, в названии которой есть пробелы | Данная ошибка описана в первой части этой статьи |
plane with no normal | Неправильная форма объекта, полученная в результате манипуляции с вертексами | Данная ошибка описана в первой части этой статьи |
brush with coplanar faces | Неправильная форма объекта, полученная в результате манипуляции с вертексами | Данная ошибка описана в первой части этой статьи |
brush outside world | Неправильная форма объекта, полученная в результате манипуляции с вертексами | Данная ошибка описана в первой части этой статьи |
mixed face contents | Объект имеет на себе текстуры, которые не могут сочетататься | Данная ошибка описана в первой части этой статьи |
Brush type not allowed in world | Неразрешенный тип брашевого энтити-объекта | Удалите объект или замените другим |
Brush type not allowed in entity | Неразрешенный тип точечного энтити-объекта | Удалите объект или замените другим |
No visibile brushes | Нет видимых объектов или все они CLIP- и ORIGIN-браши (на карте должен быть хотя бы один видимый объект) | |
Entity with ONLY an ORIGIN brush | Любой энтити-объект должен состоять хотя бы из одного видимого брашевого объекта. CLIP, HINT и ORIGIN-браши не являются видимыми | |
Could not find WAD file | Компиляторы не смогли обнаружить текстурный wad-файл, указанный в карте | Проверьте наличие всех подключенных к редактору текстурных библиотек или используйте параметр -wadconfig (подробнее об этом параметре читайте здесь) |
Exceeded MAX_TRIANGLES | Внутреннее ограничение компилятора | Сообщите об этой ошибке на merlinis@bigpond.net.au |
Exceeded MAX_SWITCHED_LIGHTS | Превышено максимально допустимое количество включаемых/выключаемых источников света (light или light_spot) | Уменьшите количество таких источников света |
Exceeded MAX_TEXFILES | Внутреннее ограничение компилятора | Сообщите об этой ошибке на merlinis@bigpond.net.au |
Ошибки компилятора HLBSP | ||
Ошибка | Описание | Как исправить |
LEAK in the map | На карте присутствует «дырка» | Данная ошибка описана в первой части этой статьи |
Exceeded MAX_LEAF_FACES | На карте присутствует поврежденный браш или масштаб (scale) текстуры слишком маленький (от -1 до 1) | Удалите поврежденный браш (в основном проверьте вставленные на карту префабы, браши полученные с использованием Carve или путем манипуляции с вертексами). Увеличьте масштаб текстуры |
Exceeded MAX_WEDGES | Внутреннее ограничение компилятора | Сообщите об этой ошибке на merlinis@bigpond.net.au |
Exceeded MAX_WVERTS | Внутреннее ограничение компилятора | Сообщите об этой ошибке на merlinis@bigpond.net.au |
Exceeded MAX_SUPERFACEEDGES | Внутреннее ограничение компилятора | Сообщите об этой ошибке на merlinis@bigpond.net.au |
Empty Solid Entity | Брашевый энтити-объект (brush-based), например, func_wall не содержит брашей (пустой) | В редакторе нажмите [Alt-P], перейдите на такой объект кнопкой Go to error, закройте окно с ошибками, убедитесь, что размер объекта не является реальным (например, -1999998w), нажмите Delete, чтобы удалить объект. Повторите все шаги для каждого «пустого» объекта. |
Ошибки компилятора HLVIS | ||
Ошибка | Описание | Как исправить |
Leaf portal saw into leaf | Данная ошибка описана в первой части этой статьи | |
Exceeded MAX_PORTALS_ON_LEAF | Превышено максимально допустимое количество порталов для одной leaf-поверхности или на карте присутствует поврежденный браш (порталов > 256) | Данная ошибка описана в первой части этой статьи |
Invalid client/server state | Внутренняя ошибка компилятора | Сообщите об этой ошибке на merlinis@bigpond.net.au |
Ошибки компилятора HLRAD | ||
Ошибка | Описание | Как исправить |
Exceeded MAX_TEXLIGHTS | Превышено максимально допустимое число светящихся текстур | Уменьшите количество светящихся текстур, используемых на карте |
Exceeded MAX_PATCHES | Превышено максимально допустимое количество патчей (> 65535) | Данная ошибка описана в первой части этой статьи |
Transfer < 0 | Внутренняя ошибка компилятора | Сообщите об этой ошибке на merlinis@bigpond.net.au |
Bad Surface Extents | На объект были нанесены текстуры со слишком большим масштабом (scale больше 10, но обычно больше 100). | Данная ошибка описана в первой части этой статьи |
Malformed face normal | Примененный тип выравнивания текстуры на видимой поверхности объекта не возможен | Проверьте карту на ошибки, нажатием [Alt-P]. Исправьте все ошибки «Texture axis perpindicular to face» |
No Lights! | На карте нет источников света | Добавьте источник света (light, light_environment или light_spot) |
Bad Light Type | Внутренняя ошибка компилятора | Сообщите об этой ошибке на merlinis@bigpond.net.au |
Exceeded MAX_SINGLEMAP | Внутреннее ограничение компилятора | Сообщите об этой ошибке на merlinis@bigpond.net.au |
§ 3.1 Что такое компиляция?
§ 3.2 Компиляторы ZHLT
§ 3.3 Улучшенная версия ZHLT Custom Build
§ 3.4 Параметры компиляторов
§ 3.5 Как компилировать?
§ 3.6 Ошибки компиляции
§ 3.7 Разбор компиляционного LOG-файла
§ 3.8 Изменение карты без компиляции
§ 3.9 О декомпиляции карт
§ 3.10 Узнай устройство карты без декомпиляции
§ 3.11 Как ускорить компиляцию?
Тэги:
|
|
Помогите с ошибкой — Bad surface extents
Помогите с проблемой пожалуйста! Переделываю карту nuke, всё что просил «зонер» уже по исправлял, но в момент BuildFacelights: на 90 процентах возникает ошибка:
Error:
for Face 8739 (texture lab1_w8a2) at
(959.000 -832.000 -692.000) (960.000 -832.000 -692.000) (960.000 -832.000 -672.000) (959.000 -832.000 -672.000)
Error: Bad surface extents (1431 x 9)
Check the file ZHLTProblems.html for a detailed explanation of this problem
Суть вопроса: помогите, как найти на карте эту долбаную растянутую текстуру???? Карта конвертировалась из BSP в MAP, по этому кривовата!
Я уже излазил её всю, уже истерика начинается !!!! Помогите пожалуйста!!!!
Если нужен файл MAP., отпишитесь я скину.
Жду помощи и советов((((((!!!!!!
кидай мапу, а вообще ищи по координатам
Ищи в данных координатах (X Y Z) браш с текстурой «lab1_w8a2».
Если ты работаешь в нормальном редакторе, то выбери «Map / Go to coordinates…» и
впиши
вставь координаты, если нет, то води
мышкой
курсором по 2D видам и в строке состояния (внизу) смотри координаты.
qpAHToMAS сказал(а):
Ищи в данных координатах (X Y Z) браш с текстурой «lab1_w8a2».
Если ты работаешь в нормальном редакторе, то выбери «Map / Go to coordinates…» и
впишивставь координаты, если нет, то води
мышкойкурсором по 2D видам и в строке состояния (внизу) смотри координаты.
А вы советуете этот редактор? Он лучше Hammer Editor? Очень важно ваше мнение!!!!! Я сейчас вплотную сотрудничаю с одним сайтом, и откровенно говоря нужна поддержка профессионалов!!! Вроде вопросы нубские, но тем не менее лучше спросить лишний раз у людей, чем сдаться и забросить всё в длинный ящик!!! Мне очень нравиться картостроение!!!!!
Да, Jackhammer лучше чем VHE.
Точно также VHLT компиляторы лучше чем ZHLT.
Если воссоздаешь de_nuke, то возможно есть смысл использовать этот исходик, в нем надо достроить около 30% карты.
А ты создавал nuke 2×2??? Если да, то подскажи какой программой можно переконвертировать из BSP в RMF с наименьшими потерями в карте и чтоб меньше дорабатывать приходилось???
Ты ведь так делал при создании этой карты?
STRONG сказал(а):
А ты создавал nuke 2×2??? Если да, то подскажи какой программой можно переконвертировать из BSP в RMF с наименьшими потерями в карте и чтоб меньше дорабатывать приходилось???
Ты ведь так делал при создании этой карты?
Никакой. Потери в любом случае будут.
Я воссоздавал всё с нуля, сверяясь с обыкновенным декомпилом (WinBSP, BSP2MAP, Crafy и прочие декомпиляторы).
Хорошо, последний вопрос! Фантомас, вы писали что VHLT лучше, там всё тоже самое как и с ZHLT (bat файли также создаются?) или есть какие-то особенности??? Заранее спасибо огромное всем за ответы!!!!
Проще тебе скачать исходник нюка что я выложил выше и там будет файл «vhlt.bcp» — это настройки для программы Batch Compiler, которой можно компилировать карты.
Самый простой способ — это открыть .map файл в notepad++ и искать
-
#1
Alright so I recently started making a new map, I’m nowhere even close to being done and was testing my first compile…well already ran into problems. The one problem I can’t fix is the map won’t show new things I do. If I rename the map it’ll let me load it, but not with new changes. (It’s..confuesing) When I rename it again, it’ll stop compiling mid way. Already alt p’d, there are no invalids, I’ve also tried doing that thing where you fix fitted textures and then world them on large displacements. That..didn’t seem to do anything. and I did it with the coordinates that keep poping up in my compile log. Interlopers has no errors to report except ones I have in every map that don’t need fixing. Someone please help :mellow:
Here is my compile log:
** Executing…
** Command: «F:Program Files (x86)SteamsteamappscommonTeam Fortress 2binvbsp.exe»
** Parameters: -game «F:Program Files (x86)SteamsteamappscommonTeam Fortress 2tf» «C:Backup FoldersDocumentsTf2 mapsMappingjungletempletemple8.vmf»
Valve Software — vbsp.exe (Apr 29 2015)
8 threads
materialPath: F:Program Files (x86)SteamsteamappscommonTeam Fortress 2tfmaterials
Loading C:Backup FoldersDocumentsTf2 mapsMappingjungletempletemple8.vmf
ConVarRef mat_reduceparticles doesn’t point to an existing ConVar
Patching WVT material: maps/temple8/jungle/blendrockwalltograss_jungle_wvt_patch
Patching WVT material: maps/temple8/egypt/sand_grass_blend_02_wvt_patch
Patching WVT material: maps/temple8/egypt/sky_sand_waves_01_wvt_patch
Patching WVT material: maps/temple8/egypt/sand_floor_blend_03_wvt_patch
Patching WVT material: maps/temple8/nature/blendgroundtograss001b_wvt_patch
fixing up env_cubemap materials on brush sides…
ProcessBlock_Thread: 0…1…2…3…4…5…6…7…8…9…10 (0)
ProcessBlock_Thread: 0…1…2…3…4…5…6…7…8…9…10 (0)
Processing areas…done (0)
Building Faces…done (0)
FixTjuncs…
PruneNodes…
WriteBSP…
done (0)
writing C:Backup FoldersDocumentsTf2 mapsMappingjungletempletemple8.prt…Building visibility clusters…
done (0)
Creating default LDR cubemaps for env_cubemap using skybox materials:
skybox/sky_day01_01*.vmt
! Run buildcubemaps in the engine to get the correct cube maps.
Creating default HDR cubemaps for env_cubemap using skybox materials:
skybox/sky_day01_01*.vmt
! Run buildcubemaps in the engine to get the correct cube maps.
Bad surface extents point: -4415.261719 -1869.007813 -194.000000
Bad surface extents point: -5908.993652 -650.267822 -194.000000
Bad surface extents point: -5291.734375 525.988281 -194.000000
Bad surface extents point: -3798.011719 -692.730469 -194.000000
Bad surface extents — surface is too big to have a lightmap
material JUNGLE/BLENDROCKWALLTOGRASS_JUNGLE around point (-4853.5 -671.5 -194.0)
(dimension: 0, 133>126)
** Executing…
** Command: «F:Program Files (x86)SteamsteamappscommonTeam Fortress 2binvvis.exe»
** Parameters: -game «F:Program Files (x86)SteamsteamappscommonTeam Fortress 2tf» -fast «C:Backup FoldersDocumentsTf2 mapsMappingjungletempletemple8»
Valve Software — vvis.exe (Apr 29 2015)
fastvis = true
8 threads
reading c:backup foldersdocumentstf2 mapsmappingjungletempletemple8.bsp
Error opening c:backup foldersdocumentstf2 mapsmappingjungletempletemple8.bsp
** Executing…
** Command: «F:Program Files (x86)SteamsteamappscommonTeam Fortress 2binvrad.exe»
** Parameters: -game «F:Program Files (x86)SteamsteamappscommonTeam Fortress 2tf» «C:Backup FoldersDocumentsTf2 mapsMappingjungletempletemple8»
Valve Software — vrad.exe SSE (Apr 29 2015)
Valve Radiosity Simulator
8 threads
[Reading texlights from ‘lights.rad’]
[37 texlights parsed from ‘lights.rad’]
Loading c:backup foldersdocumentstf2 mapsmappingjungletempletemple8.bsp
Error opening c:backup foldersdocumentstf2 mapsmappingjungletempletemple8.bsp
** Executing…
** Command: Copy File
** Parameters: «C:Backup FoldersDocumentsTf2 mapsMappingjungletempletemple8.bsp» «F:Program Files (x86)SteamsteamappscommonTeam Fortress 2tfmapstemple8.bsp»
The command failed. Windows reported the error:
«The system cannot find the file specified.»
I’m pretty sure this is my issue:
Creating default LDR cubemaps for env_cubemap using skybox materials:
skybox/sky_day01_01*.vmt
! Run buildcubemaps in the engine to get the correct cube maps.
Creating default HDR cubemaps for env_cubemap using skybox materials:
skybox/sky_day01_01*.vmt
! Run buildcubemaps in the engine to get the correct cube maps.
Bad surface extents point: -4415.261719 -1869.007813 -194.000000
Bad surface extents point: -5908.993652 -650.267822 -194.000000
Bad surface extents point: -5291.734375 525.988281 -194.000000
Bad surface extents point: -3798.011719 -692.730469 -194.000000
Bad surface extents — surface is too big to have a lightmap
material JUNGLE/BLENDROCKWALLTOGRASS_JUNGLE around point (-4853.5 -671.5 -194.0)
(dimension: 0, 133>126)
I have no idea how to fix it..I’ve tried hiding all my displacements and that didn’t seem to fix it… Please help..I also loaded point file and get nothing, I removed some leaks and the sky box is fine. I can post the map DL if needed. It’s..pretty tiny, I’ve only done the spawn area!
-
#2
It’s simple, really. VBSP isn’t writing the bsp to the location VVIS and VRAD expect it to go.
reading c:backup foldersdocumentstf2 mapsmappingjungletempletemple8.bsp
Error opening c:backup foldersdocumentstf2 mapsmappingjungletempletemple8.bsp
Both VVIS and VRAD spew this error out. That file path doesn’t exist. VBSP doesn’t put the bsp in that location, so VVIS and VRAD outright fail since they don’t have anything to work with.
If this is your first compile for this map, make sure it compiles the bsp to the default folders first (which would be tf/maps). If you have earlier versions, there’s nothing else to do than to open the .vmf of that version, duplicate it, rename it and then start again from there.
Also, this:
Bad surface extents point: -4415.261719 -1869.007813 -194.000000
Bad surface extents point: -5908.993652 -650.267822 -194.000000
Bad surface extents point: -5291.734375 525.988281 -194.000000
Bad surface extents point: -3798.011719 -692.730469 -194.000000
Bad surface extents — surface is too big to have a lightmap
material JUNGLE/BLENDROCKWALLTOGRASS_JUNGLE around point (-4853.5 -671.5 -194.0)
(dimension: 0, 133>126)
You see those numbers behind the Bad surface extents point message? Those are coordinates. There’s an option in Hammer to go to the specific coordinates. It’ll lead you right to the area that causes issues.
Also, please, don’t run VVIS on fast. Just run it on normal. Doing fast VVIS will cause all sorts of trouble.
UKCS-Alias
Mann vs Machine… or… Mapper vs Meta?
-
#3
Most of the time you just have to split the brush to smaller ones when that error shows. Once a brush becomes too large and gets a too high detail lightmap to cover the brush it will give this error. The way to calc the max size is: 126xlightmapscale. Often with a 16 scale this means 2016 (prob 2048 as thats a more logical round number). So start looking for brushes that exceed that size.
Reading the texture name i would suspect you made a huge brush that later would become a displacement, so that again might be helpfull at spotting the problem brush.
And the reason you dont get vvis to run is because vbsp crashed and never was able to write the bsp. This is why vvis and vrad fail aswel.
Also, please, don’t run VVIS on fast. Just run it on normal. Doing fast VVIS will cause all sorts of trouble.
Fast VVIS isnt that bad for test compiles. It ensures the basic optimizing has been applied and doesnt cost alot of time. Also, when an area would become too intensive for your fps the issue will just show faster. For testing i could even somewhat recommend it just for that reason.
Only when you are detailing the map having vvis on fast might be a bad idea, but thats just because it might sometimes result in rendering something that with normal vvis wouldnt be rendered
(for example you have a nodraw brush with a displacement running through it. at fast vvis the nodraw didnt block vvis from accepting the part behind it — in a test version that is used for testing/fixing entity work you simply can ignore that)
Only when you make a version you release it should have normal vvis. And that is even the case for an alpha version.
Its just like running vrad on fast. It might look poor. but if you only want to ensure that players get correctly lit you realy dont have to care about that poor looking shadow on the wall.
-
#4
Well, I don’t think it’s the displacements causing all these issues.
** Executing…
** Command: «F:Program Files (x86)SteamsteamappscommonTeam Fortress 2binvbsp.exe»
** Parameters: -game «F:Program Files (x86)SteamsteamappscommonTeam Fortress 2tf» «C:Backup FoldersDocumentsTf2 mapsMappingjungletempletemple8.vmf»
Valve Software — vbsp.exe (Apr 29 2015)
8 threads
materialPath: F:Program Files (x86)SteamsteamappscommonTeam Fortress 2tfmaterials
Loading C:Backup FoldersDocumentsTf2 mapsMappingjungletempletemple8.vmf
ConVarRef mat_reduceparticles doesn’t point to an existing ConVar
Patching WVT material: maps/temple8/jungle/blendrockwalltograss_jungle_wvt_patch
Patching WVT material: maps/temple8/egypt/sand_grass_blend_02_wvt_patch
Patching WVT material: maps/temple8/egypt/sky_sand_waves_01_wvt_patch
fixing up env_cubemap materials on brush sides…
ProcessBlock_Thread: 0…1…2…3…4…5…6…7…8…9…10 (0)
ProcessBlock_Thread: 0…1…2…3…4…5…6…7…8…9…10 (0)
Processing areas…done (0)
Building Faces…done (0)
FixTjuncs…
PruneNodes…
WriteBSP…
done (0)
writing C:Backup FoldersDocumentsTf2 mapsMappingjungletempletemple8.prt…Building visibility clusters…
done (0)
Creating default LDR cubemaps for env_cubemap using skybox materials:
skybox/sky_day01_01*.vmt
! Run buildcubemaps in the engine to get the correct cube maps.
Creating default HDR cubemaps for env_cubemap using skybox materials:
skybox/sky_day01_01*.vmt
! Run buildcubemaps in the engine to get the correct cube maps.
Finding displacement neighbors…
Finding lightmap sample positions…
Displacement Alpha : 0…1…2…3…4…5…6…7…8…9…10
Building Physics collision data…
done (0) (53027 bytes)
Placing detail props : 0…1…2…3…4…5…6…7…8…9…10
Compacting texture/material tables…
Reduced 414 texinfos to 175
Reduced 19 texdatas to 16 (501 bytes to 416)
Writing C:Backup FoldersDocumentsTf2 mapsMappingjungletempletemple8.bsp
0 seconds elapsed
** Executing…
** Command: «F:Program Files (x86)SteamsteamappscommonTeam Fortress 2binvvis.exe»
** Parameters: -game «F:Program Files (x86)SteamsteamappscommonTeam Fortress 2tf» -fast «C:Backup FoldersDocumentsTf2 mapsMappingjungletempletemple8»
Valve Software — vvis.exe (Apr 29 2015)
fastvis = true
8 threads
reading c:backup foldersdocumentstf2 mapsmappingjungletempletemple8.bsp
reading c:backup foldersdocumentstf2 mapsmappingjungletempletemple8.prt
496 portalclusters
1476 numportals
BasePortalVis: 0…1…2…3…4…5…6…7…8…9…10 (0)
Optimized: 5115 visible clusters (2.25%)
Total clusters visible: 227339
Average clusters visible: 458
Building PAS…
Average clusters audible: 496
visdatasize:65589 compressed from 63488
writing c:backup foldersdocumentstf2 mapsmappingjungletempletemple8.bsp
0 seconds elapsed
** Executing…
** Command: «F:Program Files (x86)SteamsteamappscommonTeam Fortress 2binvrad.exe»
** Parameters: -game «F:Program Files (x86)SteamsteamappscommonTeam Fortress 2tf» «C:Backup FoldersDocumentsTf2 mapsMappingjungletempletemple8»
Valve Software — vrad.exe SSE (Apr 29 2015)
Valve Radiosity Simulator
8 threads
[Reading texlights from ‘lights.rad’]
[37 texlights parsed from ‘lights.rad’]
Loading c:backup foldersdocumentstf2 mapsmappingjungletempletemple8.bsp
Setting up ray-trace acceleration structure… Done (0.28 seconds)
1015 faces
2515960 square feet [362298240.00 square inches]
0 Displacements
0 Square Feet [0.00 Square Inches]
1015 patches before subdivision
zero area child patch
zero area child patch
zero area child patch
21475 patches after subdivision
15 direct lights
BuildFacelights: 0…1…2…3…4…5…6…7…8…9…10 (0)
BuildVisLeafs: 0…1…2…3…4…5…6…7…8…9…10 (1)
transfers 967963, max 266
transfer lists: 7.4 megs
GatherLight: 0…1…2…3…4…5…6…7…8…9…10 (0)
Bounce #1 added RGB(86400, 65850, 40882)
GatherLight: 0…1…2…3…4…5…6…7…8…9…10 (0)
Bounce #2 added RGB(33941, 19769, 7700)
GatherLight: 0…1…2…3…4…5…6…7…8…9…10 (0)
Bounce #3 added RGB(12246, 5467, 1339)
GatherLight: 0…1…2…3…4…5…6…7…8…9…10 (0)
Bounce #4 added RGB(4647, 1586, 243)
GatherLight: 0…1…2…3…4…5…6…7…8…9…10 (0)
Bounce #5 added RGB(1721, 450, 43)
GatherLight: 0…1…2…3…4…5…6…7…8…9…10 (0)
Bounce #6 added RGB(650, 130,
GatherLight: 0…1…2…3…4…5…6…7…8…9…10 (0)
Bounce #7 added RGB(244, 37, 1)
GatherLight: 0…1…2…3…4…5…6…7…8…9…10 (0)
Bounce #8 added RGB(93, 11, 0)
GatherLight: 0…1…2…3…4…5…6…7…8…9…10 (0)
Bounce #9 added RGB(35, 3, 0)
GatherLight: 0…1…2…3…4…5…6…7…8…9…10 (0)
Bounce #10 added RGB(13, 1, 0)
GatherLight: 0…1…2…3…4…5…6…7…8…9…10 (0)
Bounce #11 added RGB(5, 0, 0)
GatherLight: 0…1…2…3…4…5…6…7…8…9…10 (0)
Bounce #12 added RGB(2, 0, 0)
GatherLight: 0…1…2…3…4…5…6…7…8…9…10 (0)
Bounce #13 added RGB(1, 0, 0)
Build Patch/Sample Hash Table(s)…..Done<0.0049 sec>
FinalLightFace: 0…1…2…3…4…5…6…7…8…9…10 (1)
FinalLightFace Done
0 of 0 (0% of) surface lights went in leaf ambient cubes.
ThreadComputeLeafAmbient: 0…1…2…3…4…5…6…7…8…9…10 (3)
Writing leaf ambient…done
Ready to Finish
Object names Objects/Maxobjs Memory / Maxmem Fullness
———— ————— ————— ———
models 32/1024 1536/49152 ( 3.1%)
brushes 127/8192 1524/98304 ( 1.6%)
brushsides 841/65536 6728/524288 ( 1.3%)
planes 816/65536 16320/1310720 ( 1.2%)
vertexes 1913/65536 22956/786432 ( 2.9%)
nodes 1329/65536 42528/2097152 ( 2.0%)
texinfos 175/12288 12600/884736 ( 1.4%)
texdata 16/2048 512/65536 ( 0.8%)
dispinfos 0/0 0/0 ( 0.0%)
disp_verts 0/0 0/0 ( 0.0%)
disp_tris 0/0 0/0 ( 0.0%)
disp_lmsamples 0/0 0/0 ( 0.0%)
faces 1015/65536 56840/3670016 ( 1.5%)
hdr faces 0/65536 0/3670016 ( 0.0%)
origfaces 428/65536 23968/3670016 ( 0.7%)
leaves 1362/65536 43584/2097152 ( 2.1%)
leaffaces 1106/65536 2212/131072 ( 1.7%)
leafbrushes 683/65536 1366/131072 ( 1.0%)
areas 2/256 16/2048 ( 0.8%)
surfedges 6351/512000 25404/2048000 ( 1.2%)
edges 3732/256000 14928/1024000 ( 1.5%)
LDR worldlights 15/8192 1320/720896 ( 0.2%)
HDR worldlights 0/8192 0/720896 ( 0.0%)
leafwaterdata 0/32768 0/393216 ( 0.0%)
waterstrips 104/32768 1040/327680 ( 0.3%)
waterverts 0/65536 0/786432 ( 0.0%)
waterindices 1596/65536 3192/131072 ( 2.4%)
cubemapsamples 0/1024 0/16384 ( 0.0%)
overlays 0/512 0/180224 ( 0.0%)
LDR lightdata [variable] 1359452/0 ( 0.0%)
HDR lightdata [variable] 0/0 ( 0.0%)
visdata [variable] 65589/16777216 ( 0.4%)
entdata [variable] 27777/393216 ( 7.1%)
LDR ambient table 1362/65536 5448/262144 ( 2.1%)
HDR ambient table 1362/65536 5448/262144 ( 2.1%)
LDR leaf ambient 4570/65536 127960/1835008 ( 7.0%)
HDR leaf ambient 1362/65536 38136/1835008 ( 2.1%)
occluders 0/0 0/0 ( 0.0%)
occluder polygons 0/0 0/0 ( 0.0%)
occluder vert ind 0/0 0/0 ( 0.0%)
detail props [variable] 1/12 ( 8.3%)
static props [variable] 1/15606 ( 0.0%)
pakfile [variable] 106659/0 ( 0.0%)
physics [variable] 53027/4194304 ( 1.3%)
physics terrain [variable] 2/1048576 ( 0.0%)
Level flags = 0
Total triangle count: 2609
Writing c:backup foldersdocumentstf2 mapsmappingjungletempletemple8.bsp
5 seconds elapsed
** Executing…
** Command: Copy File
** Parameters: «C:Backup FoldersDocumentsTf2 mapsMappingjungletempletemple8.bsp» «F:Program Files (x86)SteamsteamappscommonTeam Fortress 2tfmapstemple8.bsp»
is my new compile log…no problems in interlopers… and this..the map looks like this
I also want to mention that I tried to make sure that the map is showing small changes, and it doesn’t. It only loaded no displacements. Then I hid one object, compiled the map, and it’s the same.
-
#5
Well, I don’t think it’s the displacements causing all these issues.
** Executing…
** Command: «F:Program Files (x86)SteamsteamappscommonTeam Fortress 2binvbsp.exe»
** Parameters: -game «F:Program Files (x86)SteamsteamappscommonTeam Fortress 2tf» «C:Backup FoldersDocumentsTf2 mapsMappingjungletempletemple8.vmf»Valve Software — vbsp.exe (Apr 29 2015)
8 threads
materialPath: F:Program Files (x86)SteamsteamappscommonTeam Fortress 2tfmaterials
Loading C:Backup FoldersDocumentsTf2 mapsMappingjungletempletemple8.vmf
ConVarRef mat_reduceparticles doesn’t point to an existing ConVar
Patching WVT material: maps/temple8/jungle/blendrockwalltograss_jungle_wvt_patch
Patching WVT material: maps/temple8/egypt/sand_grass_blend_02_wvt_patch
Patching WVT material: maps/temple8/egypt/sky_sand_waves_01_wvt_patch
fixing up env_cubemap materials on brush sides…
ProcessBlock_Thread: 0…1…2…3…4…5…6…7…8…9…10 (0)
ProcessBlock_Thread: 0…1…2…3…4…5…6…7…8…9…10 (0)
Processing areas…done (0)
Building Faces…done (0)
FixTjuncs…
PruneNodes…
WriteBSP…
done (0)
writing C:Backup FoldersDocumentsTf2 mapsMappingjungletempletemple8.prt…Building visibility clusters…
done (0)
Creating default LDR cubemaps for env_cubemap using skybox materials:
skybox/sky_day01_01*.vmt
! Run buildcubemaps in the engine to get the correct cube maps.
Creating default HDR cubemaps for env_cubemap using skybox materials:
skybox/sky_day01_01*.vmt
! Run buildcubemaps in the engine to get the correct cube maps.
Finding displacement neighbors…
Finding lightmap sample positions…
Displacement Alpha : 0…1…2…3…4…5…6…7…8…9…10
Building Physics collision data…
done (0) (53027 bytes)
Placing detail props : 0…1…2…3…4…5…6…7…8…9…10
Compacting texture/material tables…
Reduced 414 texinfos to 175
Reduced 19 texdatas to 16 (501 bytes to 416)
Writing C:Backup FoldersDocumentsTf2 mapsMappingjungletempletemple8.bsp
0 seconds elapsed** Executing…
** Command: «F:Program Files (x86)SteamsteamappscommonTeam Fortress 2binvvis.exe»
** Parameters: -game «F:Program Files (x86)SteamsteamappscommonTeam Fortress 2tf» -fast «C:Backup FoldersDocumentsTf2 mapsMappingjungletempletemple8»Valve Software — vvis.exe (Apr 29 2015)
fastvis = true
8 threads
reading c:backup foldersdocumentstf2 mapsmappingjungletempletemple8.bsp
reading c:backup foldersdocumentstf2 mapsmappingjungletempletemple8.prt
496 portalclusters
1476 numportals
BasePortalVis: 0…1…2…3…4…5…6…7…8…9…10 (0)
Optimized: 5115 visible clusters (2.25%)
Total clusters visible: 227339
Average clusters visible: 458
Building PAS…
Average clusters audible: 496
visdatasize:65589 compressed from 63488
writing c:backup foldersdocumentstf2 mapsmappingjungletempletemple8.bsp
0 seconds elapsed** Executing…
** Command: «F:Program Files (x86)SteamsteamappscommonTeam Fortress 2binvrad.exe»
** Parameters: -game «F:Program Files (x86)SteamsteamappscommonTeam Fortress 2tf» «C:Backup FoldersDocumentsTf2 mapsMappingjungletempletemple8»Valve Software — vrad.exe SSE (Apr 29 2015)
Valve Radiosity Simulator
8 threads
[Reading texlights from ‘lights.rad’]
[37 texlights parsed from ‘lights.rad’]Loading c:backup foldersdocumentstf2 mapsmappingjungletempletemple8.bsp
Setting up ray-trace acceleration structure… Done (0.28 seconds)
1015 faces
2515960 square feet [362298240.00 square inches]
0 Displacements
0 Square Feet [0.00 Square Inches]
1015 patches before subdivision
zero area child patch
zero area child patch
zero area child patch
21475 patches after subdivision
15 direct lights
BuildFacelights: 0…1…2…3…4…5…6…7…8…9…10 (0)
BuildVisLeafs: 0…1…2…3…4…5…6…7…8…9…10 (1)
transfers 967963, max 266
transfer lists: 7.4 megs
GatherLight: 0…1…2…3…4…5…6…7…8…9…10 (0)
Bounce #1 added RGB(86400, 65850, 40882)
GatherLight: 0…1…2…3…4…5…6…7…8…9…10 (0)
Bounce #2 added RGB(33941, 19769, 7700)
GatherLight: 0…1…2…3…4…5…6…7…8…9…10 (0)
Bounce #3 added RGB(12246, 5467, 1339)
GatherLight: 0…1…2…3…4…5…6…7…8…9…10 (0)
Bounce #4 added RGB(4647, 1586, 243)
GatherLight: 0…1…2…3…4…5…6…7…8…9…10 (0)
Bounce #5 added RGB(1721, 450, 43)
GatherLight: 0…1…2…3…4…5…6…7…8…9…10 (0)
Bounce #6 added RGB(650, 130,
GatherLight: 0…1…2…3…4…5…6…7…8…9…10 (0)
Bounce #7 added RGB(244, 37, 1)
GatherLight: 0…1…2…3…4…5…6…7…8…9…10 (0)
Bounce #8 added RGB(93, 11, 0)
GatherLight: 0…1…2…3…4…5…6…7…8…9…10 (0)
Bounce #9 added RGB(35, 3, 0)
GatherLight: 0…1…2…3…4…5…6…7…8…9…10 (0)
Bounce #10 added RGB(13, 1, 0)
GatherLight: 0…1…2…3…4…5…6…7…8…9…10 (0)
Bounce #11 added RGB(5, 0, 0)
GatherLight: 0…1…2…3…4…5…6…7…8…9…10 (0)
Bounce #12 added RGB(2, 0, 0)
GatherLight: 0…1…2…3…4…5…6…7…8…9…10 (0)
Bounce #13 added RGB(1, 0, 0)
Build Patch/Sample Hash Table(s)…..Done<0.0049 sec>
FinalLightFace: 0…1…2…3…4…5…6…7…8…9…10 (1)
FinalLightFace Done
0 of 0 (0% of) surface lights went in leaf ambient cubes.
ThreadComputeLeafAmbient: 0…1…2…3…4…5…6…7…8…9…10 (3)
Writing leaf ambient…done
Ready to FinishObject names Objects/Maxobjs Memory / Maxmem Fullness
———— ————— ————— ———
models 32/1024 1536/49152 ( 3.1%)
brushes 127/8192 1524/98304 ( 1.6%)
brushsides 841/65536 6728/524288 ( 1.3%)
planes 816/65536 16320/1310720 ( 1.2%)
vertexes 1913/65536 22956/786432 ( 2.9%)
nodes 1329/65536 42528/2097152 ( 2.0%)
texinfos 175/12288 12600/884736 ( 1.4%)
texdata 16/2048 512/65536 ( 0.8%)
dispinfos 0/0 0/0 ( 0.0%)
disp_verts 0/0 0/0 ( 0.0%)
disp_tris 0/0 0/0 ( 0.0%)
disp_lmsamples 0/0 0/0 ( 0.0%)
faces 1015/65536 56840/3670016 ( 1.5%)
hdr faces 0/65536 0/3670016 ( 0.0%)
origfaces 428/65536 23968/3670016 ( 0.7%)
leaves 1362/65536 43584/2097152 ( 2.1%)
leaffaces 1106/65536 2212/131072 ( 1.7%)
leafbrushes 683/65536 1366/131072 ( 1.0%)
areas 2/256 16/2048 ( 0.8%)
surfedges 6351/512000 25404/2048000 ( 1.2%)
edges 3732/256000 14928/1024000 ( 1.5%)
LDR worldlights 15/8192 1320/720896 ( 0.2%)
HDR worldlights 0/8192 0/720896 ( 0.0%)
leafwaterdata 0/32768 0/393216 ( 0.0%)
waterstrips 104/32768 1040/327680 ( 0.3%)
waterverts 0/65536 0/786432 ( 0.0%)
waterindices 1596/65536 3192/131072 ( 2.4%)
cubemapsamples 0/1024 0/16384 ( 0.0%)
overlays 0/512 0/180224 ( 0.0%)
LDR lightdata [variable] 1359452/0 ( 0.0%)
HDR lightdata [variable] 0/0 ( 0.0%)
visdata [variable] 65589/16777216 ( 0.4%)
entdata [variable] 27777/393216 ( 7.1%)
LDR ambient table 1362/65536 5448/262144 ( 2.1%)
HDR ambient table 1362/65536 5448/262144 ( 2.1%)
LDR leaf ambient 4570/65536 127960/1835008 ( 7.0%)
HDR leaf ambient 1362/65536 38136/1835008 ( 2.1%)
occluders 0/0 0/0 ( 0.0%)
occluder polygons 0/0 0/0 ( 0.0%)
occluder vert ind 0/0 0/0 ( 0.0%)
detail props [variable] 1/12 ( 8.3%)
static props [variable] 1/15606 ( 0.0%)
pakfile [variable] 106659/0 ( 0.0%)
physics [variable] 53027/4194304 ( 1.3%)
physics terrain [variable] 2/1048576 ( 0.0%)Level flags = 0
Total triangle count: 2609
Writing c:backup foldersdocumentstf2 mapsmappingjungletempletemple8.bsp
5 seconds elapsed** Executing…
** Command: Copy File
** Parameters: «C:Backup FoldersDocumentsTf2 mapsMappingjungletempletemple8.bsp» «F:Program Files (x86)SteamsteamappscommonTeam Fortress 2tfmapstemple8.bsp»is my new compile log…no problems in interlopers… and this..the map looks like this
I also want to mention that I tried to make sure that the map is showing small changes, and it doesn’t. It only loaded no displacements. Then I hid one object, compiled the map, and it’s the same.
Now the map is compiling with things not black but isn’t loading new changes…
I will NOT start over from scratch because it’s just not practical considering I’ve had this issue before and fixed it by fixing the problems in the map, the only difference is when that happened in previous maps…there was a lot more to work from. I don’t even have anything big in my maps. Props, displacements, some triggers for the idle track that need to be fixed because they are going in wrong directions, really not much else. This map is still pretty new. Someone please help.
Last edited: Apr 30, 2015
-
#6
It’s simple, really. VBSP isn’t writing the bsp to the location VVIS and VRAD expect it to go.
Both VVIS and VRAD spew this error out. That file path doesn’t exist. VBSP doesn’t put the bsp in that location, so VVIS and VRAD outright fail since they don’t have anything to work with.
If this is your first compile for this map, make sure it compiles the bsp to the default folders first (which would be tf/maps). If you have earlier versions, there’s nothing else to do than to open the .vmf of that version, duplicate it, rename it and then start again from there.
Also, this:
You see those numbers behind the Bad surface extents point message? Those are coordinates. There’s an option in Hammer to go to the specific coordinates. It’ll lead you right to the area that causes issues.
Also, please, don’t run VVIS on fast. Just run it on normal. Doing fast VVIS will cause all sorts of trouble.
Yes I stated that I already worked with those coordinates.. and what I did either wasn’t fixing it, or it wasn’t showing a fix because the map wouldn’t load. I tried what you did, moved it to my tf/maps folder, it worked. ONCE. I tried to see if it’d show a changed compiled version of the map by hiding 1 thing and it didn’t show the change.
compile log:
** Executing…
** Command: «F:Program Files (x86)SteamsteamappscommonTeam Fortress 2binvbsp.exe»
** Parameters: -game «F:Program Files (x86)SteamsteamappscommonTeam Fortress 2tf» «F:Program Files (x86)SteamsteamappscommonTeam Fortress 2tfmapstemple8.vmf»
Valve Software — vbsp.exe (Apr 29 2015)
8 threads
materialPath: F:Program Files (x86)SteamsteamappscommonTeam Fortress 2tfmaterials
Loading F:Program Files (x86)SteamsteamappscommonTeam Fortress 2tfmapstemple8.vmf
Patching WVT material: maps/temple8/jungle/blendrockwalltograss_jungle_wvt_patch
Patching WVT material: maps/temple8/egypt/sand_grass_blend_02_wvt_patch
Patching WVT material: maps/temple8/egypt/sky_sand_waves_01_wvt_patch
fixing up env_cubemap materials on brush sides…
ProcessBlock_Thread: 0…1…2…3…4…5…6…7…8…9…10 (0)
ProcessBlock_Thread: 0…1…2…3…4…5…6…7…8…9…10 (0)
Processing areas…done (0)
Building Faces…done (0)
FixTjuncs…
PruneNodes…
WriteBSP…
done (0)
writing F:Program Files (x86)SteamsteamappscommonTeam Fortress 2tfmapstemple8.prt…Building visibility clusters…
done (0)
Creating default LDR cubemaps for env_cubemap using skybox materials:
skybox/sky_day01_01*.vmt
! Run buildcubemaps in the engine to get the correct cube maps.
Creating default HDR cubemaps for env_cubemap using skybox materials:
skybox/sky_day01_01*.vmt
! Run buildcubemaps in the engine to get the correct cube maps.
Finding displacement neighbors…
Finding lightmap sample positions…
Displacement Alpha : 0…1…2…3…4…5…6…7…8…9…10
Building Physics collision data…
done (0) (38556 bytes)
Placing detail props : 0…1…2…3…4…5…6…7…8…9…10
Compacting texture/material tables…
Reduced 340 texinfos to 130
Reduced 16 texdatas to 12 (441 bytes to 307)
Writing F:Program Files (x86)SteamsteamappscommonTeam Fortress 2tfmapstemple8.bsp
0 seconds elapsed
** Executing…
** Command: «F:Program Files (x86)SteamsteamappscommonTeam Fortress 2binvvis.exe»
** Parameters: -game «F:Program Files (x86)SteamsteamappscommonTeam Fortress 2tf» -fast «F:Program Files (x86)SteamsteamappscommonTeam Fortress 2tfmapstemple8»
Valve Software — vvis.exe (Apr 29 2015)
fastvis = true
8 threads
reading f:program files (x86)steamsteamappscommonteam fortress 2tfmapstemple8.bsp
reading f:program files (x86)steamsteamappscommonteam fortress 2tfmapstemple8.prt
490 portalclusters
1473 numportals
BasePortalVis: 0…1…2…3…4…5…6…7…8…9…10 (0)
Optimized: 3562 visible clusters (1.59%)
Total clusters visible: 224330
Average clusters visible: 457
Building PAS…
Average clusters audible: 490
visdatasize:64723 compressed from 62720
writing f:program files (x86)steamsteamappscommonteam fortress 2tfmapstemple8.bsp
0 seconds elapsed
** Executing…
** Command: «F:Program Files (x86)SteamsteamappscommonTeam Fortress 2binvrad.exe»
** Parameters: -game «F:Program Files (x86)SteamsteamappscommonTeam Fortress 2tf» «F:Program Files (x86)SteamsteamappscommonTeam Fortress 2tfmapstemple8»
Valve Software — vrad.exe SSE (Apr 29 2015)
Valve Radiosity Simulator
8 threads
[Reading texlights from ‘lights.rad’]
[37 texlights parsed from ‘lights.rad’]
Loading f:program files (x86)steamsteamappscommonteam fortress 2tfmapstemple8.bsp
Setting up ray-trace acceleration structure… Done (0.27 seconds)
867 faces
2482862 square feet [357532224.00 square inches]
0 Displacements
0 Square Feet [0.00 Square Inches]
867 patches before subdivision
zero area child patch
zero area child patch
zero area child patch
19961 patches after subdivision
15 direct lights
BuildFacelights: 0…1…2…3…4…5…6…7…8…9…10 (0)
BuildVisLeafs: 0…1…2…3…4…5…6…7…8…9…10 (1)
transfers 901148, max 277
transfer lists: 6.9 megs
GatherLight: 0…1…2…3…4…5…6…7…8…9…10 (0)
Bounce #1 added RGB(81174, 61859, 38409)
GatherLight: 0…1…2…3…4…5…6…7…8…9…10 (0)
Bounce #2 added RGB(31255, 18195, 7088)
GatherLight: 0…1…2…3…4…5…6…7…8…9…10 (0)
Bounce #3 added RGB(10993, 4903, 1201)
GatherLight: 0…1…2…3…4…5…6…7…8…9…10 (0)
Bounce #4 added RGB(4109, 1399, 214)
GatherLight: 0…1…2…3…4…5…6…7…8…9…10 (0)
Bounce #5 added RGB(1495, 390, 37)
GatherLight: 0…1…2…3…4…5…6…7…8…9…10 (0)
Bounce #6 added RGB(558, 111, 7)
GatherLight: 0…1…2…3…4…5…6…7…8…9…10 (0)
Bounce #7 added RGB(207, 31, 1)
GatherLight: 0…1…2…3…4…5…6…7…8…9…10 (0)
Bounce #8 added RGB(78, 9, 0)
GatherLight: 0…1…2…3…4…5…6…7…8…9…10 (0)
Bounce #9 added RGB(29, 3, 0)
GatherLight: 0…1…2…3…4…5…6…7…8…9…10 (0)
Bounce #10 added RGB(11, 1, 0)
GatherLight: 0…1…2…3…4…5…6…7…8…9…10 (0)
Bounce #11 added RGB(4, 0, 0)
GatherLight: 0…1…2…3…4…5…6…7…8…9…10 (0)
Bounce #12 added RGB(2, 0, 0)
GatherLight: 0…1…2…3…4…5…6…7…8…9…10 (0)
Bounce #13 added RGB(1, 0, 0)
Build Patch/Sample Hash Table(s)…..Done<0.0047 sec>
FinalLightFace: 0…1…2…3…4…5…6…7…8…9…10 (1)
FinalLightFace Done
0 of 0 (0% of) surface lights went in leaf ambient cubes.
ThreadComputeLeafAmbient: 0…1…2…3…4…5…6…7…8…9…10 (3)
Writing leaf ambient…done
Ready to Finish
Object names Objects/Maxobjs Memory / Maxmem Fullness
———— ————— ————— ———
models 10/1024 480/49152 ( 1.0%)
brushes 99/8192 1188/98304 ( 1.2%)
brushsides 673/65536 5384/524288 ( 1.0%)
planes 728/65536 14560/1310720 ( 1.1%)
vertexes 1658/65536 19896/786432 ( 2.5%)
nodes 1180/65536 37760/2097152 ( 1.8%)
texinfos 130/12288 9360/884736 ( 1.1%)
texdata 12/2048 384/65536 ( 0.6%)
dispinfos 0/0 0/0 ( 0.0%)
disp_verts 0/0 0/0 ( 0.0%)
disp_tris 0/0 0/0 ( 0.0%)
disp_lmsamples 0/0 0/0 ( 0.0%)
faces 867/65536 48552/3670016 ( 1.3%)
hdr faces 0/65536 0/3670016 ( 0.0%)
origfaces 306/65536 17136/3670016 ( 0.5%)
leaves 1191/65536 38112/2097152 ( 1.8%)
leaffaces 944/65536 1888/131072 ( 1.4%)
leafbrushes 647/65536 1294/131072 ( 1.0%)
areas 2/256 16/2048 ( 0.8%)
surfedges 5237/512000 20948/2048000 ( 1.0%)
edges 3120/256000 12480/1024000 ( 1.2%)
LDR worldlights 15/8192 1320/720896 ( 0.2%)
HDR worldlights 0/8192 0/720896 ( 0.0%)
leafwaterdata 0/32768 0/393216 ( 0.0%)
waterstrips 91/32768 910/327680 ( 0.3%)
waterverts 0/65536 0/786432 ( 0.0%)
waterindices 1422/65536 2844/131072 ( 2.2%)
cubemapsamples 0/1024 0/16384 ( 0.0%)
overlays 0/512 0/180224 ( 0.0%)
LDR lightdata [variable] 1283592/0 ( 0.0%)
HDR lightdata [variable] 0/0 ( 0.0%)
visdata [variable] 64723/16777216 ( 0.4%)
entdata [variable] 16463/393216 ( 4.2%)
LDR ambient table 1191/65536 4764/262144 ( 1.8%)
HDR ambient table 1191/65536 4764/262144 ( 1.8%)
LDR leaf ambient 4620/65536 129360/1835008 ( 7.0%)
HDR leaf ambient 1191/65536 33348/1835008 ( 1.8%)
occluders 0/0 0/0 ( 0.0%)
occluder polygons 0/0 0/0 ( 0.0%)
occluder vert ind 0/0 0/0 ( 0.0%)
detail props [variable] 1/12 ( 8.3%)
static props [variable] 1/15600 ( 0.0%)
pakfile [variable] 106659/0 ( 0.0%)
physics [variable] 38556/4194304 ( 0.9%)
physics terrain [variable] 2/1048576 ( 0.0%)
Level flags = 0
Total triangle count: 2279
Writing f:program files (x86)steamsteamappscommonteam fortress 2tfmapstemple8.bsp
5 seconds elapsed
** Executing…
** Command: Copy File
** Parameters: «F:Program Files (x86)SteamsteamappscommonTeam Fortress 2tfmapstemple8.bsp» «F:Program Files (x86)SteamsteamappscommonTeam Fortress 2tfmapstemple8.bsp»
-
#7
Zero Area child patch: somewhere in your map you have a solid (or multiple) without any faces, and VRAD tries to create a lightmap for a brush that is invalid. Check for that. Also, are all the things in your visgroups set to on? Compiling a map without everything turned on can cause this.
I also see a default HL2 skybox. While not the cause of your problems, pick a TF2 skybox.
Also, just for the sake of it, turn the fast VVIS off. Just set it to normal. Just do it.
-
#8
Zero Area child patch: somewhere in your map you have a solid (or multiple) without any faces, and VRAD tries to create a lightmap for a brush that is invalid. Check for that. Also, are all the things in your visgroups set to on? Compiling a map without everything turned on can cause this.
I also see a default HL2 skybox. While not the cause of your problems, pick a TF2 skybox.
Also, just for the sake of it, turn the fast VVIS off. Just set it to normal. Just do it.
The zero area thing I’ve ALWAYS had in my maps, I’ve never been able to fix it and it’s never been a problem. I have tried with everything running, and it doesn’t work. I just tried and it’s like the picture I posted in my last post. Things are black, displacements aren’t showing. If I run the map without displacements it’s still the same. Unless running the map on normal is going to fix this, I’m not going to have the possibility of hours of compiling do absolutely nothing. I’ve never done any of my maps on normal because of how long it takes. I need to know what the issue is.
With displacements turned off this is my log:
** Executing…
** Command: «F:Program Files (x86)SteamsteamappscommonTeam Fortress 2binvbsp.exe»
** Parameters: -game «F:Program Files (x86)SteamsteamappscommonTeam Fortress 2tf» «F:Program Files (x86)SteamsteamappscommonTeam Fortress 2tfmapstemple8.vmf»
Valve Software — vbsp.exe (Apr 29 2015)
8 threads
materialPath: F:Program Files (x86)SteamsteamappscommonTeam Fortress 2tfmaterials
Loading F:Program Files (x86)SteamsteamappscommonTeam Fortress 2tfmapstemple8.vmf
ConVarRef mat_reduceparticles doesn’t point to an existing ConVar
Patching WVT material: maps/temple8/jungle/blendrockwalltograss_jungle_wvt_patch
Patching WVT material: maps/temple8/egypt/sand_grass_blend_02_wvt_patch
Patching WVT material: maps/temple8/egypt/sky_sand_waves_01_wvt_patch
fixing up env_cubemap materials on brush sides…
ProcessBlock_Thread: 0…1…2…3…4…5…6…7…8…9…10 (0)
ProcessBlock_Thread: 0…1…2…3…4…5…6…7…8…9…10 (0)
Processing areas…done (0)
Building Faces…done (0)
FixTjuncs…
PruneNodes…
WriteBSP…
done (0)
writing F:Program Files (x86)SteamsteamappscommonTeam Fortress 2tfmapstemple8.prt…Building visibility clusters…
done (0)
Creating default LDR cubemaps for env_cubemap using skybox materials:
skybox/sky_day01_01*.vmt
! Run buildcubemaps in the engine to get the correct cube maps.
Creating default HDR cubemaps for env_cubemap using skybox materials:
skybox/sky_day01_01*.vmt
! Run buildcubemaps in the engine to get the correct cube maps.
Finding displacement neighbors…
Finding lightmap sample positions…
Displacement Alpha : 0…1…2…3…4…5…6…7…8…9…10
Building Physics collision data…
done (0) (51459 bytes)
Placing detail props : 0…1…2…3…4…5…6…7…8…9…10
Compacting texture/material tables…
Reduced 406 texinfos to 167
Reduced 19 texdatas to 16 (501 bytes to 416)
Writing F:Program Files (x86)SteamsteamappscommonTeam Fortress 2tfmapstemple8.bsp
0 seconds elapsed
** Executing…
** Command: «F:Program Files (x86)SteamsteamappscommonTeam Fortress 2binvvis.exe»
** Parameters: -game «F:Program Files (x86)SteamsteamappscommonTeam Fortress 2tf» -fast «F:Program Files (x86)SteamsteamappscommonTeam Fortress 2tfmapstemple8»
Valve Software — vvis.exe (Apr 29 2015)
fastvis = true
8 threads
reading f:program files (x86)steamsteamappscommonteam fortress 2tfmapstemple8.bsp
reading f:program files (x86)steamsteamappscommonteam fortress 2tfmapstemple8.prt
488 portalclusters
1443 numportals
BasePortalVis: 0…1…2…3…4…5…6…7…8…9…10 (0)
Optimized: 4947 visible clusters (2.25%)
Total clusters visible: 220207
Average clusters visible: 451
Building PAS…
Average clusters audible: 488
visdatasize:63549 compressed from 62464
writing f:program files (x86)steamsteamappscommonteam fortress 2tfmapstemple8.bsp
0 seconds elapsed
** Executing…
** Command: «F:Program Files (x86)SteamsteamappscommonTeam Fortress 2binvrad.exe»
** Parameters: -game «F:Program Files (x86)SteamsteamappscommonTeam Fortress 2tf» «F:Program Files (x86)SteamsteamappscommonTeam Fortress 2tfmapstemple8»
Valve Software — vrad.exe SSE (Apr 29 2015)
Valve Radiosity Simulator
8 threads
[Reading texlights from ‘lights.rad’]
[37 texlights parsed from ‘lights.rad’]
Loading f:program files (x86)steamsteamappscommonteam fortress 2tfmapstemple8.bsp
Setting up ray-trace acceleration structure… Done (0.27 seconds)
991 faces
2515960 square feet [362298240.00 square inches]
0 Displacements
0 Square Feet [0.00 Square Inches]
991 patches before subdivision
zero area child patch
zero area child patch
zero area child patch
21451 patches after subdivision
15 direct lights
BuildFacelights: 0…1…2…3…4…5…6…7…8…9…10 (0)
BuildVisLeafs: 0…1…2…3…4…5…6…7…8…9…10 (1)
transfers 964964, max 266
transfer lists: 7.4 megs
GatherLight: 0…1…2…3…4…5…6…7…8…9…10 (0)
Bounce #1 added RGB(86400, 65850, 40882)
GatherLight: 0…1…2…3…4…5…6…7…8…9…10 (0)
Bounce #2 added RGB(33941, 19769, 7700)
GatherLight: 0…1…2…3…4…5…6…7…8…9…10 (0)
Bounce #3 added RGB(12246, 5467, 1339)
GatherLight: 0…1…2…3…4…5…6…7…8…9…10 (0)
Bounce #4 added RGB(4647, 1586, 243)
GatherLight: 0…1…2…3…4…5…6…7…8…9…10 (0)
Bounce #5 added RGB(1721, 450, 43)
GatherLight: 0…1…2…3…4…5…6…7…8…9…10 (0)
Bounce #6 added RGB(650, 130,
GatherLight: 0…1…2…3…4…5…6…7…8…9…10 (0)
Bounce #7 added RGB(244, 37, 1)
GatherLight: 0…1…2…3…4…5…6…7…8…9…10 (0)
Bounce #8 added RGB(93, 11, 0)
GatherLight: 0…1…2…3…4…5…6…7…8…9…10 (0)
Bounce #9 added RGB(35, 3, 0)
GatherLight: 0…1…2…3…4…5…6…7…8…9…10 (0)
Bounce #10 added RGB(13, 1, 0)
GatherLight: 0…1…2…3…4…5…6…7…8…9…10 (0)
Bounce #11 added RGB(5, 0, 0)
GatherLight: 0…1…2…3…4…5…6…7…8…9…10 (0)
Bounce #12 added RGB(2, 0, 0)
GatherLight: 0…1…2…3…4…5…6…7…8…9…10 (0)
Bounce #13 added RGB(1, 0, 0)
Build Patch/Sample Hash Table(s)…..Done<0.0049 sec>
FinalLightFace: 0…1…2…3…4…5…6…7…8…9…10 (1)
FinalLightFace Done
0 of 0 (0% of) surface lights went in leaf ambient cubes.
ThreadComputeLeafAmbient: 0…1…2…3…4…5…6…7…8…9…10 (3)
Writing leaf ambient…done
Ready to Finish
Object names Objects/Maxobjs Memory / Maxmem Fullness
———— ————— ————— ———
models 32/1024 1536/49152 ( 3.1%)
brushes 123/8192 1476/98304 ( 1.5%)
brushsides 817/65536 6536/524288 ( 1.2%)
planes 796/65536 15920/1310720 ( 1.2%)
vertexes 1881/65536 22572/786432 ( 2.9%)
nodes 1317/65536 42144/2097152 ( 2.0%)
texinfos 167/12288 12024/884736 ( 1.4%)
texdata 16/2048 512/65536 ( 0.8%)
dispinfos 0/0 0/0 ( 0.0%)
disp_verts 0/0 0/0 ( 0.0%)
disp_tris 0/0 0/0 ( 0.0%)
disp_lmsamples 0/0 0/0 ( 0.0%)
faces 991/65536 55496/3670016 ( 1.5%)
hdr faces 0/65536 0/3670016 ( 0.0%)
origfaces 404/65536 22624/3670016 ( 0.6%)
leaves 1350/65536 43200/2097152 ( 2.1%)
leaffaces 1082/65536 2164/131072 ( 1.7%)
leafbrushes 679/65536 1358/131072 ( 1.0%)
areas 2/256 16/2048 ( 0.8%)
surfedges 6159/512000 24636/2048000 ( 1.2%)
edges 3636/256000 14544/1024000 ( 1.4%)
LDR worldlights 15/8192 1320/720896 ( 0.2%)
HDR worldlights 0/8192 0/720896 ( 0.0%)
leafwaterdata 0/32768 0/393216 ( 0.0%)
waterstrips 104/32768 1040/327680 ( 0.3%)
waterverts 0/65536 0/786432 ( 0.0%)
waterindices 1596/65536 3192/131072 ( 2.4%)
cubemapsamples 0/1024 0/16384 ( 0.0%)
overlays 0/512 0/180224 ( 0.0%)
LDR lightdata [variable] 1358972/0 ( 0.0%)
HDR lightdata [variable] 0/0 ( 0.0%)
visdata [variable] 63549/16777216 ( 0.4%)
entdata [variable] 27777/393216 ( 7.1%)
LDR ambient table 1350/65536 5400/262144 ( 2.1%)
HDR ambient table 1350/65536 5400/262144 ( 2.1%)
LDR leaf ambient 4547/65536 127316/1835008 ( 6.9%)
HDR leaf ambient 1350/65536 37800/1835008 ( 2.1%)
occluders 0/0 0/0 ( 0.0%)
occluder polygons 0/0 0/0 ( 0.0%)
occluder vert ind 0/0 0/0 ( 0.0%)
detail props [variable] 1/12 ( 8.3%)
static props [variable] 1/15606 ( 0.0%)
pakfile [variable] 106659/0 ( 0.0%)
physics [variable] 51459/4194304 ( 1.2%)
physics terrain [variable] 2/1048576 ( 0.0%)
Level flags = 0
Total triangle count: 2561
Writing f:program files (x86)steamsteamappscommonteam fortress 2tfmapstemple8.bsp
5 seconds elapsed
** Executing…
** Command: Copy File
** Parameters: «F:Program Files (x86)SteamsteamappscommonTeam Fortress 2tfmapstemple8.bsp» «F:Program Files (x86)SteamsteamappscommonTeam Fortress 2tfmapstemple8.bsp»
then again I don’t know if it’s even loading the map correctly because it could just be not compiling fully again. If someone wants to help me fix this 100% I don’t mind giving a key of ref and a tour duty ticket or something. I really want to get this fixed as soon as possible.
Last edited: Apr 30, 2015
-
#9
Well, I’m all out of ideas then. I’d start over. This might very well be a .vmf corruption of some sort. That shit happens very frequently. I lost a map once due to a corrupt .vmf. I was able to sort of fix it with notepad++ but all my models were gone, as well as most of my lights. I just started over. It’s a dirty part of the mapping process but you just have to live with it. All I can say is welcome to Source.
Also:
I’ve never done any of my maps on normal because of how long it takes.
Normally I’m not rude, but this is potentially the dumbest thing you can do and say. You should be punished for saying this. If you want your map to be good and be received well by players don’t cut corners because it saves on compile time. Maps just take a while to compile and you just have to live with it. For internal testing, sure, set everything to fast. But even for alpha stage maps run VVIS on normal (and VRAD too, until you’re getting into late beta when detailing becomes a bigger thing) when you’re doing the final compile to ship the map. It ensures people can focus on the gameplay of the map without worrying about low frame rates or even map crashes (setting VVIS on fast can cause that).
-
#10
Copy paste entire map into a new file instead of just redoing everything.
HL2 sky? You do have the ABSPack, right?
-
#11
Well, I’m all out of ideas then. I’d start over. This might very well be a .vmf corruption of some sort. That shit happens very frequently. I lost a map once due to a corrupt .vmf. I was able to sort of fix it with notepad++ but all my models were gone, as well as most of my lights. I just started over. It’s a dirty part of the mapping process but you just have to live with it. All I can say is welcome to Source.
Also:
Normally I’m not rude, but this is potentially the dumbest thing you can do and say. You should be punished for saying this. If you want your map to be good and be received well by players don’t cut corners because it saves on compile time. Maps just take a while to compile and you just have to live with it. For internal testing, sure, set everything to fast. But even for alpha stage maps run VVIS on normal (and VRAD too, until you’re getting into late beta when detailing becomes a bigger thing) when you’re doing the final compile to ship the map. It ensures people can focus on the gameplay of the map without worrying about low frame rates or even map crashes (setting VVIS on fast can cause that).
You can go ahead and be rude, because my maps are extremely popular amongst all the people who go on it to the point that a lot of my maps have been stolen so whatever you say bruh. Almost none of my maps lag unless you have a low end computer. :thumbup1:
-
#12
Copy paste entire map into a new file instead of just redoing everything.
HL2 sky? You do have the ABSPack, right?
Good idea, tried that….Doesn’t seem to work since when trying to open it to test run it, console comes up with: CModelLoader::Map_IsValid: No such map ‘maps/temp1.bsp’
map load failed: temp1 not found or invalid
seems to be the same issue…I have for sure had this problem before but what was causing it was some displacements. For this, if I hide displacements, I was able to actually load the map in tf2 for testing.
EDIT
OK so I deleted those displacements that the coordinates went too and it compiled, and now everything is black.
It compiled tho, that’s good, but now it won’t add any changes so it seems it only compiles for every time I fix something. I don’t know it’s VERY weird.
** Executing…
** Command: «F:Program Files (x86)SteamsteamappscommonTeam Fortress 2binvbsp.exe»
** Parameters: -game «F:Program Files (x86)SteamsteamappscommonTeam Fortress 2tf» «F:Program Files (x86)SteamsteamappscommonTeam Fortress 2tfmapstemp1.vmf»
Valve Software — vbsp.exe (Apr 29 2015)
8 threads
materialPath: F:Program Files (x86)SteamsteamappscommonTeam Fortress 2tfmaterials
Loading F:Program Files (x86)SteamsteamappscommonTeam Fortress 2tfmapstemp1.vmf
ConVarRef mat_reduceparticles doesn’t point to an existing ConVar
Patching WVT material: maps/temp1/jungle/blendrockwalltograss_jungle_wvt_patch
Patching WVT material: maps/temp1/egypt/sand_grass_blend_02_wvt_patch
Patching WVT material: maps/temp1/egypt/sky_sand_waves_01_wvt_patch
Patching WVT material: maps/temp1/egypt/sand_floor_blend_03_wvt_patch
Patching WVT material: maps/temp1/nature/blendgroundtograss001b_wvt_patch
fixing up env_cubemap materials on brush sides…
ProcessBlock_Thread: 0…1…2…3…4…5…6…7…8…9…10 (0)
ProcessBlock_Thread: 0…1…2…3…4…5…6…7…8…9…10 (0)
Processing areas…done (0)
Building Faces…done (0)
FixTjuncs…
PruneNodes…
WriteBSP…
done (0)
writing F:Program Files (x86)SteamsteamappscommonTeam Fortress 2tfmapstemp1.prt…Building visibility clusters…
done (0)
Creating default LDR cubemaps for env_cubemap using skybox materials:
skybox/sky_day01_01*.vmt
! Run buildcubemaps in the engine to get the correct cube maps.
Creating default HDR cubemaps for env_cubemap using skybox materials:
skybox/sky_day01_01*.vmt
! Run buildcubemaps in the engine to get the correct cube maps.
Finding displacement neighbors…
Found a displacement edge abutting multiple other edges.
Finding lightmap sample positions…
Displacement Alpha : 0…1…2…3…4…5…6…7…8…9…10
Building Physics collision data…
done (0) (51459 bytes)
Placing detail props : 0…1…2…3…4…5…6…7…8…9…10
Compacting texture/material tables…
Reduced 1076 texinfos to 400
Reduced 23 texdatas to 19 (649 bytes to 495)
Writing F:Program Files (x86)SteamsteamappscommonTeam Fortress 2tfmapstemp1.bsp
0 seconds elapsed
** Executing…
** Command: «F:Program Files (x86)SteamsteamappscommonTeam Fortress 2binvvis.exe»
** Parameters: -game «F:Program Files (x86)SteamsteamappscommonTeam Fortress 2tf» -fast «F:Program Files (x86)SteamsteamappscommonTeam Fortress 2tfmapstemp1»
Valve Software — vvis.exe (Apr 29 2015)
fastvis = true
8 threads
reading f:program files (x86)steamsteamappscommonteam fortress 2tfmapstemp1.bsp
reading f:program files (x86)steamsteamappscommonteam fortress 2tfmapstemp1.prt
472 portalclusters
1423 numportals
BasePortalVis: 0…1…2…3…4…5…6…7…8…9…10 (0)
Optimized: 2428 visible clusters (1.21%)
Total clusters visible: 201446
Average clusters visible: 426
Building PAS…
Average clusters audible: 472
visdatasize:59592 compressed from 60416
writing f:program files (x86)steamsteamappscommonteam fortress 2tfmapstemp1.bsp
0 seconds elapsed
** Executing…
** Command: «F:Program Files (x86)SteamsteamappscommonTeam Fortress 2binvrad.exe»
** Parameters: -game «F:Program Files (x86)SteamsteamappscommonTeam Fortress 2tf» «F:Program Files (x86)SteamsteamappscommonTeam Fortress 2tfmapstemp1»
Valve Software — vrad.exe SSE (Apr 29 2015)
Valve Radiosity Simulator
8 threads
[Reading texlights from ‘lights.rad’]
[37 texlights parsed from ‘lights.rad’]
Loading f:program files (x86)steamsteamappscommonteam fortress 2tfmapstemp1.bsp
Setting up ray-trace acceleration structure… Done (0.74 seconds)
1212 faces
2515265 square feet [362198208.00 square inches]
260 Displacements
1654336 Square Feet [238224384.00 Square Inches]
1212 patches before subdivision
zero area child patch
zero area child patch
zero area child patch
62512 patches after subdivision
15 direct lights
BuildFacelights: 0…1…2…3…4…5…6…7…8…9…10 (1)
BuildVisLeafs: 0…1…2…3…4…5…6…7…8…9…10 (3)
transfers 1612562, max 284
transfer lists: 12.3 megs
GatherLight: 0…1…2…3…4…5…6…7…8…9…10 (0)
Bounce #1 added RGB(89482, 68162, 42099)
GatherLight: 0…1…2…3…4…5…6…7…8…9…10 (0)
Bounce #2 added RGB(35119, 20451, 7932)
GatherLight: 0…1…2…3…4…5…6…7…8…9…10 (0)
Bounce #3 added RGB(12847, 5732, 1393)
GatherLight: 0…1…2…3…4…5…6…7…8…9…10 (0)
Bounce #4 added RGB(4905, 1672, 254)
GatherLight: 0…1…2…3…4…5…6…7…8…9…10 (0)
Bounce #5 added RGB(1835, 479, 45)
GatherLight: 0…1…2…3…4…5…6…7…8…9…10 (0)
Bounce #6 added RGB(699, 139,
GatherLight: 0…1…2…3…4…5…6…7…8…9…10 (0)
Bounce #7 added RGB(265, 40, 1)
GatherLight: 0…1…2…3…4…5…6…7…8…9…10 (0)
Bounce #8 added RGB(101, 12, 0)
GatherLight: 0…1…2…3…4…5…6…7…8…9…10 (0)
Bounce #9 added RGB(39, 3, 0)
GatherLight: 0…1…2…3…4…5…6…7…8…9…10 (0)
Bounce #10 added RGB(15, 1, 0)
GatherLight: 0…1…2…3…4…5…6…7…8…9…10 (0)
Bounce #11 added RGB(6, 0, 0)
GatherLight: 0…1…2…3…4…5…6…7…8…9…10 (0)
Bounce #12 added RGB(2, 0, 0)
GatherLight: 0…1…2…3…4…5…6…7…8…9…10 (0)
Bounce #13 added RGB(1, 0, 0)
Build Patch/Sample Hash Table(s)…..Done<0.0256 sec>
FinalLightFace: 0…1…2…3…4…5…6…7…8…9…10 (2)
FinalLightFace Done
0 of 0 (0% of) surface lights went in leaf ambient cubes.
ThreadComputeLeafAmbient: 0…1…2…3…4…5…6…7…8…9…10 (2)
Writing leaf ambient…done
Ready to Finish
Object names Objects/Maxobjs Memory / Maxmem Fullness
———— ————— ————— ———
models 32/1024 1536/49152 ( 3.1%)
brushes 123/8192 1476/98304 ( 1.5%)
brushsides 809/65536 6472/524288 ( 1.2%)
planes 1840/65536 36800/1310720 ( 2.8%)
vertexes 2246/65536 26952/786432 ( 3.4%)
nodes 1279/65536 40928/2097152 ( 2.0%)
texinfos 400/12288 28800/884736 ( 3.3%)
texdata 19/2048 608/65536 ( 0.9%)
dispinfos 260/0 45760/0 ( 0.0%)
disp_verts 17028/0 340560/0 ( 0.0%)
disp_tris 26368/0 52736/0 ( 0.0%)
disp_lmsamples 1421536/0 1421536/0 ( 0.0%)
faces 1212/65536 67872/3670016 ( 1.8%)
hdr faces 0/65536 0/3670016 ( 0.0%)
origfaces 660/65536 36960/3670016 ( 1.0%)
leaves 1312/65536 41984/2097152 ( 2.0%)
leaffaces 1043/65536 2086/131072 ( 1.6%)
leafbrushes 662/65536 1324/131072 ( 1.0%)
areas 2/256 16/2048 ( 0.8%)
surfedges 7959/512000 31836/2048000 ( 1.6%)
edges 4813/256000 19252/1024000 ( 1.9%)
LDR worldlights 15/8192 1320/720896 ( 0.2%)
HDR worldlights 0/8192 0/720896 ( 0.0%)
leafwaterdata 0/32768 0/393216 ( 0.0%)
waterstrips 82/32768 820/327680 ( 0.3%)
waterverts 0/65536 0/786432 ( 0.0%)
waterindices 1263/65536 2526/131072 ( 1.9%)
cubemapsamples 0/1024 0/16384 ( 0.0%)
overlays 0/512 0/180224 ( 0.0%)
LDR lightdata [variable] 6031064/0 ( 0.0%)
HDR lightdata [variable] 0/0 ( 0.0%)
visdata [variable] 59592/16777216 ( 0.4%)
entdata [variable] 28056/393216 ( 7.1%)
LDR ambient table 1312/65536 5248/262144 ( 2.0%)
HDR ambient table 1312/65536 5248/262144 ( 2.0%)
LDR leaf ambient 3603/65536 100884/1835008 ( 5.5%)
HDR leaf ambient 1312/65536 36736/1835008 ( 2.0%)
occluders 0/0 0/0 ( 0.0%)
occluder polygons 0/0 0/0 ( 0.0%)
occluder vert ind 0/0 0/0 ( 0.0%)
detail props [variable] 1/12 ( 8.3%)
static props [variable] 1/13122 ( 0.0%)
pakfile [variable] 107392/0 ( 0.0%)
physics [variable] 51459/4194304 ( 1.2%)
physics terrain [variable] 61116/1048576 ( 5.8%)
Level flags = 0
Total triangle count: 2895
Writing f:program files (x86)steamsteamappscommonteam fortress 2tfmapstemp1.bsp
8 seconds elapsed
** Executing…
** Command: Copy File
** Parameters: «F:Program Files (x86)SteamsteamappscommonTeam Fortress 2tfmapstemp1.bsp» «F:Program Files (x86)SteamsteamappscommonTeam Fortress 2tfmapstemp1.bsp»
EDIT
I…I fixed it? I removed all the lights..and now its compiling normal, showing changes and everything…And I fixed the displacements..well it’s no longer black, and uh..its compiling. This whole thing is confusing, Im assuming it was a leak for a light. NO idea.
Last edited: Apr 30, 2015
Zed
Certified Most Crunk™
-
#13
You can go ahead and be rude, because my maps are extremely popular amongst all the people who go on it to the point that a lot of my maps have been stolen so whatever you say bruh. Almost none of my maps lag unless you have a low end computer. :thumbup1:
Acting like a pretentious douche is not a good way to get help.
-
#14
Acting like a pretentious douche is not a good way to get help.
Acting like my maps are all terrible and saying noone will ever like them because I don’t compile the way he recommends even tho the way I’ve been doing it has worked for the past few years, is acting way more like a douche I’d say.
-
#15
Acting like my maps are all terrible and saying noone will ever like them because I don’t compile the way he recommends even tho the way I’ve been doing it has worked for the past few years, is acting way more like a douche I’d say.
I think everyone’s acting like a douche and should try and be nicer to each other. Please apologize to each other.
Disrupted,
Turning VVIS to fast means that it’s doing the crappiest optimization as possible, and if you’re not doing it because ‘it takes too long’ your maps have a MUCH larger problem than whatever you’ve shown us here today. If you’re as popular as you claim you are, it would be in your best interest to give your fans/consumers/customers/community members the best product possible for them. Learning proper VVIS optimization so that compiling doesn’t take forever will 1) make your maps run much better than they are now and 2) will just increase the quality of your work.
-
#16
I think everyone’s acting like a douche and should try and be nicer to each other. Please apologize to each other.
Disrupted,
Turning VVIS to fast means that it’s doing the crappiest optimization as possible, and if you’re not doing it because ‘it takes too long’ your maps have a MUCH larger problem than whatever you’ve shown us here today. If you’re as popular as you claim you are, it would be in your best interest to give your fans/consumers/customers/community members the best product possible for them. Learning proper VVIS optimization so that compiling doesn’t take forever will 1) make your maps run much better than they are now and 2) will just increase the quality of your work.
Typically my maps never have any fps drop, one does because of smog and I said my maps were popular amongst my community. There was no reason for anyone to say that my maps are bad because I compile them differently, until you actually see them, you can’t judge. It was extremely rude and wasn’t beneficial to the topic at hand. I already fixed the problem myself as posted above, and stated multiple times that I do not get weird lightings in my final versions, nor do I get bad lag. I’m often told that my maps run very smoothly for people so again, I understand the reason to load it normal, but the problem is I usually crash from how long it takes. The problem people tend to have on tf2maps is they don’t tend to read, I’ve had to repeat myself multiple times in this thread and I appreciate the people who actually read my posts fully, didn’t insult me and assume everyone hated me maps because I compile it the quickest way possible, and actually took the time to help me. If I do fix the crashing problem then I will probably run them on the correct setting. Calling me a douche for standing up for my work and saying people typically DO like my work, is not me being a douche.
Last edited: Apr 30, 2015
-
#17
Typically my maps never have any fps drop, one does because of smog and I said my maps were popular amongst my community. There was no reason for anyone to say that my maps are bad because I compile them differently, until you actually see them, you can’t judge. It was extremely rude and wasn’t beneficial to the topic at hand. I already fixed the problem myself as posted above, and stated multiple times that I do not get weird lightings in my final versions, nor do I get bad lag. I’m often told that my maps run very smoothly for people so again, I understand the reason to load it normal, but the problem is I usually crash from how long it takes. The problem people tend to have on tf2maps is they don’t tend to read, I’ve had to repeat myself multiple times in this thread and I appreciate the people who actually read my posts fully, didn’t insult me and assume everyone hated me maps because I compile it the quickest way possible, and actually took the time to help me. If I do fix the crashing problem then I will probably run them on the correct setting. Calling me a douche for standing up for my work and saying people typically DO like my work, is not me being a douche.
Directly insulting my community for not reading fully is rude. Thats a flat out fact. I don’t care who you think you are or where you come from or how popular you are elsewhere, directly insulting a community is flat out disrespectful.
The fact that you crash for how long VVIS takes to compile, tells me enough that you have more to learn about mapping than you think. I don’t need to see what you’ve done. I’m sure you’ve worked with hammer for a while, I’m sure you can make things, but if you have to compile your maps on fast VVIS just to make sure they compile? There is something that you are missing, or haven’t learned, or chose not to learn. I don’t know. That is an undisputed issue in mapping. I would suggest you take some time to properly learn VVIS optimization, again.
I went through, I read this thread before I made my post. Standing up for your work is fine, HOW you stand up for your work though is defining. How you did it, to me, was not proper and was written in a way that could be considered as rude.
Now, again I ask, please apologize to ZeNewDragon. ZeNewDragon, I ask that you apologize also.
-
#18
Directly insulting my community for not reading fully is rude. Thats a flat out fact. I don’t care who you think you are or where you come from or how popular you are elsewhere, directly insulting a community is flat out disrespectful.
The fact that you crash for how long VVIS takes to compile, tells me enough that you have more to learn about mapping than you think. I don’t need to see what you’ve done. I’m sure you’ve worked with hammer for a while, I’m sure you can make things, but if you have to compile your maps on fast VVIS just to make sure they compile? There is something that you are missing, or haven’t learned, or chose not to learn. I don’t know. That is an undisputed issue in mapping. I would suggest you take some time to properly learn VVIS optimization, again.
I went through, I read this thread before I made my post. Standing up for your work is fine, HOW you stand up for your work though is defining. How you did it, to me, was not proper and was written in a way that could be considered as rude.
Now, again I ask, please apologize to ZeNewDragon. ZeNewDragon, I ask that you apologize also.
I never insulted the community? I said I have often had to repeat myself here in this thread, (how is that an insult?) and I was thankfull for the people who didn’t make me have to. It’s no fun when people are telling you things you clearly already said, and even so, it’s not a big deal. I don’t really see why you are attacking me, this has nothing to do with the post. I replied without insulting him at all, when he insulted me multiple times. In fact my response was pretty silly even with a little smiley, I don’t know how anyone could ever take that or the word «bruh» seriously. There is absolutely no reason to attack me or say I’m doing things which I’m not. There is no reason to make a big deal about this, it wasn’t even an issue in the first place. If anything you have been extremely hostile towards me for absolutely no reason. This isn’t about who said what, it was about a question I had in regards to the map. I think it should probably just be dropped.
-
#19
The problem people tend to have on tf2maps is they don’t tend to read
This. You said this, and I’m asking you to apologize.
I am not attacking you. I’m a moderator, I’m moderating. I’m asking for you to apologize for it and the perceived tone that you wrote.
-
#20
This. You said this, and I’m asking you to apologize.
I am not attacking you. I’m a moderator, I’m moderating. I’m asking for you to apologize for it and the perceived tone that you wrote.
From one moderator to another, I think you are jumping the gun here. I am not attacking, insulting, demeaning anyone. I’m making a statement. That’s all. It’s the same thing as saying, «hey you are coming off rude.» Like you have been saying to me, You are misunderstanding and jumping to the conclusion and have been pretty aggressively talking to me. Not everyone can tell the tone in text well because there is no sound, it is very easy to assume you understand when you don’t. I already told you that it wasn’t like that, I don’t see what the issue is and I’m sorry that you are misunderstanding. There is really no reason to send me a warning for something you aren’t clear on…I’ve tried clearing it up but I don’t understand the issue. You are making it an issue when there isn’t, and even if I was rudely saying «hey the tf2 maps community sucks!» Is that not allowed? Can I see a rule where that is not allowed? You are going to have people like that ALWAYS, especially on a forum. And if there are rules where opinions are not allowed, that really sucks. But then again, I did not say anything like that or even close. Can you please stop harpin on me when there is nothing? You misunderstood, that’s it. I’m sorry if I didn’t type it in a way that came off clearly. I find it a little unfair that you are going after me more then someone who decided to completely belittle my work without seeing it because of his system.
Last edited: Apr 30, 2015