![]() |
Добавлю запись лога для последнего открытого файла. На майские постараюсь сделать.
|
Цитата:
|
I just wanted to thank to NB79 by this great tool :thx:, really a very useful tool!.:bravo::bravo::bravo:
|
оооо..... уже не тока наши заценили мощь программы)
|
Спасиба-спасиба! :)
|
Тут такой вопрос назрел...:ups: А экспорт в .fbx не будет рассматриваться? В .obj он не корректно сохраняет...:I'm_thinking: Мапинг "зеркалить" нужно в максе, да и по мешам вопросы. Хотя в последнем не уверен, но подозрения есть. Пока точно в плане меша сказать не могу.:rtfm:
|
Я сейчас ничего обещать вообще не могу, работы - не продохнуть. Тем более с этим форматом не знаком и не знаю его возможностей и его сложности.
|
Вложений: 2
Всех с праздниками!
В аттаче новая версия. Что нового: - Переделал немного отрисовку. - Добавил опцию автоматической корректировки геометрии оверлеев (см. описание ниже) - Добавил опцию игнорирования неизвесных секций (см. описание ниже) - Пофиксил некоторое кол-во мелких баг. Может и новых добавилось. :) Теперь немного подробнее о новых опциях. Автоматическая коррекция геометрии оверлеев делает следующее: Если опция включена, то при загрузке моделей для оверлеев я проверяю совпадение геометрии оверлея с подстилающей поверхностью, и если она не совпадает, то корректирую геометрию оверлеея таким образом, чтоб вершины полигонов оверлея совпадали с вершинами полигонов подстилающей (координаты вершин и нормали). Делаю просто, без тесселяций и прочих сложных наворотов, просто смотрю координаты в некотором диапазоне. Поиск совпадений осуществляю в небольшом диапазоне отклонений, иначе можно цеплять левые треугольники. Для чего это вообще надо? Всё просто. На многих моделях оверлеи имеют огличную от подстилающей геометрию. В результате у нас нормиали смотрят по другому, вершины лежат в других координатах и при отрисовке оверлей ложится на подстилающую не так, как должен. В результате могут появлятся визуальные баги в отрисовке. В частности, это касатся дырок, например, в плоскостях/фюзеляже, когда пробита обшивка. Долго возился с тем, чтоб такие повреждения нормально рисовались, но так и не добился нормального результата и в результате сделал эту фичу. Отклонения также могут влиять на освещение фрагментов модели из-за того, что нормали оверлея смотрят по другому, чем у подстилающей. После коррекции они совпадают и оверлей будет освещаться также, как и поверхность под ним. Как-то так. Опция отключаемая. Когда отключена, то никаких изменений в модель не вносится. Если опция включена и для оверлея не смог найти фрагмент подстилающей, то ругаюсь об этом в лог. При отключенном текстурировании оверлеи с совпадающей геометрией крашу в оттенки зелёного, с не совпадающей в оттенки красного. Игнорирование неизвестных секций: Сделал эту опцию по просьбе carsmaster-а. Если опция включена, то при обнаружении неизвестной мне секции в меше продолжаю открытие модели (только в лог ругаюсь о том, что секция мне неизвестная). Для чего это надо? Есть такая игра, WWII, там очень похожие меши моделей, но в них присутствуют отличные от Ил2 секции. Для чего они нужны я не разбирался, но теперь можно открывать модели и из этой игры. Правда не знаю, как оно будет работать, у меня есть только одна моделька из этой игры и она открывается. Ещё момент - в WWII структура каталогов с материалами и текстурами похоже немного другая и по этому текстуры нормально не подхватываются. Плюс слой два там для bump-а используется, поддержки которого у меня по понятным причинам нет. :) Но в любом случае, можно какие-то модельки теперь попробовать по открывать. Может пригодится для чего. Ну и о логе, о котором чуть выше обсуждалось. Решил его не приделывать. Можно и без этого обойтись, просто нет свободного времени абсолютно. Можно получить весь лог так: Правая кнопка на окне лога ->В меню "выделить всё"->"Копировать"->Открыть Блокнот->"Вставить"->Профит. :) Вроде всё. Совершенно точно о чём-то забыл по причине длинной паузы. :) Надеюсь, что по ходу дела вспомниццо. :) Версия 1.02 (билд 311) UPD: вот, вспомнил уже! :) В WWII текстуры хоть и имеют расширение tga, но по факту там dds. Чтоб они нормально подхватывались их нужно в tga конвертить. |
ОГРОМНОЕ СПАСИБО за очередное обновление :beer:
С моделями из Второй Мировой теперь гораздо проще работать будет! Развязывает руки и вдохновляет на кучу идей!!!:):):) |
Спасибо большое. Но вопрос внятного открытия в максе открыт...
|
Цитата:
|
Цитата:
|
Цитата:
|
Цитата:
Ну и ещё "группы сглаживание" проблемой являются. Автоматически по нормалям нормально группы сглаживания не восстановить, всё равно придётся их руками править и переназначать. И автоматическое их формирование может, как раз, очень сильно осложнить последующую их правку в Максе, придётся делать много лишней работы и в итоге будет проще всё переделать с нуля. Иловские меши информацию о группах сглаживания в себе не содержат от слова вообще. Увы. В остальном - как не спецу в Максе мне трудно понять что под словом "ошибка" вообще подразумевается. В программировании это понятие имеет вполне конкретный смысл. :) |
Цитата:
|
Юра как всегда Велик и Грандиозен! Спасибо огромное за твой Труд!!!
|
Цитата:
|
О эта прога даже анимацию читает солдат круто.
https://pp.vk.me/c636330/v636330949/...fp4NPmHfVA.jpg Вот и анимацию играть можно красота. |
Как перегнать эту анимацию в макс?
1 кадр сохраняет только. |
Пока ни как. Без понятия, как фреймы перегоняются в Макс/Блендер. Фактически у нас в меше может быть N кадров. Как их сохранять, чтоб редактор увидел их как единый объект с множеством кадров я не знаю. Предполагаю, что для сохранения подобных моделей выбранный формат должен поддерживать соответствующую возможность. Obj точно это дело напрямую не поддерживает. Собственно по этому и сохраняю только первый фрейм.
|
Цитата:
|
Цитата:
Итак. В Максовской/Блендеровской модели информация о группах сохраняется в файле (в 3ds, obj и т.д.). Соответственно, когда мы загружаем модельку, то имеем эту информацию в наличии и у нас нет проблем. Что с этими группами происходит? В соответствии с параметрами группы нормали при загрузке и всех манипуляциях с группами пересчитываются, ну и за счёт этого мы можем сглаживать рёбра и т.д. Вам это всё знакомо и понятно. Но! При конвертации в Иловский меш пишутся уже предрассчитанные нормали! Во-первых, в этом случае загрузка более быстрая, ибо нам не надо их пересчитывать. А во-вторых - в игре не предполагается модификация моделей и информация о группах игре вообще не нужна. Вот по этому с группами сглаживания при обратном экспорте всё так печально. Информации о группах в иловском меше просто нет за ненадобностью. Печально ещё и то, что надёжно восстановить группы по имеющимся нормалям очень сложно. Вернее, результат на сложных моделях будет очень не аккуратный и проще руками группы назначить, чем править сделанное автоматом. Проблема в том, что нужно по всем полигонам проводить множественные сортировки и вычисления общих для них параметров. А это натыкается на сложные случаи, когда из-за конструкции модели возникают неоднозначности в принятии решения. На простых поверхностях эти алгоритмы работают, но даже на простой поверхности можно изобразить случай, когда будет сложно принять решение о том, к какой группе полигон принадлежит. Может я найду в себе силы сделать группировку как фичу, задача сама по себе интересная и мне такие нравятся. :) Но обещать сделать это точно не буду, ибо это потребует много свободного времени. |
3ds не сохраняет группы сглаживания.
|
Цитата:
|
Цитата:
|
Цитата:
Если вы о том, что Иловские меши при записи в 3ds не содержат групп, так об этом я несколько раз говорил, и даже на этой странице есть объяснение почему это именно так. 3ds поддерживает родные фичи Макса, он родной для него. |
Цитата:
[Vertices_Frame0] -0.308715 -0.308715 0.0 0.0 0.0 -1.0 -0.308715 0.308715 0.0 0.0 0.0 -1.0 0.308715 0.308715 0.0 0.0 0.0 -1.0 0.308715 -0.308715 0.0 0.0 0.0 -1.0 -0.308715 -0.308715 0.617431 0.0 0.0 1.0 0.308715 -0.308715 0.617431 0.0 0.0 1.0 0.308715 0.308715 0.617431 0.0 0.0 1.0 0.308715 0.308715 0.617431 0.0 0.0 1.0 -0.308715 0.308715 0.617431 0.0 0.0 1.0 -0.308715 -0.308715 0.617431 0.0 0.0 1.0 -0.308715 -0.308715 0.0 0.0 0.0 -1.0 0.308715 -0.308715 0.0 0.0 0.0 -1.0 0.308715 -0.308715 0.617431 0.0 0.0 1.0 0.308715 -0.308715 0.617431 0.0 0.0 1.0 -0.308715 -0.308715 0.617431 0.0 0.0 1.0 -0.308715 -0.308715 0.0 0.0 0.0 -1.0 0.308715 0.308715 0.0 0.0 0.0 -1.0 0.308715 0.308715 0.617431 0.0 0.0 1.0 0.308715 0.308715 0.617431 0.0 0.0 1.0 0.308715 -0.308715 0.617431 0.0 0.0 1.0 0.308715 0.308715 0.0 0.0 0.0 -1.0 -0.308715 0.308715 0.0 0.0 0.0 -1.0 -0.308715 0.308715 0.617431 0.0 0.0 1.0 -0.308715 0.308715 0.617431 0.0 0.0 1.0 0.308715 0.308715 0.617431 0.0 0.0 1.0 0.308715 0.308715 0.0 0.0 0.0 -1.0 -0.308715 0.308715 0.0 0.0 0.0 -1.0 -0.308715 -0.308715 0.617431 0.0 0.0 1.0 -0.308715 -0.308715 0.617431 0.0 0.0 1.0 -0.308715 0.308715 0.617431 0.0 0.0 1.0 -0.308715 0.308715 0.0 0.0 0.0 -1.0 //31 verts Это для 1 меша для 2 их будет 2 со своими координатами. Только имя будет Vertices_Frame0 Vertices_Frame1 и т.д но это без лодов и т.д Я так пробывал делать анимацию пехоте только у меня там 3 кадра было. Vertices_Frame0 Vertices_Frame1 Vertices_Frame2 соответсвенно. Надо как то сделать чтобы программа могла разбить их на отдельные меши и сохранить пусть даже по отдельности как 1 кадр. |
Frame134 у пилота количество можпо текстовиком в бинарнике посмотреть.
|
Цитата:
|
Цитата:
Цитата:
|
Цитата:
|
Цитата:
Есть ещё один аспект. Многофреймовых мешей в игре раз-два, и обчёлся. У нас: парашют, два парашютиста, и по паре моделек солдатиков на каждую сторону (если я правильно помню). Всё. Во многом и по этой причине я эту тему задвинул на второй план. Ибо, образно говоря, "визгу много, а шерсти мало". :) Вот так дела обстоят с этим делом. |
Цитата:
|
Цитата:
Я могу понять еще ява скрипт в игре, но как модели писать я не знаю. |
Цитата:
Я так из нового макса в 5 перегоняю карты для игры , пробывал obj но он криво модель передает, а fbx 5 не читает нормально. |
Цитата:
В 3ds есть один очевидный минус, именно в нашем случае. Он не сохраняет предвычисленные нормали, только группы сглаживания. Из-за этого я у себя и не могу в нём сохранение организовать. Хотя изначально именно на него и ориентировался. А так-бы проблем не было, в нём и с текстурными матрицами всё хорошо, и многофреймовые меши можно было бы сохранять, и масштабирование и т.д., всё, что у ила есть в меше можно было бы аккуратно завернуть. Но, увы. Групп у нас нет, а нормали в него не завернуть. |
Будет длинный пост с хотелками и пожеланиями по программе.
Использую данную программу как замечательный вьюер моделей при подготовке и отладке к вживлению в игру моделек из макса. 1)Прошу увеличить максимальную дистанцию отъезда камеры с 1000м до очень большого числа. Возможно это число как-то прописывать в конфиг. Предел нужен очень большой. Для обычных танчиков-корабликов 1000м уже не хватает, им нужно не меньше 2км а то и 5км. А если делать объекты для карт типа гор, терриконов, дамб и прочего большого то им на дальние лоды нужны дистанции от 10км аж до 50км. Те очень желательно этот верхний предел задавать через конфиг. 2)Нужен счётчик полигонов теней в лодах, по аналогии с имеющимся счётчиком треугольников мешей. Мешконвертер выдаёт такую информацию. Тени считать и оптимизировать тоже приходится. Так что тоже нужная фишка. 3)Переключалка FOV камеры. Я так понимаю сейчас на камере используется FOV=90 градусов. Но в игре есть возможность зума до 30. Хотелось бы посмотреть на лоды с больших дистанций в режиме игрового зума для точного подбора дистанции переключения лодов. 4)Переключалка автоматической смены лодов по дистанции. Нужен чекбокс при включении которого, при увеличении дистанции камеры происходило бы автоматическое переключение лодов в соответствии с дистанциями видимости лодов прописанных в мешах. Такая фишка присутствует в просмотрщике мешей от 1С. Но во-первых эта программа не доступна массам, во-вторых этот режим нужен не всегда, только при проверке корректности дистанции переключения лодов, и в обычной работе его использовать нет необходимости. Вот поэтому и нужно реализовать через чекбокс, а не на постоянной основе. 5)Сделать кнопку "Пауза" для рендера. А то, при запущенном 3DMax и работающей программе, 3DMax сильно подтормаживает во вьюпорте, и программу NB79 приходится закрывать. 6)Ещё можно при клике на меш в списке лодов выводить в белое окошко с текстом (типа консоли которое, куда выводится информация о мат-файлах и текстурах при загрузке hier.hima) информацию о материалах конкретного лода. Нужно для проверки правильности назначения лодам материалов. А то иногда случаются ситуации, что на дальние лоды попадает материал от первых лодов. И вместо одного материала допустим Skin1p лод использует сразу два материала Skin1o и Skin1p. Альтернативная реализация как-то подсветить материалы каждый своим цветом, чтобы чужеродный материал сразу выделялся на фоне остального. Для кабин данная фишка бессмысленна, а вод для моделек танков, самолётов, кораблей пригодится. 7)Насчёт конвертации моделек в максо-понимаемый формат... Если будете такую тему делать, то ориентируйтесь в первую очередь на формат FBX. И во-вторую на формат MD5Mesh. Формат FBX не имеет проблем при импорте в макс, кроме масштабирования. Там нет возможности промасштабировать модель кроме как выбрать из списка предложенные варианты. Поэтому коэффициент масштабирования при экспорте в формат FBX желательно предусмотреть. Запасной вариант это формат MD5Mesh. Его можно напрямую через плагин загнать в макс, но обычно (вернее совсем) я так не поступаю, а конвертирую его в FBX и уже FBX загоняю в макс. Т.к. формат md5mesh имеет ряд подводных камней его использование менее предпочтительно. Ещё пожелания по этому вопросу. Не заморачивайтесь с группами сглаживания, не тратьте на это время. Для корректного импорта моделек из макса группы сглаживания приходится вручную расставлять, ни один известный мне конвертер из ила в макс не восстанавливает эти группы со 100% точностью. И их всё равно приходится переделывать. Про группы забудте. Тем более при экспорте через формат FBX есть возможность вообще не использовать информацию о сглаживании. Про мапинг. Не трогайте мапинг. Не зеркальте, не флипайте, не поворачивайте, не сдвигайте его. Все операции с мапингом можно и нужно проводить только через инструменты 3DMax. А так я вашу программу очень часто использую и считаю весьма нужной и удобной. Но пока только как вьюер и отладчик. |
К сожалению у меня опять начались проблемы с глазами. Катаракта. Операцию по замене хрусталиков уже делал, но опять помутнения. :( Сейчас работать практически не могу. Не знаю сейчас когда смогу вернуться к теме. Простите!
|
Цитата:
|
Спасибо!
|
Текущее время: 00:05. Часовой пояс GMT +3. |
Powered by vBulletin® Version 3.8.4
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd. Перевод: zCarot