Перейти из форума на сайт.

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в on-line?
Вход Забыли пароль? Первый раз на этом сайте? Регистрация
Компьютерный форум Ru.Board » Компьютеры » Прикладное программирование » openGL vs. DIRECT3D

Модерирует : ShIvADeSt

 Версия для печати • ПодписатьсяДобавить в закладки
Страницы: 1 2 3

Открыть новую тему     Написать ответ в эту тему

ssx



Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
OpenGl хорош тем, хотя бы, что я портировал десяток написанных на нем скринсейвейров с XWindows под Win32 за один вечер

Всего записей: 500 | Зарегистр. 06-10-2003 | Отправлено: 19:56 23-01-2004
backspace777



Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Цитата:
OpenGL -- всётаки получше, но и не рулез(хотя тоже г...)

 
Достоинства(OpenGL):
1) Разработчик может напрямую работать с железом при использовании расширений
2) большое количество: наработок, разработок и самое главное ДОКУМЕНТАЦИИ
3) переносимость(даже ATI! чёта для мабил сделала )
4) Поддержка фукций видеокарты появляется при выходе драйверов
5) Производитель видеокарт(под Win) заменяет видовс драйвер на свой
собственый(для ATI это недостаток ) так что вопрос о производительности
стоит за производителем видеокарты, а не MicroSoft
 
Недостатки(OpenGL):
1) Только рендерер(хотя щас вроде OpenML разрабатывается)
2) Ну СЛИШКОМ много расширений(с версии 2.0 обещают исправить :-\)
3) нет доступных, простых в использовании высокоуровневых библитек
для работы с данными(мешами, экспортом и т.д.) для PC
 
 
Достоинства(DirectX):
1) DirectX не только рендер, но и ещё работа со звуком, видео, устр-ми ввода-вывода
2) прост в использовании - хорошо продуманные библиотеки
3) Библитеки для работы с высокоорганизованными даными ( *.X) - очень большой плюс
 
Недостатки(DX):
1) Достойные внимания книги можно найти только благодаря MS Press
2) Переносимость: только PC и XBox
3) Поддержка новых фукций видеокарты появляется только при выходе
новой версии DirectX
4) медленный COM
 
Всё писать не захотелось - так что добавляйте свои достоинства и недостатки
 
P.S.:
А что лучше или хуже, тут надо смотреть на то что должно получиться в итоге.
 


Всего записей: 10 | Зарегистр. 15-12-2001 | Отправлено: 17:08 04-02-2004
ssv22

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
А что можно сказать о применимости(результативности) OpenGl  и ACIS в САПР?
Что-то все об игрушках и тп.
Про ACAD можно не говорить! (и не нужно)
Я имею ввиду SolidWorks, SolidEDGE, PROe, Catia, Unigraphix, и др. т.е. твердотельные, 3-х мерные САПР.
Если в SolidWorks отключить режим OpenGl, то элементарный кубик замучаешься крутить, какая уж тут работа...
А ядро как влияет: ParaSolid или ACIS? (это вопрос, а не утверждение, просто интересно).
3DS насколько я знаю основано на ядре ACIS. А SW - на Psrasolid`e.
Так вот, при работе с сетью (Edit Mesh) 3DS бысрее шевелиться, а вот при работе с "твердыми телами" - SW быстрее.  
Вообще бльшинство САПР использует OpenGl. Почему?
У кого какой мнений?
Если, конечно, есть желание высказаться...

Всего записей: 106 | Зарегистр. 02-08-2005 | Отправлено: 22:50 27-09-2008
karakurt2



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Вот моё мнение. OpenGL не предназначена для манипуляций с высокоуровневыми графическими приметивами, для этого есть множество коммерческих библиотек и библиотек с открытым исходным кодом. Для работы с OpenGL стандартом де-факто является библиотека OpenInventor, разработанная уже давольно давно в недрах Silicon Graphics. Среди продвинутых библиотек для работы с графичискими приметивами можно упомянуть Computentional Geometry Algorithm Library (CGAL), Visualization Toolkit, OpenMesh и т.д. Список можно продолжать бесконечно, вопрос лишь во времени и усилиях, которые вы потратите, чтобы включить эти библиотеки в свой арсенал разработчика.
 
Что касается технологий DirectX, то она была изначально предназначена для того, чтобы дать людям унифицированный интерфейс для работы с огромным разнообразием оборудования на низком уровне. Кто программировал "по-железу" графические видеокарты, тот знает какое это трудоёмкое занятие. И как настоящий монополист Майкрософт предоставила интерфейсы, которые облегчают предварительную обработку и хранение данных.
 
В САПР OpenGL используется потому что разработчик пытается получить максимальную прибыль от вложенных инвестиций благодоря высокой переносимости и тщательно продуманному интерфейсу библиотеки и потому что большинство САПР имеют довольно-таки большую историю разработки и было бы невыгодно переносить старые жнаработки на новые технологии, которые предлагает Майкрософт. В свою очередь, DirectX интересует прежде всего разработчиков игр, так как декларирует, что может обеспечить максимальную производительность на которую способно то или иное оборудование.

Всего записей: 736 | Зарегистр. 06-12-2003 | Отправлено: 12:18 28-09-2008
eLLoco



Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Цитата:
В САПР OpenGL используется потому что разработчик пытается получить максимальную прибыль от вложенных инвестиций благодоря высокой переносимости и тщательно продуманному интерфейсу библиотеки и потому что большинство САПР имеют довольно-таки большую историю разработки и было бы невыгодно переносить старые жнаработки на новые технологии, которые предлагает Майкрософт. В свою очередь, DirectX интересует прежде всего разработчиков игр, так как декларирует, что может обеспечить максимальную производительность на которую способно то или иное оборудование.

Собственно, это подтверждает и маркетинговая политика обеих сторон - одни давят на профессиональную графику, другие на игры.

Всего записей: 217 | Зарегистр. 03-08-2007 | Отправлено: 20:25 28-09-2008
Qraizer



Advanced Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору

Цитата:
...
4) медленный COM
А сегодня есть ли ещё люди, которые так думают?

----------
Одни с годами умнеют, другие становятся старше.

Всего записей: 613 | Зарегистр. 08-08-2006 | Отправлено: 16:24 29-09-2008
ssv22

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Судя по прочитанному можно сделать вывод, что OpenGL - устаревшая технология, не имеющая перспектв против DirectX .
Это действительно так?

Всего записей: 106 | Зарегистр. 02-08-2005 | Отправлено: 20:09 29-09-2008
Qraizer



Advanced Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
Нет, конечно. Архитектурные принципы её API, возможно и устарели: функциональный и ориентированный на POD типы - это уже даже не вчерашний день. Тут backspace777 (давно, правда) уже упоминал, что многочисленные расширения задалбливают. ИМХО главный её минус следует из её главного плюса - некому оперативно вводить, обкатывать и стандартизировать фичи, постоянно придумываемые производителями железа. Пока кто-нибудь придумает и воплотит соответствующее очередное расширение, пока его рассмотрят, обсудят, подформализуют, обкатают и примут - железо уже новые фичи предлагает. Причём, вполне может оказаться, что очень похожим (или даже этим же) расширением уже занимается кто-то другой, но у него немного другой взгляд на детали его реализации. ИМХО, если бы не DOOM }I{, то и по сей день аппаратные шейдеры в GLе отсутствовали бы. Но считать это недостатком GLя всё-таки не следует. Нужно отдавать себе отчёт, что международные стандарты не только играми и их производителями определяются и диктуются.
Другое дело DirectX. У него один автор, читай, монополист (не собираюсь тут спорить на тему того, хорошо это или плохо, просто констатирую), который может оперативно реагировать на веянья моды в мире железа, выпускать обновления интерфейсов, обкатывать их совместно с группой тестеров из заинтересованных компаний. Много времени на согласоваение, обсуждение итп у него не уходит. Потому в последнее время разработчики и железа, и софта, и уважают DX больше, чем GL. Причём его COM-интерфейс, который имеет ООП/ИОП ориентацию, значительно меньше подвержен проблемам функционального интерфейса. Какие-то новые расширения вышли? В GL для их использования нужно поискать соответствующее расширения, подгрузить библиотеки и наполучать оттуда указателей на функции (если это устаревшие сведения, поправьте, плз). В DX для этого нужно только изменить тип объекта, то бишь переменной, которая является указателем на интерфейс, и передать в его конструктор другой параметр, в результате чего фабрика создаст экземпляр другого класса, реализующего этот интерфейс. Всё. Учитывая, что DX-сервера находятся в DLL, и размещаются в адресном пространстве использущего их процесса, все COM-вызовы являются не более чем обычными вызовами через таблицу виртуальных методов. Если, конечно, не использовать дуальные интерфейсы, но это пусть заботит VB и иже с ним. Так что медленее GLя работа с DX не будет. Тем не менее, DX гораздо меньше общепринятого мнения зациклен на некой конкретной сфере индустрии. Тот факт, что сейчас он зачастую используется именно для игр, отнюдь не ограничивает сферу его применения только играми.
И кстати, Кармак выбрал GL главным образом из-за его переносимости. Даже сейчас они не могут себе позволить писать движок на непереносимом API - они ж далеко не только под PC игры выпускают. А D3D они вообще никогда не использовали, только DDraw, DInput, DPlay и DSound и D3DSound (насчёт последнего не уверен), т.е. всё остальное из DX, актульного для игр, кроме DMusic. Но это и не принципиально, потому что GL этого всё равно предложить не может, так что тут по-любому переносимо писать придётся вручную.

----------
Одни с годами умнеют, другие становятся старше.

Всего записей: 613 | Зарегистр. 08-08-2006 | Отправлено: 21:15 29-09-2008 | Исправлено: Qraizer, 21:23 29-09-2008
ssv22

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Цитата:
 
...
А ядро как влияет: ParaSolid или ACIS? (это вопрос, а не утверждение, просто интересно).  
3DS насколько я знаю основано на ядре ACIS. А SW - на Psrasolid`e.  
Так вот, при работе с сетью (Edit Mesh) 3DS бысрее шевелиться, а вот при работе с "твердыми телами" - SW быстрее.  
Вообще бльшинство САПР использует OpenGl. Почему?  
У кого какой мнений?  
Если, конечно, есть желание высказаться...  

 
А вот про ядро что-то никто не высказался!  
Было-бы интересно...  
Есть-ли какая зависимость между применением технологии DirectX(или OpenGL) и ядра  - ACIS(или Parasolid).  
Или тут смешивание понятий неуместно?

Всего записей: 106 | Зарегистр. 02-08-2005 | Отправлено: 08:28 01-10-2008
ssv22

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Цитата:
...  
А ядро как влияет: ParaSolid или ACIS? (это вопрос, а не утверждение, просто интересно).  
3DS насколько я знаю основано на ядре ACIS. А SW - на Psrasolid`e.  
Так вот, при работе с сетью (Edit Mesh) 3DS бысрее шевелиться, а вот при работе с "твердыми телами" - SW быстрее.  
Вообще бльшинство САПР использует OpenGl. Почему?  
У кого какой мнений?  
Если, конечно, есть желание высказаться...  
 
Цитата 2:
А вот про ядро что-то никто не высказался!  
Было-бы интересно...  
Есть-ли какая зависимость между применением технологии DirectX(или OpenGL) и ядра - ACIS(или Parasolid).  
Или тут смешивание понятий неуместно?  
 
Да, меня тоже интересует этот вопрос: почему большинство CAD работают на ParaSolid`e.
А то, что  (Edit Mesh) 3DS  бысрее шевелиться - даже "обидно" как-то... это я давно заметил.
Может тут дело в представлении Сети и 3D-тела во внутреннем представлении базы даных конкретной  3D-системы?
Непонятно однако...
 Где что почитать?

Всего записей: 106 | Зарегистр. 02-08-2005 | Отправлено: 23:17 14-12-2008
PrWork1

Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
ssv22
 
Сетью (в 3D max) проще создавать обекты нужной формы,
а Solid'ом, с четким описаним трансформаций, проще подготавливать данные для изготовления в производстве.

Всего записей: 582 | Зарегистр. 15-12-2005 | Отправлено: 04:21 23-11-2009
ArkadyKiller



Advanced Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
Уважаемые програмисты, помогите плиз, замутить программку:
Берется разрешение экрана, каждый пиксель экрана меняет свою цветовую гамму по счетчику случайных чисел с частотой 24 кадра в секунду, и чтобы эти пиксели не были зависимы друг от друга т.е. хаотично меняют цветовую гамму. Помогите замутить такую мелкую прогу, ваще не разу не работал с графикой.

Всего записей: 834 | Зарегистр. 28-09-2006 | Отправлено: 09:44 02-03-2010
Roman_Hayretdinov



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
negotiator007
Цитата:
openGL -- rulez forever !!!

Забавно такое читать в 2024-м году
Интересно, как долго ещё производители видеокарт (и драйверов к ним) будут поддерживать OpenGL?

Всего записей: 116 | Зарегистр. 19-12-2021 | Отправлено: 14:33 31-10-2024
Открыть новую тему     Написать ответ в эту тему

Страницы: 1 2 3

Компьютерный форум Ru.Board » Компьютеры » Прикладное программирование » openGL vs. DIRECT3D


Реклама на форуме Ru.Board.

Powered by Ikonboard "v2.1.7b" © 2000 Ikonboard.com
Modified by Ru.B0ard
© Ru.B0ard 2000-2025

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru