|
![]() |
#121 |
Местный
Регистрация: 12.07.2015
Сообщений: 417
|
![]()
Сделаю под Макс.
Вообще, для хуков, при импорте их Макса, будет важно соблюдение определённых правил. Так как матрица трансформации при сохранении в obj должна восстанавливаться из модели объекта, надо будет соблюдать определённые правила при создании и редактировании хуков. Первое. Хук обязательно должен иметь 8 вершин и 12 граней (куб, параллелепипед) Второе. Порядок нумерации вершин должен быть определён единообразно (сейчас с планшета пишу, уточню потом, но кажется: против часовой, от передней нижней правой). Если эти условия будут соблюдаться, то матрица легко восстанавливается. Если нет, то будут не правильно восстановлена матрица вращения (направление вращения определяется через положение вершин у не развёрнутого и развёрнутого объекта). Но это мы уже потом доточим до нужной кондиции, когда импорт модели в игру делать будем (загрузку в тулзу из obj, или 3ds). Сейчас надо материалы добить правильно, последнюю неопределённость устранить. |
![]() |
![]() |
![]() |
#122 |
Пытающийся полететь
|
![]() |
![]() |
![]() |
![]() |
#123 |
Местный
Регистрация: 09.05.2009
Адрес: Хабаровск
Сообщений: 1,948
|
![]()
Ничего не понимаю во всём этом, но!!!
Чувствую, что надвигается что то грандиозное, важное! NB79! Спасибо тебе огромное, за то что созидаешь для любимой игры! ![]()
__________________
...каждый болен ИЛ-2 по разному, но похоже что навсегда! |
![]() |
![]() |
![]() |
#124 |
Местный
Регистрация: 12.04.2009
Сообщений: 5,100
|
![]()
вообще Шикарно)))
![]()
__________________
ищется идейный Программер ) |
![]() |
![]() |
![]() |
#125 |
Местный
Регистрация: 12.07.2015
Сообщений: 417
|
![]()
Спасиб!
Но вопросов пока всё равно много. ![]() Например. Иловский материал имеет до четырёх слоёв. Назначение слоёв мне пока до конца не ясно. Где-то первый слой и есть текстура, остальные пустые. А в корабликах, например, первый слой - пустой, имя текстуры во втором. В дополнение к этому материалы имеют древовидную иерархию с наследованием части параметров от родителя к потомку (дерево при чтении материалов я строю). В общем, повозиться там есть с чем. Надо физический смысл структуры mat до конца понять. |
![]() |
![]() |
![]() |
#126 | ||
Пытающийся полететь
|
![]() Цитата:
В ИЛ-2 есть "заготовки" кода и обрезки былых идей, которые в настоящей версии игры не используются, так как "ведут в никуда" ![]() Насколько мне известно в игре "Вторая мировая" ,что построена на движке ИЛ-2 есть использование второго слоя явно для многих моделей. Но там используются текстуры DDS и второй слой в материаля это попытка изобразить убогий бамп(рельеф) В ИЛ-2, да можно тоже подключить второй слой, но он будет работать либо в убогом режиме смешивания либо вообще заместит первый слой. Моя практика показывает полную бестолковость использование второго слоя в текущей версии движка. (или мои познания не полны ![]() С корабликами никогда не занимался. Можно для примера выложить МАТ файл кораблика с пустым первым и ТЕКСТУРНЫМ вторым слоями ? Цитата:
Просто основные параметры берутся из ОДНОГО файла Base.mat , а уж исключительные в файле самого материала меша. Вот и все, вот и все "дерево" материалов Мне кажется данный способ на современном железе лишен смысла. Ибо не 2001 год на дворе и никто не считает память " а у меня 128Мб памяти" ![]() ![]() ![]() ![]() Ибо есть куча модов работающих на ура, в которых это "дерево" материала(родитель потомок) исключено. Все параметры описаны в КАЖДОМ файле материала(пусть даже они и на 80% общие для всех материалов). Последний раз редактировалось carsmaster; 19.09.2015 в 18:54. |
||
![]() |
![]() |
![]() |
#127 |
Местный
Регистрация: 12.07.2015
Сообщений: 417
|
![]()
Дерево не для экономии места. Место тут - копеешная величина. Дерево позволяет группировать материалы по группам свойств и избавляет от необходимости для материалов с подобными свойствами прописывать все свойства индивидуально. Этот подход, в первую очередь, экономит время разработки, а не место либо скорость исполнения.
Представьте, что у вас, допустим, тысяч пять мешей. Все они являются частями каких-то моделей, которые условно можно разделить на несколько групп по условию, допустим, отражающей способности материала. Вы, при разработке, сделали несколько базовых материалов, по кол-ву этих групп, и наследуясь от них создали материалы, где прописаны только индивидуальные текстуры для мешей. Если вы хотите изменить характеристики отражения для какой-то группы, то вам не надо править тысячу материалов, достаточно только в базовом для группы. Это фишка исключительно для удобства управления группами сущностей обладающих схожими характеристиками. Мат с пустым слоем сейчас закину. В корабликах таких масса, почти все, наверное. |
![]() |
![]() |
![]() |
#128 |
Местный
Регистрация: 12.07.2015
Сообщений: 417
|
![]()
На счёт "почти все" я загнул всё же.
![]() Вот, из "Авроры" несколько, даже не рылся особо. Текстуры в слое 1 (нумерация слоёв идёт от нуля, т.е., это второй слой): |
![]() |
![]() |
![]() |
#129 | |
Пытающийся полететь
|
![]() Цитата:
Я как то упустил из виду повреждения, все ваши примеры как раз и есть наложение вторым слоем повреждений на первый(скин) слой при "событие" повреждение-попадание снаряда.. Тоесть попросту говоря СЛОЙ 0 вовсе не пустой у объекта ,он просто из основного материалы берется. Тоесть изначально все равно один слой пользуется. Ну примерно как и у самолетов дырки накладываются потом сверху скина ![]() Тоесть аля "оверлей" ![]() Последний раз редактировалось carsmaster; 19.09.2015 в 22:19. |
|
![]() |
![]() |
![]() |
#130 |
Местный
Регистрация: 12.07.2015
Сообщений: 417
|
![]()
Есть нюансы. Сейчас посмотреть возможности нет, с планшета пишу, но у кораблей есть особенность. В меши зашиты имена материалов, которые при выводе меша дают пустую текстуру для неповреждённой модели. Я, при показе этих мешей, вынужден лезть во второй слой за текстурой. Со всем этим надо разбираться, чтобы экспорт/импорт был максимально простым. Т.е., нужна определённая система правил, которая максимально приближена к оригинальной методике изготовления моделей.
|
![]() |
![]() |
![]() |
#131 |
Местный
Регистрация: 12.07.2015
Сообщений: 417
|
![]()
Для того, что-бы разобраться с текстурами в Максе написал утилитку для просмотра IMF/TGA. В аттаче.
Что нужно сделать: 1) Открыть в ней текстуру, для которой маппинг перевёрнут. Текстура должна быть TGA (не IMF). 2) Написать сюда значение ImageDescriptor. Потом: 1) Открыть в ней эту же текстуру, но в IMF 2) Записать её как TGA 3) Посмотреть в Максе, как она легла на маппинг Ну и доложиться сюда. ![]() Флаг инвертирования для файла пока не меняйте. В начале нужно разобраться почему в Максе текстура перевёрнутой отображается. |
![]() |
![]() |
![]() |
#132 | |
Пытающийся полететь
|
![]() Цитата:
Работа проводилась с оригинальным файлом скина skin1o.tgb от самолета Ki-43-II(Multi1) Этот файл переименовывался для работы по расширению в skin1o.tga 1. Папка GIMP_PHOTOSHOP_TGA_ViewIMF_сверху-слева - это файл взят TGA после преобразования из оригинального IMF в проге ViewIMF ,далее открыт-сохранен в GIMP установкой Начало координат сверху-слева 2. Папка GIMP_PHOTOSHOP_TGA_ViewIMF_сниз-слева - это файл взят TGA после преобразования из оригинального IMF в проге ViewIMF ,далее открыт-сохранен в GIMP установкой Начало координат снизу-слева 3. Папка PHOTOSHOP_TGA_ViewIMF - это файл взят TGA после преобразования из оригинального IMF в проге ViewIMF , далее открыт и сохранен без изменений в Фотошопе. 4. Папка TGA_ViewIMF - это файл взят TGA после преобразования из оригинального IMF в проге ViewIMF 5. Папка WORK_ОТРАЗ_ВЕРТИКАЛН_TGA_ViewIMF - это файл из папки TGA_ViewIMF открытый в Фотошопе , отраженный по ВЕРТИКАЛИ и сохраненный фотошопом. 6. Папка ОРИГ_IMF - оригинальный файл skin1o.tgb после простошо переименования расширения в TGA 7. Папка ViewIMF-V1_0 - программа ViewIMF-V1_0.exe В 3Д макс 2012 пробовались с вашим мешем CF_D0.obj все варианты полученных разными способами файлов текстур из папок что выше Результат везде лдинаковый-ОТРИЦАТЕЛЬНЫЙ . Единственный способ заставивший отображать наложение текстур правильно это 5. Папка WORK_ОТРАЗ_ВЕРТИКАЛН_TGA_ViewIMF - это файл из папки TGA_ViewIMF открытый в Фотошопе , отраженный по ВЕРТИКАЛИ и сохраненный фотошопом. Этот файл в 3д макс видится при проверки маппинга как именно перевернутый!!! Но месторасположение маппинга-развертки отображается правильно и в нужном месте на текстуре. Соответственно и на экране показа детали-объекта CF_D0 раскраска ПРАВИЛЬНАЯ Причем стоит повторится, при проверки маппинга в самом 3д Макс с НЕ перевернутой текстурой само расположение развертки на текстуре выглядит как перевернутое по вертикали. Но средствами 3д макса ни методом FLIP VERTICAL ,ни MIRROR VERTICAL самого маппинга не удалось получить расположении маппинга в нужном месте на текстуре. Все времы маппинг чуть но сдвинут выше или ниже Только подсунув в 3Д макс отраженную по вертикали текстуру получается добится отображения маппинга на нужном месте БЕЗ КАКИХ ЛИБО МАНИПУЛЯЦЙ При этом конечно если использовать отраженную по вертикали текстуру в игре, то раскраска самолета НЕ ПРАВИЛЬНАЯ как и следовало ожидать. Вот еще информация: 1. При открытии вашей прогой меша CF_D0 с текстурой из папки "4. Папка TGA_ViewIMF - это файл взят TGA после преобразования из оригинального IMF в проге ViewIMF" маппинг отображается нормально 2. При открытии вашей прогой меша CF_D0 с текстурой из папки "5. Папка WORK_ОТРАЗ_ВЕРТИКАЛН_TGA_ViewIMF - это файл из папки TGA_ViewIMF открытый в Фотошопе , отраженный по ВЕРТИАЛИ и сохраненный фотошопом." маппинг отображается перевернутым 3. При открытии в MSFX Converter меша CF_D0.obj с текстурой из папки (создал материал файо материалов CF_D0. mtl) "4. Папка TGA_ViewIMF - это файл взят TGA после преобразования из оригинального IMF в проге ViewIMF" маппинг отображается нормально на экране просмотра 4. При открытии в MSFX Converter меша CF_D0.obj с текстурой из папки (создал материал файо материалов CF_D0. mtl) "4. Папка TGA_ViewIMF - это файл взят TGA после преобразования из оригинального IMF в проге ViewIMF" маппинг отображается нормально на экране просмотра Тоесть MSFX Converter совершенно пофигу при отображении на экране на перевернутость текстуры В архиве ниже есть скрины и отображением нужных вам параметров в вашем просмотрщике текстур СКАЧАТЬ : https://cloud.mail.ru/public/Eyuv/sC5woJuiG Последний раз редактировалось carsmaster; 21.09.2015 в 21:47. |
|
![]() |
![]() |
![]() |
#133 |
Местный
Регистрация: 12.07.2015
Сообщений: 417
|
![]()
Спасибо. Но на один вопрос нет ответа.
![]() Так а что получается, если моей утилитой по просмотру TGA открыть IMF, сохранить его в TGA и потом этот TGA подсунуть Максу? Я же говорил, что я не пользуюсь сторонними утилитами, я спокойно могу читать IMF и конвертить его в TGA (или что-то другое, если надо, кроме экзотики всякой). Меня, в первую очередь, интересует как Макс видит TGA, которые конвертит моя утилита. |
![]() |
![]() |
![]() |
#134 |
Пытающийся полететь
|
![]()
У меня не получилось корректно вашей прогой сделать файл TGA из оригинального файла skin1o.tgb (он же в игре и есть IMF , только хитрый какой-то)
Макс полученный файл TGA не видит -ругается имеем image decriptor 0x20 у него Но фотошоп его видит и открывает Edit: Пробовал я и так : прогой ViewIMF-V1_0.exe преобразовал skin1o.tga (переименовал сначала из skin1o.tgb) в TGA. Далее этот TGA все той же прогой ViewIMF-V1_0.exe перегнал в IMF. Далее вашей уже прогой перегнал этот IMF в TGA. Все равно макс на него ругается, а фотошоп видит и открывает Видимо макс не любит image decriptor 0x20 Последний раз редактировалось carsmaster; 21.09.2015 в 23:04. |
![]() |
![]() |
![]() |
#135 | |
Местный
Регистрация: 12.07.2015
Сообщений: 417
|
![]() Цитата:
Интересно то, что в спецификации для четвёртого бита во флагах (0x08) написано, что он reserved и должен быть установлен в ноль. Однако, в ваших файлах из фотошопа он везде стоит в 1 (0х08, или 0х28). Может я старой спецификацией пользуюсь и его надо всегда в 1 ставить, чтоб Макс его видел. А может его вообще из reserved вывели и используют для чего-то. Попробую поискать. UPD: Забыл, ещё вопросик. А как Макс ругается, что пишет на мой файл? |
|
![]() |
![]() |
![]() |
#136 |
Пытающийся полететь
|
![]()
сек
Edit: Бывает правда на 10 раз макс вроде подхватывает файл ваш текстуры и вроде не выдает ошибку, но текстурит коряво(капот весь черный) Да и в редакторе маппинга в максе макс показвает текстуру СО СМЕЩЕНИЕМ !! А так в основном выдает окошко об ошибки при попытке подсунуть максу вашу текстуру. Спасибо за труды!! ![]() ![]() Последний раз редактировалось carsmaster; 21.09.2015 в 23:32. |
![]() |
![]() |
![]() |
#137 |
Местный
Регистрация: 12.07.2015
Сообщений: 417
|
![]()
Переделал немного, надеюсь Макс будет открывать.
Проверьте, если не трудно. |
![]() |
![]() |
![]() |
#138 | |
Пытающийся полететь
|
![]() Цитата:
EDIT: Эта версия вашего просмотрщика нормально конверти из: 1. файл skin1o.tgb вручную переименовал в skin1o.tga , открыл и сохранил вашей прогой в TGA. Макс нормально видит и открывает текстуру в том виде как она и есть. Маппинг аля НЕ правильный. При ОТРАЖЕНИИ по ВЕРТИКАЛИ в фотошопе, в максе маппинг встает на место. 2. файл skin1o.tgb напрямую !! открыл и сохранил вашей прогой в TGA. Макс нормально видит и открывает текстуру в том виде как она и есть. Маппинг аля НЕ правильный. При ОТРАЖЕНИИ по ВЕРТИКАЛИ в фотошопе, в максе маппинг встает на место. Последний раз редактировалось carsmaster; 22.09.2015 в 00:01. |
|
![]() |
![]() |
![]() |
#139 |
Местный
Регистрация: 12.07.2015
Сообщений: 417
|
![]()
TGB можно не переименовывать в TGA, я ориентируюсь не на расширение файла, а на его содержимое.
Сейчас ещё вариант кину, если маппинг не встанет на место, значит придётся текстуры сначала переворачивать в одну сторону, а при импорте в игру опять их крутить назад. В игре IMF просто распаковывается в буфер и этот буфер отдаётся на маппиг. В IMF картинка перевёрнута. Видимо в этом всё и дело. |
![]() |
![]() |
![]() |
#140 | |
Пытающийся полететь
|
![]() Цитата:
Но к сожелаению маппинг так и остался "перевернут" ![]() А вот интересно, 3ds и obj по разному работают с маппингом ?? Проверил сейчас в меш конвертере перегнал меш CF_D0 в формат 3ds , причем все параметры сохранения оставил по умолчанию, ну только имена обрезал до 10 Загрузил в макс и маппинг нормально показывает с дефолтным скином в TGA(сделанного из IMF). С крайней версии сохранения файла в вашем просмотрщике, тоже нормально кажет маппинг, есои использовать 3ds из меш конвертера Может есть какая-то хитрость в разности форматов ? Последний раз редактировалось carsmaster; 22.09.2015 в 00:54. |
|
![]() |
![]() |
![]() |
Здесь присутствуют: 1 (пользователей: 0 , гостей: 1) | |
|
|