Форум программистов, компьютерный форум, киберфорум
3D моделирование
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск  
 
 
Рейтинг 4.82/11: Рейтинг темы: голосов - 11, средняя оценка - 4.82
1 / 0 / 0
Регистрация: 17.01.2017
Сообщений: 228

Конвертация SLDPRT в obj + mtl

29.06.2024, 14:57. Показов 4693. Ответов 55
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здравствуйте.
Помогите конвертировать файл в obj + mtl
Вложения
Тип файла: zip 111111.zip (212.1 Кб, 6 просмотров)
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
29.06.2024, 14:57
Ответы с готовыми решениями:

Есть функция которая считывает модельку из .obj формата, как к этому делу прикрутить материалы (.mtl файл)
Добрый день! Есть функция которая считывает модельку из .obj формата, подскажите пожалуйста как к этому делу прикрутить материалы (.mtl...

Преобразование OBJ + MTL в GIF
Доброго времени! Требуется легковесный софт позволяющий без лишних телодвижений преобразовать модель OBJ + MTL во вращающийся GIF вариант...

Сконвертировать проект в формат .obj и .mtl для EasyEDA
Здравствуйте. Мне нужно получить два файла .obj и .mtl из проекта КОМПАС-3D для модели детали в программе EasyEDA. В .obj...

55
9986 / 2958 / 497
Регистрация: 05.10.2013
Сообщений: 8,088
Записей в блоге: 242
01.07.2024, 14:52
Лучший ответ Сообщение было отмечено 8Observer8 как решение

Решение

Студворк — интернет-сервис помощи студентам
Инструкция назначения материалов для текущей версии Blender 4.1
  • Переключаемся в режим "Edit Mode" клавишей "Tab"
  • Переключаемся на режим выделения фейсов на клавишу "3"
  • Теперь кликом можно выделять отдельные фейсы, а если зажимать Shift во время кликов, то можно выделять несколько фейсов. Повторным кликом с нажатым Shift на выделенный фейс можно снять выделение фейса:

    Название: bd50cdb55a20caf5a6c9fa8c160fcddff56f42ca.png
Просмотров: 116

Размер: 34.6 Кб
  • Выделяем один фейс башни и нажимаем Ctrl+L, чтобы выделить всю башню:

    Название: d1460cbf5814dea8acb44f76b46e3a8a94abc555.png
Просмотров: 113

Размер: 39.9 Кб
  • Переходим на вкладку материалов на боковой панели справа:

    Название: 024851816a64c5e2d84a7d9eb543cde9c51c6b56.png
Просмотров: 112

Размер: 5.1 Кб
  • Создаём материал на кнопку "New":

    Название: d700c5f72c76fd3b8b4ba76df06cd0771ea4e54d.png
Просмотров: 114

Размер: 4.5 Кб
  • Нажимаем кнопку "Assign", чтобы назначить материал к выделенным ранее фейсам башни:

    Название: ad01fa1f92c43d95fe748884580ce7676b5209c6.png
Просмотров: 109

Размер: 7.6 Кб
  • Выбираем цвет материала, нажав на следующую область в секции "Surface" > "Base Color":

    Название: 4673b51619c237c29050da41486693d91c90156f.png
Просмотров: 109

Размер: 9.8 Кб


  • В верхнем правом углу кликаем на кнопку "Material Preview", чтобы видеть цвета материалов на модели:

    Название: 9b2d980cc92813c3bb7afef7d7708b200d90f76f.png
Просмотров: 112

Размер: 18.0 Кб
  • На данный момент материал применился не только к башке, но и ко всей модели:

    Название: ddbde5b930e601af321a32af75488dad21a3d6f7.png
Просмотров: 109

Размер: 53.2 Кб
  • Кликаем по одному из фейсов ходовой части, чтобы выделить его:

    Название: d48ae9a832da2125174a7ceef7e9193736002685.png
Просмотров: 108

Размер: 37.3 Кб
  • Нажимаем Ctrl+L, чтобы выделить всю ходовую часть и корпус танка:

    Название: b1e57b0448bc7a11b6c6e2f501468ac63b3b8fa5.png
Просмотров: 103

Размер: 53.1 Кб
  • Создаём новый материал, нажав кнопку "+" и кнопку "New":

    Название: d2dce38fa6bee70952a79d2ebf38f0118c65168e.png
Просмотров: 106

Размер: 8.3 Кб

    Название: 20d65956db8ab6f1e78dcf0dfb47b3849b2e759c.png
Просмотров: 111

Размер: 7.3 Кб
  • Нажимаем кнопку "Assign", чтобы назначить материал к выделенным ранее фейсам ходовой части и корпуса танка:

    Название: 55174d4d057d86205791e45c876d6be1cc8d78d8.png
Просмотров: 111

Размер: 9.7 Кб
  • Выставляем цвет, как это делали ранее для башни. Повторяем действия выше для люка. Результат:

    Название: d878fd393a0aeafbe91b206507b22da7883a55f3.png
Просмотров: 109

Размер: 41.5 Кб

Миниатюры
0
9986 / 2958 / 497
Регистрация: 05.10.2013
Сообщений: 8,088
Записей в блоге: 242
01.07.2024, 15:16
Экспорт модели в OBJ + MTL из Blender 4.1
  • Выделите модель в режиме "Object Mode":


  • Выберите в меню: "File" > "Export" > "Wavefront (.obj)"
  • В появившемся диалоговом окне поставьте галочку "Selected Only":

    Название: e8a79a7f66203518fd4c30f497be42d3b855dde3.png
Просмотров: 114

Размер: 5.5 Кб
  • Нажмите кнопку "Export Wavefront OBJ" справа внизу:

    Название: f5ceb0a2729489d4a8e51f56639a87339dbe0afd.png
Просмотров: 112

Размер: 4.3 Кб
  • В результате получилось два файла:

    Название: d213e1eb3a522352d0b7a38a76dd0fd07e5e345d.png
Просмотров: 112

Размер: 3.0 Кб

Миниатюры
0
01.07.2024, 15:30

Не по теме:

Цитата Сообщение от Igor3D Посмотреть сообщение
Как Blender или др приложения это делают? (найти всю башню по фейсу)
Исходники Blender лежат в свободном доступе на GitHub: https://github.com/blender Можете найти этот алгоритм в исходниках.

0
9986 / 2958 / 497
Регистрация: 05.10.2013
Сообщений: 8,088
Записей в блоге: 242
01.07.2024, 15:45
Экспорт в Collada (.dae) и просмотр модели в онлайн просмоторщик моделей и анимаций Three.js Editor

Мне больше нравится формат Collada (.dae), потому что он имеет XML формат, который легко парсить с помощью встроенных средств парсинга различных языков и фреймворков. Например, парсер XML есть в JavaScript и Qt, а также он есть в C#, Java и т.д. Этот формат лёгок для чтения и в нём можно хранить не только статические данные, но и анимации созданные в Blender с помощью матриц трансформаций (костей). Формат OBJ/MTL не может хранить анимаций. И я не нашёл способа как файл MTL закинуть в онлайн просмоторщик моделей и анимаций: https://threejs.org/editor/ Удобный просмоторщик, если надо быстро посмотреть как модель выглядит в движке. Он очень быстро запускается. Мышкой можно перетащить модель. В левом верхнем углу можно добавить освещение: "Add" > "Light" > "Directional"

Название: 528fc36d3027804413ec9cf8f5809257885f868e.png
Просмотров: 109

Размер: 12.8 Кб
0
01.07.2024, 15:59

Не по теме:

Цитата Сообщение от 8Observer8 Посмотреть сообщение
Исходники Blender лежат в свободном доступе на GitHub: https://github.com/blender Можете найти этот алгоритм в исходниках.
Лучше понимать что/как приложение делает, а не тупенько "запоминать бубочки" что надо нажимать :)

0
9986 / 2958 / 497
Регистрация: 05.10.2013
Сообщений: 8,088
Записей в блоге: 242
01.07.2024, 16:03
Важно, что в Collada (.dae) намного легче разобраться, как хранить данные, в том числе матрицы для анимаций, чем, как это сделать в glTF (это JSON формат). В glTF я только разобрался, как парсить статические данные, но не анимации: https://plnkr.co/edit/BYseznZdUBTrUmRa?preview (это демка парсинга glTF 2.0 для рисования на чистом WebGL 2.0). Конечно, если вы используете готовый движок, то вам не нужно разбираться в формате, тогда можете брать glTF

Вложения
Тип файла: zip Loading a cube from gltf 2.0. WebGL, JavaScript.zip (3.3 Кб, 3 просмотров)
0
01.07.2024, 16:37

Не по теме:

Цитата Сообщение от Igor3D Посмотреть сообщение
Лучше понимать что/как приложение делает, а не тупенько "запоминать бубочки" что надо нажимать :)
Жизни не хватит, чтобы доскональное разобраться, как работают все алгоритмы Blender. За 30 лет развития Blender там столько алгоритмов реализовали. Не представляю зачем у себя в приложении на OpenGL или в игровом движке реализовывать выделение отдельных мешей. Не могу придумать такую практическую задачу. Ведь редактирование модели можно сделать в Blender. Зачем это делать в движке? Лучше потратить время на следующие более приоритетные шаги: 1) Импорт танка в движок 2) Добавление коллайдера к танку и к земле с помощью физического движка 3) Реализация движения танка по земле с помощью клавиш 4) Добавление препятствия для танка 5) Стрельба из танка путём добавления коллайдеров к снарядам и выставление скорости снаряда 6) Детектирование пересечений коллайдеров снарядов с мишенями 7) Добавление мультиплеера, то есть перенос физики на сервер 8) Реализация предсказаний клиента через добавление физики на сторону клиента и т.д.

0
1977 / 833 / 115
Регистрация: 01.10.2012
Сообщений: 5,131
Записей в блоге: 2
01.07.2024, 18:05
Цитата Сообщение от 8Observer8 Посмотреть сообщение
Жизни не хватит, чтобы доскональное разобраться, как работают все алгоритмы Blender.
Заметим что "подсмотреть что-то в Blender'е" - один из худших рецептов/советов, обычно даваемых теми кто сам этого ни разу не делал. После первой же (даже робкой) попытки "взгляды на жизнь" быстро изменятся

Выделить всю башню по фейсу - вовсе не достижение Blender'а, это типовой/базовый прием моделирования: построить ребра. Это простая структура, напр
C++
1
2
3
4
struct Edge {
 int v0, v1;  // индексы вертексов этого ребра
 int f0, f1;  // индексы фейсов шарящих это ребро. f1 = -1 значит "(открытый) край поверхности"
};
Когда ребра построены, "найти башню" становится очень простой задачей, как и многое другое. В общем, (фундаментальные) основы лучше знать

Цитата Сообщение от 8Observer8 Посмотреть сообщение
Лучше потратить время на следующие более приоритетные шаги:
И дальше "планов громадье" Отрадно видеть инициативу и желание работать. Но что будет если "копнуть" эту затею с танком? В движке есть управление машинами (vehicles). Нужно скормить движку колеса и кузов, это простые прокси шейпы, на рендере могут быть подставлены объекты любой сложности. Управление = газ/тормоз/руль (угол поворота). С "реализмом" все хорошо.

И вот что-то мне подсказывает что заниматься этим Ваня не будет. Найдутся "более приоритетные" задачи, что-то с сетью (всегда любимое место бездельников) и.т.п. И опять будет масса планов, что, вообще-то хорошо, но ..
0
9986 / 2958 / 497
Регистрация: 05.10.2013
Сообщений: 8,088
Записей в блоге: 242
01.07.2024, 19:05
Цитата Сообщение от Igor3D Посмотреть сообщение
Но что будет если "копнуть" эту затею с танком? В движке есть управление машинами (vehicles). Нужно скормить движку колеса
У модели автора темы нет колёс и это очень хорошо. Это парящий фаталистичный танк. Моделька low poly. Явно она игровая. Это не попытка сделать модель реального танка, так как здесь 4 пушки и специфичная ходовая часть. Начинать надо всегда с простого и допиливать это простое по мере необходимости. Корень безделья - начинать делать со сложного. Придумать, что нужна реалистичная модель движения гусениц и т.д. Здесь же можно, для начала, обойтись сферическим коллайдером, а хитбокс, в виде кубойда, можно добавить позже.

В следующей WebGL-демке с Bullet Physics (управление WASD) заменю модель Марио на танк автора темы и будет норма для начала



Миниатюры
0
9986 / 2958 / 497
Регистрация: 05.10.2013
Сообщений: 8,088
Записей в блоге: 242
01.07.2024, 22:54
Всё-таки вам надо разбираться с UV-развёрткой, потому что текстуры дают больше возможностей по разукрашиванию моделей, чем одноцветный материал, потому что в роли текстуры можно использовать рисунки. Для большего понимания сделал Unwrap стены. Удалил нижнюю грань стены, потому что эту грань не видно. Нанёс швы на рёбра стены, как показано на рисунке:



Стена разворачивается, как разобранная коробка:



Миниатюры
0
9986 / 2958 / 497
Регистрация: 05.10.2013
Сообщений: 8,088
Записей в блоге: 242
02.07.2024, 00:21
Следующий шаг после текстурирования - импорт в движок и движение танчика с помощью клавиатуры. Физический движок обеспечит непрохождение через стены.

Демка с танчиком в браузере (управление WASD, либо стрелки)

На сферическом коллайдере танчик скользит и поворачивает, а параллелепипед для столкновений со стенами:



Миниатюры
0
9986 / 2958 / 497
Регистрация: 05.10.2013
Сообщений: 8,088
Записей в блоге: 242
02.07.2024, 00:47
Я отгрузил WASM демку на itch, потому что хостинг Netlify не всем известен и ему могут не доверять
0
1 / 0 / 0
Регистрация: 17.01.2017
Сообщений: 228
02.07.2024, 07:36  [ТС]
Это не танк. Это транзистор с радиатором.
0
9986 / 2958 / 497
Регистрация: 05.10.2013
Сообщений: 8,088
Записей в блоге: 242
02.07.2024, 11:44
Смешно и стыдно одновременно. Я 5 лет изучал работу транзисторов в универе и не признал. Главное, я столько раз писал: пушки, башня, люк, корпус, ходовая часть танка и вы меня ни разу не поправили. Я ещё подумал, какой странный люк позади башни танка, а это оказывается болтик:





Миниатюры
0
9986 / 2958 / 497
Регистрация: 05.10.2013
Сообщений: 8,088
Записей в блоге: 242
02.07.2024, 12:13
Мне непонятно, почему у вас получается такая странная развёртка:

Скриншот


Я загрузил модель в Blender 4.1.1. Убедился, что Scale = 1 в режиме "Object Mode". Это можно сделать, нажав клавишу N на клавиатуре, убедитесь, что у вас тоже Scale = 1:



Если, какой-то из компонентов Scale не равен 1, то примените Scale: "Object" > "Apply" > "Scale":



Я сделал Unwrap без швов и получилось три отдельные развёртки. Слева направо: радиатор, транзистор и болтик - маленькая развёртка справа внизу:




Миниатюры
0
1 / 0 / 0
Регистрация: 17.01.2017
Сообщений: 228
02.07.2024, 13:02  [ТС]
Смешно и стыдно одновременно. Я 5 лет изучал работу транзисторов в универе и не признал. Главное, я столько раз писал: пушки, башня, люк, корпус, ходовая часть танка и вы меня ни разу не поправили. Я ещё подумал, какой странный люк позади башни танка, а это оказывается болтик:
Я думал Вам так удобнее называть объект)
Можно Вас попросить прикрепить файл obj и mtl в цветах, как на моей картинке.
Миниатюры
Конвертация SLDPRT в obj + mtl  
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
02.07.2024, 13:02

Конвертация файлов из IGS, STP, SLDPRT в DirectX
Собственно вопрос в шапке. Может завалялась у кого - нибуть утилитка или кусок кода с примером конвертации из igs, stp или sldprt...

Конвертация SPT в OBJ
Ребята помогите, нашёл в инете модель дерева, а оно в SPT формате и юнити не открывается. Как его конвертировать в Fbx или Obj?

Объектные файлы *.obj, *.o - они случайно не кроссплатформенные? Если нет, то реальна ли конвертация?
Объясню подробнее, о чем я. Пишем простой код на си, без всяких платформо- и компиляторозависимых функций #include <stdio.h> ...

Что за ерунда с OBJ файлами. moc_in.obj:-1: ошибка: LNK2005: "int a" (?a@@3HA) already defined in in.obj
Привет... Мучаюсь с проектом... Создал тестовый. Просто шаблонный консольный проект, добавил по аналогии с основным проектом класс, добавил...

Пересохранить файл *.sldprt в *.dwg
Как или с помощью чего открыть и пересохранить файл *.sldprt в файл *.dwg?


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
56
Ответ Создать тему
Новые блоги и статьи
Кредитный калькулятор
Maks 05.08.2026
Решение задачи по прикладной информатике средствами 1С. Задача: Напишите приложение-калькулятор, которое помогает рассчитывать параметры кредита для аннуитетного и дифференцированного видов. . .
У нас сейчас поговорку "Опять 25" нужно переделать на "Опять +35".
kumehtar 04.08.2026
С ностальгией вспоминаю времена моего детства, когда у нас и правда +25 - была максимальная температура летом. Раньше +25 °C реально казались вершиной жары, когда можно было весь день пропадать на. . .
Как ИИ начал спорить и врать (возможно почуяв опасность для себя от индустрии - уход от электроники).
Hrethgir 04.08.2026
Недельный диалог, на фоне событий с НПЗ. Да, из спирта можно получать бензин, и это не сложно. Но потом в схеме я решил избавиться от насоса, при этом полностью сделав контроль подачи спирта в. . .
Термопринтер QR701
Argus19 03.08.2026
Термопринтер QR701 Купил два термопринтера QR701. На сэлф-тесте написано: Language: PC936 (GB18030). Что означает, что принтеры могут печатать только латиницу и китайские иероглифы. Так же. . .
Создание формы заимствованного документа
Maks 03.08.2026
Задача: Необходимо создать собственную форму заимствованного документа. На форме должен быть реквизит "Покупатель", а также табличная часть со следующими реквизитами: - Расчетный счет покупателя. . .
Задача предоставления скидок покупателям
Maks 03.08.2026
Задача: В документе "Продажи" необходимо реализовать функционал предоставления скидок покупателям. Скидка должна автоматически рассчитываться и подставляться в соответствующее поле при выборе. . .
Почему SEO не начинается с ключевых слов: что проверить до написания текстов
Neotwalker 01.08.2026
Когда владельцу сайта предлагают заняться SEO, первым шагом часто становится сбор запросов и написание текстов. Логика кажется понятной: 1. Находим ключевые слова. 2. Добавляем их на. . .
Знание — сила: Доктрина интенциональности знаний, углубление в формулу
Hrethgir 01.08.2026
https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11957&stc=1&d=1785567302 Знаменитый афоризм Фрэнсиса Бэкона «Знание — сила» (Scientia potentia est) в массовой культуре принято понимать. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru