AviaSkins.Forums

Вернуться   AviaSkins.Forums > Основные разделы > Ил-2 Штурмовик: Забытые Сражения

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
Старый 03.09.2015, 15:27   #1
ГРОХОТ
Местный
 
Регистрация: 23.09.2012
Сообщений: 721
По умолчанию NB79 Tool - разработка)

Цитата:
Сообщение от NB79 Посмотреть сообщение
Однако, "Перспективы".
Вот такое хреновое лет
ГРОХОТ вне форума   Ответить с цитированием
Старый 13.09.2015, 22:46   #2
NB79
Местный
 
Регистрация: 12.07.2015
Сообщений: 417
По умолчанию

Не успел всё доделать, очень много работы и очень мало свободного времени.

Пока сделал частичный экспорт в obj. Пока не экспортируются коллизии, хуки и материалы. Не хватило сегодня времени всё допилить.

В аттаче экспортнутые лоды и тени для той модели, которую мне для экспериментов присылали (Ki-43-II(Multi1)). Материалы для неё взял из присланного мне архива. Посмотрите, правильно ли экспортнулось и не сбит ли маппинг.

По именам. L0 - нулевой лод, L1 - следующий, и так далее. SH в конце имени для теней. Посмотрите также, нормально ли видно имена в Максе, не режутся ли?

Кстати, а как в Максе хуки выделяются? В Иловском меше у нас просто локальная матрица (точка с векторами поворота). В obj нет такого понятия, на месте хука при экспорте надо приделывать какой-то объект и поворачивать и сдвигать его по данным из матрицы. Можно, на пример, кубик, можно линию из точки приделать. Как должно быть правильно?
Вложения
Тип файла: rar cf_d0_test.rar (58.8 Кб, 310 просмотров)
NB79 вне форума   Ответить с цитированием
Старый 13.09.2015, 22:54   #3
carsmaster
Пытающийся полететь
 
Аватар для carsmaster
 
Регистрация: 21.05.2009
Адрес: Сталинград
Сообщений: 2,408
Отправить сообщение для carsmaster с помощью ICQ Отправить сообщение для carsmaster с помощью Skype™
По умолчанию

Цитата:
Сообщение от NB79 Посмотреть сообщение
...Кстати, а как в Максе хуки выделяются? В Иловском меше у нас просто локальная матрица (точка с векторами поворота). В obj нет такого понятия, на месте хука при экспорте надо приделывать какой-то объект и поворачивать и сдвигать его по данным из матрицы. Можно, на пример, кубик, можно линию из точки приделать. Как должно быть правильно?
Посмотрю ваши примеры.

Вот как хуки выглядят в максе2012 на примере тестового OBJ что я вам давал.

Тоесть просто кубики, все равно ИЛ-2 оперирует центрами кубиков и ориентацией пивотов( осей) в центре этих кубиков
Вложения
Тип файла: rar 11111ый.rar (232.5 Кб, 294 просмотров)
carsmaster вне форума   Ответить с цитированием
Старый 13.09.2015, 23:27   #4
carsmaster
Пытающийся полететь
 
Аватар для carsmaster
 
Регистрация: 21.05.2009
Адрес: Сталинград
Сообщений: 2,408
Отправить сообщение для carsmaster с помощью ICQ Отправить сообщение для carsmaster с помощью Skype™
По умолчанию

Цитата:
Сообщение от NB79 Посмотреть сообщение
Пока сделал частичный экспорт в obj. Пока не экспортируются коллизии, хуки и материалы. Не хватило сегодня времени всё допилить.
в архиве

1. текстовик ошибки при попытке открыть меш конвертером ваш OBJ

2. Два скрина при попытке открыть макс 2012 ваш OBJ. Макс начинает открывать, что-то видит и потом падает на сообщение об ошибке.

3. Третий скрин(странно) ваш obj нормально открылся в конвертере для MSFX

Естественно маппинг не могу глянуть, так как в макс не могу загрузить
Вложения
Тип файла: rar REPORT1.rar (724.4 Кб, 291 просмотров)
carsmaster вне форума   Ответить с цитированием
Старый 13.09.2015, 23:03   #5
NB79
Местный
 
Регистрация: 12.07.2015
Сообщений: 417
По умолчанию

Ого, какие кубы здоровые. А надо ли таке огромные?
NB79 вне форума   Ответить с цитированием
Старый 13.09.2015, 23:15   #6
carsmaster
Пытающийся полететь
 
Аватар для carsmaster
 
Регистрация: 21.05.2009
Адрес: Сталинград
Сообщений: 2,408
Отправить сообщение для carsmaster с помощью ICQ Отправить сообщение для carsmaster с помощью Skype™
По умолчанию

Цитата:
Сообщение от NB79 Посмотреть сообщение
Ого, какие кубы здоровые. А надо ли таке огромные?
Да в принуипе и наверное не надо такие большие.

Я делал модель и она успешно летала уменьшив в максе кубики раза в 4...5 ,только что видны были.

С экспортом из макса в ИЛ-2 экспортером от МАРАЗ тоже при этом проблем не было

Этот большой размер лезет из меш конвертера. Они в нем большие показываются.
carsmaster вне форума   Ответить с цитированием
Старый 14.09.2015, 00:27   #7
NB79
Местный
 
Регистрация: 12.07.2015
Сообщений: 417
По умолчанию

Так, я кажется понял, в чём дело.

Похоже, что плагин для Макса (а так-же MeshConverter), с помощью которого obj открывается, не правильно читает фейсы. В спецификации obj для фейсов обязательным параметром задаются только вершины. Текстурные координаты и нормали опциональны.

Цытата из спецификации:

----------------------------------------------------

f v1/vt1/vn1 v2/vt2/vn2 v3/vt3/vn3 . . .

Polygonal geometry statement.

Specifies a face element and its vertex reference number. You can
optionally include the texture vertex and vertex normal reference
numbers.

The reference numbers for the vertices, texture vertices, and
vertex normals must be separated by slashes (/). There is no space
between the number and the slash.

v is the reference number for a vertex in the face element. A
minimum of three vertices are required.

vt is an optional argument.

vt is the reference number for a texture vertex in the face
element. It always follows the first slash.

vn is an optional argument.

vn is the reference number for a vertex normal in the face element.
It must always follow the second slash.

----------------------------------------------------

А плагин (как и MeshConverter похоже) требует, чтобы нормали были обязательно определены.

А у нас, в Иловском меше, у теней (а ткже и у коллизий) как раз нормалей и нет. Фейс в obj описывается так:

f v1/vt1/vn1 v2/vt2/vn2 v3/vt3/vn3

Если у нас есть и вершины, и тех. координаты, и нормали, то мы имеем заполненными все три группы. Т.е., например так:

f 3129/2979/2979 3106/2956/2956 3134/2984/2984

Если нет текстурных координат, то эта же строчка будет выглядеть так:

f 3129//2979 3106//2956 3134//2984

Если нет нормалей и тек. координат, то эта же строчка будет выглядеть так:

f 3129// 3106// 3134//

Я написал эту часть экспорта в полном соответствии с спецификацией obj. По этому конвертер для MSFX файл и открывает. У меня тоже есть какой-то вьювер, который этот файл тоже нормально открывает. Придётся для Максовского плагина добавлять пустые нормали если их нет у объекта. Это будет раздувать файл.

Кстати, попробовал открыть MeshConverter-ом ваш файл, который с треугольниками для фейсов. MeshConverter падает с такой-же ошибкой. Тот вьювер, что есть у меня, ваш файл тоже отлично открывает. В MeshConverter-е, похоже, работа с OBJ очень криво прописана.

PS: Вот спецификация для obj, так, на всякий случай : http://www.martinreddy.net/gfx/3d/OBJ.spec
NB79 вне форума   Ответить с цитированием
Старый 14.09.2015, 00:35   #8
carsmaster
Пытающийся полететь
 
Аватар для carsmaster
 
Регистрация: 21.05.2009
Адрес: Сталинград
Сообщений: 2,408
Отправить сообщение для carsmaster с помощью ICQ Отправить сообщение для carsmaster с помощью Skype™
По умолчанию

Цитата:
Сообщение от NB79 Посмотреть сообщение
Так, я кажется понял, в чём дело........
Ну вот такая у нас сложная работа-задача = отгадать, понять полет мыслей создателя ИЛ-2
carsmaster вне форума   Ответить с цитированием
Старый 14.09.2015, 00:52   #9
Sita.
Местный
 
Регистрация: 12.04.2009
Сообщений: 5,057
По умолчанию

ох ёлки... как всё серьёзно то тут... круто!!! WTG!))
__________________
ищется идейный Программер )
Sita. вне форума   Ответить с цитированием
Старый 14.09.2015, 00:56   #10
NB79
Местный
 
Регистрация: 12.07.2015
Сообщений: 417
По умолчанию

Так тут, как раз, всё просто.

Тени, как и коллизии, объекты невидимые. Соответственно, им ненужны ни текстуры, ни нормали. По этому в Иловский меш для них нормали и не пишутся. В итоге - файл получается заметно меньше по размеру. Авторы вообще, очень много для уменьшения размеров данных сделали. На мой взгляд, даже излишне много. В некоторых местах можно было вполне без некоторых трюков обойтись. Всё равно данные потом жмутся. На выходе всё равно разница будет не значительной. А вот время загрузки этих данных возрастает иногда значительно. Потому что мы сначала данные распаковываем, потом ещё и дополнительно преобразовываем. А эти преобразования сидят в циклах. И в результате время загрузки растёт линейно с размером и кол-вом данных. А данных у нас немало.
NB79 вне форума   Ответить с цитированием
Старый 14.09.2015, 01:58   #11
The Radge
Местный
 
Регистрация: 27.02.2014
Адрес: г. Балашиха
Сообщений: 994
Отправить сообщение для The Radge с помощью Skype™
По умолчанию

Спасибо огромное за разработку, NB79
Пока утилиту не "пробовал", но подчеркну, что очень важно будет сохранение групп сглаживаний при экспорте .msh => .3ds, чтобы потом не мучится с ними с максе (очень затягивает разработку модификаций 3D).
Удачи в совершенствовании и релизах утилиты
__________________

_____________________________

Я ВКонтакте - https://vk.com/the_radge
The Radge вне форума   Ответить с цитированием
Старый 14.09.2015, 15:25   #12
Pumping_Noise
нужно больше чамфера!
 
Аватар для Pumping_Noise
 
Регистрация: 30.03.2014
Адрес: Харьков
Сообщений: 774
Отправить сообщение для Pumping_Noise с помощью Skype™
По умолчанию

Цитата:
Сообщение от The Radge Посмотреть сообщение
Спасибо огромное за разработку, NB79
Пока утилиту не "пробовал", но подчеркну, что очень важно будет сохранение групп сглаживаний при экспорте .msh => .3ds, чтобы потом не мучится с ними с максе (очень затягивает разработку модификаций 3D).
Удачи в совершенствовании и релизах утилиты
формат .3ds в принципе не сохраняет сглаживание. Из любого формата можешь прям в максе экспортнуть в .3ds и открыть. Сглаживания не будет. Меня больше интересует хиер хим. Т.е. открыть модель целиком в максе, повернуть все по-человечески и экспортить в Ил. Открывал кокпит ЛА5. Приборная панель повернута вправо, кресло влево, педали вообще сзади.
Pumping_Noise вне форума   Ответить с цитированием
Старый 14.09.2015, 16:13   #13
The Radge
Местный
 
Регистрация: 27.02.2014
Адрес: г. Балашиха
Сообщений: 994
Отправить сообщение для The Radge с помощью Skype™
По умолчанию

Цитата:
Сообщение от Pumping_Noise Посмотреть сообщение
формат .3ds в принципе не сохраняет сглаживание.
А какие сохраняют без наличия других проблем?

Может тогда есть возможность сразу конвертнуть в .max?
__________________

_____________________________

Я ВКонтакте - https://vk.com/the_radge
The Radge вне форума   Ответить с цитированием
Старый 14.09.2015, 16:17   #14
Pumping_Noise
нужно больше чамфера!
 
Аватар для Pumping_Noise
 
Регистрация: 30.03.2014
Адрес: Харьков
Сообщений: 774
Отправить сообщение для Pumping_Noise с помощью Skype™
По умолчанию

Цитата:
Сообщение от The Radge Посмотреть сообщение
А какие сохраняют без наличия других проблем?

Может тогда есть возможность сразу конвертнуть в .max?
ндык .obj. В идеале .fbx.

Последний раз редактировалось Pumping_Noise; 14.09.2015 в 20:00.
Pumping_Noise вне форума   Ответить с цитированием
Старый 14.09.2015, 03:14   #15
NB79
Местный
 
Регистрация: 12.07.2015
Сообщений: 417
По умолчанию

Спасибо, конечно, за спасибо! Но!

Есть большая ж. Даже так - Ж! Группы сглаживания в Иловских мешах не сохраняются!

Для того, чтобы ускорить загрузку моделей в игре, иловский меш уже содержит все необходимые, предварительно рассчитанные нормали. Т.е., в таком подходе большой плюс в том, что у тебя все необходимые данные просто грузятся в буферы и отдаются на отрисовку. Не надо на этапе загрузки моделей рассчитывать нормали (а это занимает время и требует определённых манипуляций с данными). Разработчики не ставили целью возможность восстановить модель из своего формата, им это не нужно было, у них модели и так были в наличии. А вот скорость загрузки моделей и простата манипуляций с ними для них важна.

Я уже давно ломаю голову над тем, как можно из имеющихся данных попробовать восстановить группы сглаживания. К сожалению простых и надёжных способов для этого нет. И открытых алгоритмов для этого, похоже тоже нет. Беглым просмотром в гугле я ничего толкового на эту тему не нашел, даже намёков на решение. Придётся придумывать самостоятельно, а это очень трудоёмкая и непростая задача. Не знаю, буду ли я этим вообще заниматься. Было бы хотя бы годное описание мат аппарата для этой задачи, хоть можно было бы оценить во что это выливается. У меня опыта в решении такого рода задач нет. Как я уже говорил, 3Д я раньше вообще не занимался.

Сложность в том, что группа сглаживания задаёт некоторые области для которых нормали должны рассчитываться определённым, заданым автором модели, образом. И группа, как раз, и содержит в себе эти параметры. И в иловском меше, кроме уже рассчитанных нормалей, следов этого определения нет. А нормаль - это уже результат вычислений по заданным в группе правилам. Значит надо проходить по всем полигонам и каким-то образом определять степень искривления поверхности, группировать полученные данные определённым образом и потом пытаться понять является ли некоторая группа полигонов обеденённой в одну группу сглаживания, либо нет. В принципе, наименее сложно выделить группы полигонов (для плоских поверхностей), у которых сглаживание было отключено, у них все нормали принадлежащих им вершин в замкнутой поверхности смотрят в одну сторону и параллельны. Но даже это без гарантии, по крайней мере у меня нет сейчас уверенности в том, что это не будет искажать результат.

Вот такие пироги.

Последний раз редактировалось NB79; 14.09.2015 в 03:30.
NB79 вне форума   Ответить с цитированием
Старый 14.09.2015, 03:16   #16
NB79
Местный
 
Регистрация: 12.07.2015
Сообщений: 417
По умолчанию

Переделал сохранение obj-а (всё ещё не полное, пока надо разобраться что не так с загрузкой). Проверьте, пож., будет Макс его грузить, или нет. И если загрузит, то всё ли нормально.
Вложения
Тип файла: rar cf_d0_test.rar (60.9 Кб, 301 просмотров)
NB79 вне форума   Ответить с цитированием
Старый 14.09.2015, 16:40   #17
Pumping_Noise
нужно больше чамфера!
 
Аватар для Pumping_Noise
 
Регистрация: 30.03.2014
Адрес: Харьков
Сообщений: 774
Отправить сообщение для Pumping_Noise с помощью Skype™
По умолчанию

Цитата:
Сообщение от NB79 Посмотреть сообщение
Переделал сохранение obj-а (всё ещё не полное, пока надо разобраться что не так с загрузкой). Проверьте, пож., будет Макс его грузить, или нет. И если загрузит, то всё ли нормально.
Макс открывает. Материалы, мапинг вроде на месте. Только носом вниз почему-то.
Миниатюры
Нажмите на изображение для увеличения
Название: Безымянный.jpg
Просмотров: 444
Размер:	378.6 Кб
ID:	35757  
Pumping_Noise вне форума   Ответить с цитированием
Старый 14.09.2015, 17:13   #18
carsmaster
Пытающийся полететь
 
Аватар для carsmaster
 
Регистрация: 21.05.2009
Адрес: Сталинград
Сообщений: 2,408
Отправить сообщение для carsmaster с помощью ICQ Отправить сообщение для carsmaster с помощью Skype™
По умолчанию

Цитата:
Сообщение от Pumping_Noise Посмотреть сообщение
Макс открывает. Материалы, мапинг вроде на месте. Только носом вниз почему-то.
При открытии в максе убери галку с Flip Z-Y axiz
carsmaster вне форума   Ответить с цитированием
Старый 14.09.2015, 20:12   #19
yt2
Местный
 
Регистрация: 18.01.2012
Сообщений: 784
По умолчанию

Цитата:
списке материалов в максе материал NULL
если вы пытаетесь из текстового меша сделать корректный импорт в макс, то под этот материал NULL должно резервироваться ID1 в мультиматериале вашей модели. Дефолтный стандартный список материалов для самолётов где-то тут лежал в одной из соседних веток, там NULL Gloss1D0o Gloss1D1o Gloss1D2o Matt1D0o Matt1D1o и т.д., включая материалы для теней Shadow и т.п. Всего в районе 32 материалов для внешек самолётов. В кабинах уже стандартизации, понятно дело нет, там всё зависит от самой кабины. Но желательно всё же резервировать и там материал с ID1 под материал NULL.
Файлы объектов наземки используют обычно только два основных метериала, но и там нужно по-хорошему оставлять для NULL материала ID1.
Я всегда считал, что из текстового меша фейсы с материалом нуль не восстановить, т.к. сами фейсы в текстовый меш не идут, а используются для просчёта нормалей смежных фейсов. Пример на практике применения материала NULL был рассмотрен choisek-ом в теме E13A, где он сглаживал им заслонки радиаторов на капоте.
Также, сколько я видел конвертеров мешей, ни один из них абсолютно корректно группы сглаживания не восстанавливал, и файлик приходилось пилить вручную.
А ну и про масштаб напомню, хорошо бы, чтобы при импорте в макс можно было указывать масштаб вручную, тк в иле принято модели в максе делать в масштабе 20:1.

Цитата:
В итоге - файл получается заметно меньше по размеру. Авторы вообще, очень много для уменьшения размеров данных сделали. На мой взгляд, даже излишне много.
Если вспомнить, что во время появления Ила основным средством его распространения были CD-диски забота разработчиков о размере не покажется излишней.

Последний раз редактировалось yt2; 14.09.2015 в 20:16.
yt2 вне форума   Ответить с цитированием
Старый 14.09.2015, 20:35   #20
carsmaster
Пытающийся полететь
 
Аватар для carsmaster
 
Регистрация: 21.05.2009
Адрес: Сталинград
Сообщений: 2,408
Отправить сообщение для carsmaster с помощью ICQ Отправить сообщение для carsmaster с помощью Skype™
По умолчанию

Цитата:
Сообщение от yt2 Посмотреть сообщение
если вы пытаетесь из текстового меша сделать корректный импорт в макс, то под этот материал NULL должно резервироваться ID1 в мультиматериале вашей модели. Дефолтный стандартный список материалов для самолётов где-то тут лежал в одной из соседних веток, там NULL Gloss1D0o Gloss1D1o Gloss1D2o Matt1D0o Matt1D1o и т.д., включая материалы для теней Shadow и т.п. Всего в районе 32 .....
Ну по крайней мере меш конвертер что-то пытается изобразить-показать при конвертации в 3ds например. Эти(NULL) полигоны ,вроде как лишние на первый взгляд выводятся и в максе видятся.

Хотя с другой стороны, может забить на этот NULL и от безисходности смирится с последующим вручную работой в максе с этим материалом ?

Или как предложил У2 просто забить место в списке материалов для NULL в виде ID1

Последний раз редактировалось carsmaster; 14.09.2015 в 20:38.
carsmaster вне форума   Ответить с цитированием
Ответ


Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 
Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра
Комбинированный вид Комбинированный вид

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход


Текущее время: 01:20. Часовой пояс GMT +3.


Powered by vBulletin® Version 3.8.4
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot
Рейтинг@Mail.ru