Комментарии 13
А есть ли у Компас API которое позволяет создавать модели и работать с ними посностью на языке программирования? И на каком языке это API?
0
Конечно, в КОМПАСе есть API, на хабре даже уже есть небольшой цикл статей по описанию работы с API на C++ habr.com/company/ascon/blog/350516
А так можно на Delphi, на C#, на Python писать. SDK есть в папке с программой.
А так можно на Delphi, на C#, на Python писать. SDK есть в папке с программой.
0
Я правильно понимаю, что если не OpenGL и DirectX, то вы написали свою математику и сделали работу с ней на видеокарте напрямую (без указанных выше библиотек)?
Или всё же сделали обертку (движок), которая просто позволяет оперировать описанной вами иерархической структурой?
p.s.: хочу гордиться коллегами, хочу больше технических деталей, ибо первое сложно, а вот второе не очень.
Или всё же сделали обертку (движок), которая просто позволяет оперировать описанной вами иерархической структурой?
p.s.: хочу гордиться коллегами, хочу больше технических деталей, ибо первое сложно, а вот второе не очень.
0
Отвечает Эдуард Максименко:
«Нет, свою математику мы не писали, т.к. решение OpenGL является стандартом практически для всех ОС и смысла в этом нет.
Обертка — слово неподходящее, это все же движок, со своим функционалом, оптимизацией, а также инструментарием. Что такое “Обертка”? Если говорить простым языком, в большинстве случаев это промежуточный слой между прикладной программой и другой библиотекой или интерфейсом другого API, цель обертки — упростить и сделать более удобной работу конечного пользователя, но есть и др. цели. Тут разработан именно движок, а обертка над стандартной библиотекой OpenGL занимает объем не более 3-6% от всего кода. Поверьте, что и тут достаточно работы, чтобы сделать ориентированный визуализатор в данной области. И самое главное — разработать необходимый набор функционала, которого не ни в OpenGL, ни в DirectX, и вряд ли когда появится.
Для ясности привожу примеры: как и в большинстве движков, разработано представление сцены в виде графа, который не имеет отношение к OpenGL и DirectX. Также много механизмов оптимизации LOD, Frustum culling, …, которые не связаны с этими библиотеками, ну а про привязки, локаторы, манипуляторы и, как следствие, собственную событийную модель или поддержку физических устройств я уже говорить не буду. Тем не менее в данной библиотеке присутствует всего лишь два класса, которые выполняют роль оболочки и реализовывают перевызов нескольких функций из OpenGL. Хочу также отметить, что на создание подобных движков уходят годы работы не одного человека, а целой группы. Короче, все зависит от потребности, если вам не обходимо визуализировать кубик — это одно, если мы говорим о библиотеке с большим множеством решений — это совершенно другой расклад. Спасибо за ваше внимание, мы всегда готовы дать максимально развернутый ответ на ваши вопросы».
«Нет, свою математику мы не писали, т.к. решение OpenGL является стандартом практически для всех ОС и смысла в этом нет.
Обертка — слово неподходящее, это все же движок, со своим функционалом, оптимизацией, а также инструментарием. Что такое “Обертка”? Если говорить простым языком, в большинстве случаев это промежуточный слой между прикладной программой и другой библиотекой или интерфейсом другого API, цель обертки — упростить и сделать более удобной работу конечного пользователя, но есть и др. цели. Тут разработан именно движок, а обертка над стандартной библиотекой OpenGL занимает объем не более 3-6% от всего кода. Поверьте, что и тут достаточно работы, чтобы сделать ориентированный визуализатор в данной области. И самое главное — разработать необходимый набор функционала, которого не ни в OpenGL, ни в DirectX, и вряд ли когда появится.
Для ясности привожу примеры: как и в большинстве движков, разработано представление сцены в виде графа, который не имеет отношение к OpenGL и DirectX. Также много механизмов оптимизации LOD, Frustum culling, …, которые не связаны с этими библиотеками, ну а про привязки, локаторы, манипуляторы и, как следствие, собственную событийную модель или поддержку физических устройств я уже говорить не буду. Тем не менее в данной библиотеке присутствует всего лишь два класса, которые выполняют роль оболочки и реализовывают перевызов нескольких функций из OpenGL. Хочу также отметить, что на создание подобных движков уходят годы работы не одного человека, а целой группы. Короче, все зависит от потребности, если вам не обходимо визуализировать кубик — это одно, если мы говорим о библиотеке с большим множеством решений — это совершенно другой расклад. Спасибо за ваше внимание, мы всегда готовы дать максимально развернутый ответ на ваши вопросы».
+1
Как будете жить с миром Apple который переходит на свой Metal?
0
Отвечает Эдуард Максименко:
C3D Vision — достаточно молодой компонент в линейке C3D Toolkit. Пока реализована поддержка Windows и Linux. Я думаю, это даже к счастью, что мы еще не реализовали поддержку iOS (с Metal), что позволит нам проанализировать некоторые подходы для дальнейшей его поддержки. В любом случае, нас это не пугает, т.к. C3D Vision имеет модульную основу, что позволяет разработать отдельный плагин для поддержки того или иного отрисовщика, в том числе и Metal, не модифицируя остальные модули движка.
Как я отмечал в ответе на предыдущий комментарий, реализация плагина отрисовщика занимает незначительную часть по отношению ко всему движку, но, естественно, будет необходим потратить определенное время на изучение Metal, т.к. мы с ним не работали, тут никуда не денешься.
C3D Vision — достаточно молодой компонент в линейке C3D Toolkit. Пока реализована поддержка Windows и Linux. Я думаю, это даже к счастью, что мы еще не реализовали поддержку iOS (с Metal), что позволит нам проанализировать некоторые подходы для дальнейшей его поддержки. В любом случае, нас это не пугает, т.к. C3D Vision имеет модульную основу, что позволяет разработать отдельный плагин для поддержки того или иного отрисовщика, в том числе и Metal, не модифицируя остальные модули движка.
Как я отмечал в ответе на предыдущий комментарий, реализация плагина отрисовщика занимает незначительную часть по отношению ко всему движку, но, естественно, будет необходим потратить определенное время на изучение Metal, т.к. мы с ним не работали, тут никуда не денешься.
+1
Вот хотелось бы узнать перспективы по использованию, с виду смотрится красиво.
Но вот я хочу использовать его к примеру в своем приложении. Где собственно сейчас крутится свой вариант на OpenGL. Приложение не продается и когда будет продаваться неизвестно, и будет ли вообще.
Это я к тому — во сколько обойдется использование вашего движка в данном случае? Не будет ли в будущем какого-нибудь отказа в стиле — мы решили сделать движок закрытым или поднять на него цены до уровня конкурентов.
Насколько удобно будет его использовать с Delphi к примеру.
Но вот я хочу использовать его к примеру в своем приложении. Где собственно сейчас крутится свой вариант на OpenGL. Приложение не продается и когда будет продаваться неизвестно, и будет ли вообще.
Это я к тому — во сколько обойдется использование вашего движка в данном случае? Не будет ли в будущем какого-нибудь отказа в стиле — мы решили сделать движок закрытым или поднять на него цены до уровня конкурентов.
Насколько удобно будет его использовать с Delphi к примеру.
0
Вопрос цены мы обсуждаем индивидуально. В том числе учитываем, на каком этапе разработки находится продукт заказчика, по какой модели будет продаваться.
Закрывать движок в наши планы не входит. Смысл нашей работы и состоит в том, чтобы дать разработчикам САПР удобный и полезный инструмент.
Закрывать движок в наши планы не входит. Смысл нашей работы и состоит в том, чтобы дать разработчикам САПР удобный и полезный инструмент.
+1
Хорошо, а если продукт вообще продаваться не будет? :-)
Сейчас я его использую больше для обучения студентов, чем для чего-то практического в плане бизнеса.
Сейчас я его использую больше для обучения студентов, чем для чего-то практического в плане бизнеса.
0
Для образовательных задач предоставляется академическая лицензия на все компоненты C3D Toolkit. Подробнее здесь c3dlabs.com/ru/info/education
Если такое сотрудничество интересно, напишите на info@c3dlabs.com.
Если такое сотрудничество интересно, напишите на info@c3dlabs.com.
+1
Зарегистрируйтесь на Хабре, чтобы оставить комментарий
Визуализация в САПР: зачем мы написали еще один 3D-движок и как он работает