HLFX.Ru Forum (https://hlfx.ru/forum/index.php)
- Xash3D (https://hlfx.ru/forum/forumdisplay.php?forumid=14)
-- Поддержка 32-bit текстур в ксаше (https://hlfx.ru/forum/showthread.php?threadid=2961)
Отправлено PunkPaToB 12-10-2011 в 07:05:
Дядя Миша
А будут ли полноцветные спрайты и декали?)
Хотябы в XashXT ?
__________________
А что нет?
Отправлено Дядя Миша 12-10-2011 в 07:10:
Полноцветные декали есть уже сейчас
Для этого надо положить декаль в папку materials\decals.
У декали должен быть альфа-канал.
Размер декали полностью зависит от её размер в ваде, поэтому decals.wad удалять нипочем нельзя, а то громадные будут.
__________________
My Projects: download page
F.A.Q по XashNT
Блог разработчика в телеграме
Цитата:
C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'
Отправлено PunkPaToB 12-10-2011 в 07:15:
Дядя Миша
А про спрайты што?
__________________
А что нет?
Отправлено Дядя Миша 12-10-2011 в 07:23:
Спрайт в себе содержит чортову уйму параметров, их нипочём нельзя переконвертировать. Но теоретически можно сделать поддержку spr32 из darkplaces.
Добавлено 12-10-2011 в 11:23:
Единственно, эти spr32 не понимают rendermode.
Тут походу придется свой компилятор писать. Впринципе я когда-то писал нечто подобное.
__________________
My Projects: download page
F.A.Q по XashNT
Блог разработчика в телеграме
Цитата:
C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'
Отправлено Qwertyus 18-10-2011 в 11:46:
Затестил поддержку HD-текстур. Всё работает на ура, но имеется несколько пожеланий.
1. Хотелось бы увидеть в Ксаше поддержку индексных файлов, созданных для использования HD-текстур в стимовской версии. Это желательно реализовать по той причине, что уже есть ряд модов, использующих детальные текстуры таким образом, ну и, конечно, ряд готовящихся модов тоже будет использовать ту же систему, т. к. далеко не все авторы зашивают HD-текстуры в сами карты.
Напоминаю, что индексный файл текстур для стим-ХЛ представляет собой обычный текстовик, имеющий такое же название, как и карта, для которой он предназначен, только с суффиксом _detail (к примеру - c2a5.bsp и c3a2_detail.txt). Текстовик располагается в папке maps. Внутри текстовика - элементарная таблица, с разделением табуляцией, типа:
code:
-0babfl detail/detail 3.0 3.0
Первый параметр - название оригинальной текстуры в wad'е.
Второй - путь к детальной текстуре и её название. При этом изначально подразумевается, что все детальные текстуры должны находиться в папке gfx или в её подпапках. Т. е. запись типа detail/detail означает следующее:
code:
"папка с модом"/gfx/detail/detail.tga
Третий и четвёртый параметры - это высота и ширина, используемые для натяжки детальной текстуры. Значение 1.0 означает, что будет взята вся высота / ширина текстуры целиком; 0.5 - половина высоты / ширины текстуры; 3.0 - то, что текстура будет взята трижды по высоте / ширине.
Кроме того, стандартный принцип использования детальных текстур предполагает не просто подмену одной текстуры другой, а ещё и смешивание "присадочной" текстуры с текстурой из wad'а для создания эффекта рельефности поверхности. В этом я сильно не разбираюсь, видимо там как-то используется альфа-канал или ещё что-то.
2. Хотелось бы увидеть поддержку подобных индексных файлов Ксашем в общих нуждах. Т. е. закидывание всех HD-текстур в папку valve/materials/common - это, конечно, удобно, но есть одно но - это подразумевает, что каждая текстура является по своему уникальной. На деле же это не так. Даже в самом halflife.wad некоторые текстуры дублируются под разными названиями. И чтобы не создавать множественные копии одинаковых tga-файлов, удобно было бы использовать некий общий индексный файл, который будет лежать в той же папке valve/materials/common и управлять наложением детальных текстур для любой карты, если только у ней нету собственного индексного файла со своими параметрами. Это позволит сэкономить место как на жёстком диске, так и в архивах с модами или просто детальными текстурами, предназначенных для скачивания.
К примеру, в качестве тестовой версии я использовал детальные текстуры из мода Gold Singleplayer. Чтобы сделать из них полный пак текстур на замену текстур из halflife.wad, совместимый с текущей версией Ксаша, потребовалось продублировать кучу файлов. Из 600 мб полученного пака текстур более 200 мб - это дубликаты.
Кроме того, если речь идёт об использовании текстур не для замены, а для создания особого рельефа поверхности, то создание отдельного файла бампа для каждой из тысячи текстур - это вообще бред. Так что общий индексный файл нужен обязательно. Кроме того, использование параметров скалирования текстуры по высоте и ширине позволяет использовать любые имеющиеся текстуры с большей гибкостью и эффективностью. В общем, на мой взгляд, нужно внедрить поддержку индексных файлов для текстур, естественно, чтобы была возможность одновременно использовать как замену текстуры, так и наложение (для создания рельефа).
Отправлено Дядя Миша 18-10-2011 в 12:08:
Цитата:
Qwertyus писал:
Хотелось бы увидеть в Ксаше поддержку индексных файлов
ну это файлики для поддержки детальных текстур? Они давно уже есть в ксаше. Более того, ксаш умеет их генерировать самостоятельно для произвольной карты (для этого надо выставить r_detailtextures 2).
Цитата:
Qwertyus писал:
На деле же это не так. Даже в самом halflife.wad некоторые текстуры дублируются под разными названиями.
для этого существует путь valve/materials/mapname. Кол-во дублирующихся текстур обычно мизерно - их на всю игру от силы штук 5-10, так что заморачиваться с индексными файликами ради такой мелочи попросту нет смысла.
Цитата:
Qwertyus писал:
потребовалось продублировать кучу файлов
это ты по-моему какой-то ерундой щас занимаешься. Ну нету в халфе столько дубликатов. Либо неправильно организовал хранение.
Цитата:
Qwertyus писал:
то создание отдельного файла бампа для каждой из тысячи текстур - это вообще бред
а где в ксаше бамп? Ерунду какую-то выдумал и начал её проецировать на всё подряд.__________________
My Projects: download page
F.A.Q по XashNT
Блог разработчика в телеграме
Цитата:
C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'
Отправлено Ku2zoff 18-10-2011 в 12:10:
Цитата:
Qwertyus писал:
сделать из них полный пак текстур
Это хорошая идея. Надо бы взять текстур по 100 на человека и поправить у них соотношение сторон, или вообще заменить при необходимости. И так вот небольшой группкой людей сделать текстур-пак для ХЛ.
Цитата:
Qwertyus писал:
что каждая текстура является по своему уникальной
А в ваде тоже так и есть. Поверх текстур из вада грузим полноцветные. Вообще, грамотный мододел не допустит дублирования текстур. А это ж Валвэ, они торопились просто =)
Отправлено Qwertyus 18-10-2011 в 13:53:
Цитата:
Дядя Миша писал:
ну это файлики для поддержки детальных текстур? Они давно уже есть в ксаше.
Хм, да, ошибся. Кстати, в связи с этим есть предложение сделать поддержку детальных текстур включенной по умолчанию, а то лезть в настройки каждого отдельно взятого мода немного неудобно.
Цитата:
Дядя Миша писал:
Кол-во дублирующихся текстур обычно мизерно - их на всю игру от силы штук 5-10
Цитата:
Дядя Миша писал:
Ну нету в халфе столько дубликатов. Либо неправильно организовал хранение.
В halflife.wad содержится более 3000 текстур. Заявлять, что все они уникальны и не дублируют местами друг друга, будет только тот, кому лень было туда заглянуть. Кроме того, даже если в текстуре есть небольшие отличия от другой, то в рамках создания нормального пака для замены вовсе нет нужды создавать уникальную текстуру, если можно использовать мало чем отличающуюся похожую.
В итоге я взял пак текстур из Gold Singleplayer, тщательно всё перебрал и сделал из него полный пак под Ксаш, по принципу того, что каждая текстура в valve/materials/common заменяет одноимённую текстуру в halflife.wad. Всего было получено на выходе 615 мб текстур общим количеством 1200 штук. Из них только половина текстур (около 600) уникальна. Остальные текстуры дублируют друг друга от одного до нескольких раз. И никакого неправильного хранения у меня нет. Я специально проверил данный пак текстур. Из 1200 файлов текстур почти 400 штук - это дубликаты. А если бы имелась поддержка общего индексного файла, можно было бы сократить все дубликаты, просто прописав в нём все замены, и это, между прочим, сократило бы объём текстур до 393 мб.
Цитата:
Дядя Миша писал:
заморачиваться с индексными файликами ради такой мелочи попросту нет смысла
Если поддержка индексных файлов типа mapname_detail.txt уже присутствует в Ксаше, то в чём проблема предусмотреть наличие одного общего индексного файла, который будет лежать в той же папке valve/materials/common и управлять заменой дублирующих текстур? Тем более, что в него можно вносить только информацию о дублирующихся текстурах, а уникальные текстуры будут подставляться сами по себе, без индексирования.
Цитата:
Дядя Миша писал:
а где в ксаше бамп?
Может я чего не понял или употребил неправильный термин, но во-первых зачастую файлики типа mapname_detail.txt содержат именно инфу о текстурах для создания рельефа поверхности, а вовсе не о текстурах с высоким разрешением. И во-вторых, вроде бы в данной теме упоминались некие luma-текстуры, разве это не текстуры-подложки? Если да, то зачастую такая подложка может быть универсальной для целого ряда текстур, представляющих поверхности с одинаковой фактурой. А значит, опять придётся лишний раз дублировать файлы, вместо того, чтобы внести небольшую строчку в индексный файл.
Ku2zoff: Вот ради создания такого универсального пака под Ксаш (и удобства его использования) я и предлагаю внедрить использование общего индексного файла для предотвращения дублирования текстур.
Отправлено Дядя Миша 18-10-2011 в 14:21:
Цитата:
Qwertyus писал:
Кстати, в связи с этим есть предложение сделать поддержку детальных текстур включенной по умолчанию, а то лезть в настройки каждого отдельно взятого мода немного неудобно
и опять промахнулся. Поддержка детальных текстур И ТАК УЖЕ включена по умолчанию. У меня вообще складывается впечатление, что ты ксаш вообще не юзаешь, документацию не читаешь. Ты просто сидишь и нарочно придумаешь какую-то ересь, которая не соответствует действительности.Цитата:
Qwertyus писал:
Всего было получено на выходе 615 мб текстур общим количеством 1200 штук. Из них только половина текстур (около 600) уникальна. Остальные текстуры дублируют друг друга от одного до нескольких раз
Как говорит Задорнов - или я тупой или ты тупой
ты отдаешь себе отчёт что дубликаты в рамках одного wad-файла - это попросту мёртвые текстуры, которые никогда не будут загружены игрой?
Или может быть бывали такие случаи, когда маппер ставил на карту одну текстуру (из halflife.wad), а после компиляции в игре видел совершенно другую но с тем же именем? Нет. Никогда ничего подобного и близко не было. Почему? Потому что это ересь. Дублирующие текстуры действительно в халфе имеются, но они вшиты в сами карты и таких карт - 28 штук. Это тренировка и первые главы игры - поездка на поезде, аномальные материалы, непредвиденные последствия и офисный комплекс. Причем я уверен, что большинство использованных текстур таки совпадает с оригиналами из halflife.wad
Цитата:
Qwertyus писал:
но во-первых зачастую файлики типа mapname_detail.txt содержат именно инфу о текстурах для создания рельефа поверхности, а вовсе не о текстурах с высоким разрешением
не рельефе, а детализации. Это разные вещи.
Цитата:
Qwertyus писал:
вроде бы в данной теме упоминались некие luma-текстуры
Это текстуры, у которых отдельные части светяться в темноте. Насчет подложек - не понял.
Цитата:
Qwertyus писал:
вместо того, чтобы внести небольшую строчку в индексный файл.
Еще раз: если текстуры полностью повторяют друг-друга и имеют одинаковое имя - их надо класть в папку common. Если у них одинаковое имя, но разное содержание, их надо класть в папку mapname.
Ни в коем случае нельзя юзать вот такие "индексные" файлики, потому что через пару уровней вместо текстур появятся дырки.
Я наоборот в ксаше проделал гигантскую работу, чтобы забороть этот проклятый баг с текстурами, а ты предлагаешь всё обратно изломать.
Ну где ум?__________________
My Projects: download page
F.A.Q по XashNT
Блог разработчика в телеграме
Цитата:
C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'
Отправлено Qwertyus 18-10-2011 в 15:42:
Дядя Миша: Я так вижу, ты меня абсолютно не понял. Поясню на примере, строчками из одного индексного файла к одной из карт.
code:
-0tnnl_flr1 detail/-0tnnl_flr1 1.0 1.0
-1tnnl_flr1 detail/-0tnnl_flr1 1.0 1.0
-2tnnl_flr1 detail/-0tnnl_flr1 1.0 1.0
-3tnnl_flr1 detail/-0tnnl_flr1 1.0 1.0
Что мы тут видим? А видим мы здесь то, что детализированная текстура под именем -0tnnl_flr1(.tga) используется для замены четырёх текстур из halflife.wad (-0tnnl_flr1, -1tnnl_flr1, -2tnnl_flr1, -3tnnl_flr1), имеющих разное имя, но одинаковый внешний вид. Это я и называю дублированием. И для того, чтобы не плодить одинаковые текстуры под разными именами, я и предлагаю возможность внести все "дубликаты" в общий индексный файл. Теперь понятно?
Или с подобным использованием текстур связаны какие-либо баги?
Что касается заявления:
Цитата:
Дядя Миша писал:
Поддержка детальных текстур И ТАК УЖЕ включена по умолчанию.
Не знаю, что имеется в виду под словом "включена", но установив любой мод, приходится обязательно залезть в опции видео и вручную выставить там галочку "Allow materials", иначе этих текстур в игре ты не увидишь. Вот я собственно и предлагаю сделать так, чтобы эта галочка всегда там стояла сама.
Цитата:
Дядя Миша писал:
не рельефе, а детализации. Это разные вещи.
Пусть так, но есть ли возможность использовать эти "детализирующие" текстуры поверх текстур высокого разрешения? Если да, то я и предложил сделать для этого специальный индексный файл. Но только чтобы он точно так же лежал в папке valve/materials/common и игра автоматически добавляла эту детализацию поверх указанных в нём текстур, чтобы не было нужды прописывать эти детализирующие текстуры для каждой конкретной карты. По этой же теме было и замечание касательно luma-текстур.
Добавлено 18-10-2011 в 19:42:
Хм, по ходу у меня был какой-то баг с настройками Ксаша, возможно, из-за использования одних билдов поверх других. Полез разбираться, сделал вывод, что всё может быть связано с файлом opengl.cfg. Удалил его из папки valve, запустил игру, настроил гамму, выставил галочку "Allow materials". Теперь во всех модах автоматически выставляется заданная гамма и галка на "Allow materials". А раньше в модах гамма выставлялась другая, не та, которая была установлена во время последней настройки для Half-Life, и галочка "Allow materials" не выставлялась. Так что вопрос относительно включения поддержки HD-текстур снимается. Но хозяйке на заметку - что-то в параметрах не согласовано, если в opengl.cfg остаётся старая информация.
Отправлено Дядя Миша 18-10-2011 в 16:42:
Цитата:
Qwertyus писал:
А видим мы здесь то, что детализированная текстура под именем -0tnnl_flr1(.tga) используется для замены четырёх текстур из halflife.wad (-0tnnl_flr1, -1tnnl_flr1, -2tnnl_flr1, -3tnnl_flr1), имеющих разное имя, но одинаковый внешний вид. Это я и называю дублированием
Здоров ли ты сегодня?
Это рандом-тайлинг, а не дублирующиеся текстуры. Ахренеть не встать. назвать рандом-тайлинг дублирующимися текстурами. Это же уму нерастяжымо. Даже покойный Бумка себе такого не позволял.
Цитата:
Qwertyus писал:
приходится обязательно залезть в опции видео и вручную выставить там галочку "Allow materials"
Ты упорно путаешь понятие детальных текстур (которые включаются кваром r_detailtextures) и замены текстур высокого разрешения (которые включаются при помощи host_allow_materials), это - две совершенно разные вещи, не надо их смешивать. Если что-то непонятно - спрашивай, но зачем выдумывать всякое? А потом тебя никто понять не может.
Цитата:
Qwertyus писал:
но есть ли возможность использовать эти "детализирующие" текстуры поверх текстур высокого разрешения?
Конечно.
Цитата:
Qwertyus писал:
По этой же теме было и замечание касательно luma-текстур.
луму и детализацию одновременно использовать никак не возможно.
разве что я добавлю еще одну цепочку в свой кастомный mextrasurf_t.
Ну тогда может в следующем билде. Впрочем в ксаше многие вещи делаются прецедентно - то есть пока никто не жалуется, ничего не меняется. Это такой намёк, что если вас что-то не устраивает - регайтесь на форуме и пишите. Без ваших подсказок только баги правятся, да и то не все.
Цитата:
Qwertyus писал:
Но хозяйке на заметку - что-то в параметрах не согласовано
Элементарно. Если в моде нету своего config.cfg, то информация по дефолту берется из папки valve. Отсюда и перенос всех настроек на свежеустановленный мод.__________________
My Projects: download page
F.A.Q по XashNT
Блог разработчика в телеграме
Цитата:
C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'
Отправлено PunkPaToB 18-10-2011 в 16:58:
Дядя Миша
А в ближайшем билде поддержка dds не планируется?
__________________
А что нет?
Отправлено Дядя Миша 18-10-2011 в 17:18:
Цитата:
PunkPaToB писал:
А в ближайшем билде поддержка dds не планируется?
а что она тебе даст? Возможность грузить скайбоксы одной картинкой?__________________
My Projects: download page
F.A.Q по XashNT
Блог разработчика в телеграме
Цитата:
C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'
Отправлено PLut 18-10-2011 в 17:41:
Дядя Миша Планируется ли поддержка лума-текстур для студиомоделей?
__________________
Base Defense on Steam, ModDB
Отправлено Qwertyus 18-10-2011 в 17:47:
Цитата:
Дядя Миша писал:
Это рандом-тайлинг, а не дублирующиеся текстуры.
Ну бог с ним, рандом-тайлинг. Напомню, что я не спец по маппингу с кодингом, всех терминов не знаю и потому пытаюсь объяснять своими словами, относитесь к этому немного проще.
Цитата:
Дядя Миша писал:
Отсюда и перенос всех настроек на свежеустановленный мод.
В том-то и дело, что в основной игре (Half-Life) у меня были выставлены параметры средней гаммы и включена галка "Allow materials". При этом каким-то образом в файле opengl.cfg продолжали сохраняться другие настройки, которые я когда-то перед этим устанавливал - высокий уровень гаммы и отключенное состояние "Allow materials". В итоге в каждом свежеустановленном моде у меня выставлялись такие настройки. Но после того, как я opengl.cfg из папки valve удалил и заново перенастроил игру, стало всё нормально.
На основе vBulletin версии 2.3.0
Авторское право © Jelsoft Enterprises Limited 2000 - 2002.
Дизайн и программирование: Crystice Softworks © 2005 - 2024