![]() |
Показать все 27 сообщений этой темы на одной странице |
HLFX.Ru Forum (https://hlfx.ru/forum/index.php)
- Моделирование (https://hlfx.ru/forum/forumdisplay.php?forumid=25)
-- Пропадает текстура после импорта/экспорта 3дмакс (https://hlfx.ru/forum/showthread.php?threadid=5460)
Пропадает текстура после импорта/экспорта 3дмакс
http://imgur.com/a/aT8tlC4
Есть такая проблема - импортируем модель ку2 в макс, экспортируем и смотрим в игре - у нижней части туловища пропадает текстура. Хотя файл текстуры лежащий рядом с моделью покрывает ее полностью в самом максе.
По ссылке 3 скриншота. 1 - модель до изменения, 2 - после экспорта. Из нее пропадает "base.pcx"
Но в папке с моделью не было и нет такой текстуры. Она есть у некоторых других.
Как бы это починить?
__________________
https://igroprom.d3.ru
https://t.me/deex_gamedev
моделлер говорит: "Не у нижней части туловища пропадает текстура: а растягивается UV map и + ещё визуально вроде как другая текстура назначается, так как оранжевый цвет появился. На исходной текстуре его нет."
Оранжевый цвет как раз на base.pcx
__________________
https://igroprom.d3.ru
https://t.me/deex_gamedev
Чем импортируете-экспортируете? Если экспортированную модель опять импортировать, что в 3дмаксе будет?
В кваке t = 1.0 - t
впрочем и в халфе так же
__________________
My Projects: download page
F.A.Q по XashNT
Блог разработчика в телеграме
C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'
Моделлер тут зарегался, ждет активации. Позже ответит.
Добавлено 08-03-2020 в 00:18:
__________________
https://igroprom.d3.ru
https://t.me/deex_gamedev
Это единственная косячная модель, или со всеми такие проблемы?
Смотрю спецификацию формата, имя текстуры занимает 64 байта. То есть base.pcx в оригинальной модели является частью имени первой текстуры, что странно.
Видно, что частично не совпадают заголовки (всё что идёт до имени текстуры), хорошо бы сравнить их в НЕХ редакторе. В заголовке третьим и четвертым числом идут длина и ширина текстуры. В скрипте md2tagExport.ms они всегда прописываются равными 256 и 256 с пометкой "blitz dont care". Возможно, проблема в этом.
__________________
https://igroprom.d3.ru
https://t.me/deex_gamedev
Привет. Это Я.) Моделлер. В общем да, пока больше похоже на то что сбивается UV развёртка. Возможно движок создаёт свой UV канал, так как я заметил, что он текстуры может сам генерировать при экспорте с Макса, если видит, что такой нет в указанной директории. И вроде как текстурку левую на модельку назначает ещё. Цвета не соответствуют исходной текстуре.
1 | typedef struct |
2 | { |
3 | int ident; |
4 | int version; |
5 |
6 | int skinwidth; |
7 | int skinheight; |
8 | int framesize; /* byte size of each frame */ |
9 |
10 | int num_skins; |
11 | int num_xyz; |
12 | int num_st; /* greater than num_xyz for seams */ |
13 | int num_tris; |
14 | int num_glcmds; /* dwords in strip/fan command list */ |
15 | int num_frames; |
16 |
17 | int ofs_skins; /* each skin is a MAX_SKINNAME string */ |
18 | int ofs_st; /* byte offset from start for stverts */ |
19 | int ofs_tris; /* offset for dtriangles */ |
20 | int ofs_frames; /* offset for first frame */ |
21 | int ofs_glcmds; |
22 | int ofs_end; /* end of file */ |
23 | } dmdl_t; |
__________________
My Projects: download page
F.A.Q по XashNT
Блог разработчика в телеграме
C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'
code:
Оригинальная модель MDL_HEADER: models/deadbods/dude/tris.md2 MDL_ident: 844121161 MDL_version: 8 MDL_skinwidth: 288 MDL_skinheight: 195 MDL_framesize: 876 MDL_num_skins: 1 MDL_num_xyz: 209 MDL_num_st: 328 MDL_num_tris: 376 MDL_num_glcmds: 1920 MDL_num_frames: 6 После экспорта: MDL_HEADER: models/deadbods/dude/tris.md2 MDL_ident: 844121161 MDL_version: 8 MDL_skinwidth: 256 MDL_skinheight: 256 MDL_framesize: 876 MDL_num_skins: 1 MDL_num_xyz: 209 MDL_num_st: 328 MDL_num_tris: 376 MDL_num_glcmds: 1899 MDL_num_frames: 6
__________________
https://igroprom.d3.ru
https://t.me/deex_gamedev
Если в новом файле отредактировать размер текстуры, ничего не изменится?
Добавлено 08-03-2020 в 15:51:
code:
for i=1 to getnumtverts obj do ( local s=(((getTVert obj i).x)*256) as integer local t=((-(getTVert obj i).y+1)*256) as integer append md2.texlist (md2_tex s:s t:t) )
Во! Вбил 288/195 по размерам, и как бы всё норм теперь, но есть одно но.. Я руками передвинул UV сетку. Импортер или Экспортер почему то двигают её вниз.
Вниз двигают, потому что t инвертировано, блин
__________________
My Projects: download page
F.A.Q по XashNT
Блог разработчика в телеграме
C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'
Prokaza это скрипт импорта косячит, кто только эти скрипты писал. Вот пофикшенная версия, проверь.
ncuxonaT что за язык такой? Это Петон или что-то своё?
__________________
My Projects: download page
F.A.Q по XashNT
Блог разработчика в телеграме
C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'
Дядя Миша это MAXScript, встроенный язык 3дмакса
Макс-то может и разный, а вот md2 никогда не менялся.
__________________
My Projects: download page
F.A.Q по XashNT
Блог разработчика в телеграме
C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'
Prokaza пожалуйста. Вообще ДМ прав, косяки с поддержкой самого формата.
А что вот это может быть такое? Текстура модели плывет, если подойти к ней ближе.
https://gyazo.com/92ae94a37d324a2e56dc3d44cbf114dd
И по размерам текстуры модели такое:
"В общем да. Максимальный размер текстуры модели 640x480. Если квадратная 480x480.
Почему то при размере 480 на 480 двиган стал вылетать когда вплотную к модельке подходишь."
__________________
https://igroprom.d3.ru
https://t.me/deex_gamedev
Дикс это ограничение софтварного рендера который не может перспективно искажать текстуру, а только аффинно. Переключись в GL и выстави gl_texturemode gl_nearest_mipmap_linear если любишь квадратики.
__________________
My Projects: download page
F.A.Q по XashNT
Блог разработчика в телеграме
C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'
Дядя Миша я ещё когда в 2003 в Q2: Zaero играл, помню что наблюдал такой глюк конкретно на одном зелёном ящике-пушабле. Меня тогда это заинтересовало. Так что это именно прикол с обработкой модельных текстур движком.
Crystallize это было на только на зелёном ящике? Странно, что вы с Диксом заметили это только на индивидуальных моделях. Странная избирательность
ncuxonaT нечто подобное я ещё наблюдал в Q2: 1492 на стенке и в редакторе Doom 3 на полу, там вообще текстура превратилась в экран, а её края образовали коридор перспективно уходящий в бесконечность, и в завимости от угла камеры его плющило как диораму. Я видео даже имел одно время и тут на форуме должен был пост остаться.
Поскольку проблема всё еще актуальна, выложу своё мини-исследование с вердиктом. Итак. Моделлёр делает модель. Модель видна в софтваре, но в гл её не видно. Причём, что немаловажно - модель видна в любом софт-рендере и не видна в любом гл-рендере. Кудвашный модельвьювер попрежнему её не отображает, а вот кварк прекрасно рендерит, у него софт-рендер там. Как такое возможно?
Я предположил самое простое - нету гл-комманд. Софтвару они не нужны, он просто пробегает все треугольники, а вот гл только по ним и рисует.
пихнул алерт в отрисовку и это предположение полностью подтвердилось:
begin draw model() |
gl commands: 0 |
end draw model() |
__________________
My Projects: download page
F.A.Q по XashNT
Блог разработчика в телеграме
C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'
Временная зона GMT. Текущее время 07:34. | Показать все 27 сообщений этой темы на одной странице |
На основе vBulletin версии 2.3.0
Авторское право © Jelsoft Enterprises Limited 2000 - 2002.
Дизайн и программирование: Crystice Softworks © 2005 - 2024