1.1, A.Stahl (ok), 09:18, 28/03/2020 [ответить] [﹢﹢﹢] [ · · · ]
| +6 +/– |
Вы только не ржите, но ведь эта штука может вполне себе оказаться весьма полезной: некоторые из колеблющихся между кроссплатформенным OpenGL и Windows-only Direct3D, полне могут качнуться в сторону первого. А это хорошо даже если всё остальное будет собрано только под Винду.
| |
|
2.3, Аноним (3), 09:31, 28/03/2020 [^] [^^] [^^^] [ответить]
| +18 +/– |
Совершенно не понятно, кто мешает колеблющимся качнуться в сторону _кросплатформенного_ OpenGL прямо сейчас.
| |
|
3.4, A.Stahl (ok), 09:34, 28/03/2020 [^] [^^] [^^^] [ответить]
| –1 +/– |
Да много чего: привычка, "а у нас так принято", какая-то важная штука может быть в Derect3D быть удобней.
| |
|
4.18, Аноним (18), 12:57, 28/03/2020 [^] [^^] [^^^] [ответить]
| –8 +/– |
Я более чем уверен, что openGL уже мертв, только похоронить не успели. Зачем он нужен, если есть великолепный Vulkan. Через пару тройку лет о нём будут вспоминать как о прошлом.
| |
|
5.38, Аноним (38), 17:57, 28/03/2020 [^] [^^] [^^^] [ответить]
| +2 +/– |
Ну да, отрисовка треугольника с использованием Vulkan тянет на 900 строк кода. Самое то для любителей и индюшатников.
| |
|
6.52, Аноним (3), 03:14, 29/03/2020 [^] [^^] [^^^] [ответить]
| +/– |
Луддиты очень любят приводить в пример, как расточительно при помощи современных средств реализуются их hello world'ы.
| |
|
|
4.22, Аноним (3), 13:19, 28/03/2020 [^] [^^] [^^^] [ответить]
| +/– |
Это понятно, но как сия приблуда изменит ситуацию? Или в 2020 ещё есть устройства с поддержкой Direct3D, но без поддержки OpenGL?
| |
|
5.40, Аноним (40), 18:20, 28/03/2020 [^] [^^] [^^^] [ответить]
| +/– |
кстати да, у меня в 97 году была карта ATI 3D RAGE PRO которая умела D3D но не умело в OpenGL ICD. тогда бы это пригодилось, ибо игр для OpenGL и Glide было больше
| |
|
6.53, Аноним (3), 03:18, 29/03/2020 [^] [^^] [^^^] [ответить]
| +1 +/– |
Под OpenGL их тогда не было от слова совсем, за исключением Quake. Да и там это решалось посредством minigl-драйвера.
| |
6.59, pda (?), 10:54, 29/03/2020 [^] [^^] [^^^] [ответить]
| +/– |
Кстати, тогда уже были реализации OpenGL поверх Direct3D. Помню мы Quake 2 запускали в институте на S3 Virge каких-то, которые умели в Direct3D. Правда они слабеньки е были и глючило прилично. Но с патчём на поддержку 3D Now! в Q2 уже можно становилось играть.
| |
|
|
4.26, Аноним (26), 13:57, 28/03/2020 [^] [^^] [^^^] [ответить]
| +2 +/– |
Писал приложуху для вуза исследовательскую и сразу качнулся в OpenGL так как хер знает как пойдет и что там с Widnwos будет, а вот в те времена уже на факультете был Solaris, Linux, FreeBSD/NetBSD/OpenBSD и конечно Widnows. Я так подумал, что мало ли что ... и конечно начал писать под LInux. И все впорядке сегодян оно работает везде.
| |
|
3.5, Аноним (5), 09:38, 28/03/2020 [^] [^^] [^^^] [ответить]
| –2 +/– |
> Совершенно не понятно, кто мешает колеблющимся качнуться в сторону _кросплатформенного_ OpenGL прямо сейчас.
В 1997 началась война OpenGL vs DirectX. Ну, как война, холивар. В 2003 году, Майкрософт эту войну выиграла, когда выпустила DirectX 8.0 с шейдерами, а разработка в это время OpenGL сильно затормозилась. С тех пор и стараются использовать только Direct3D, и очень редко - OpenGL.
Я про игры. CAD-ы и професиональные среды 3D-моделирования - на OpenGL
| |
|
4.9, Аноним (19), 10:20, 28/03/2020 [^] [^^] [^^^] [ответить]
| +10 +/– |
> Майкрософт эту войну выиграла
...сделав у себя убогую поддержку OpenGL, тормознутую и кастрированную.
| |
|
5.25, Zenitur (ok), 13:38, 28/03/2020 [^] [^^] [^^^] [ответить]
| +3 +/– |
Вендоры поставляют свою OPENGL32.DLL. OpenGL проиграл из-за того, что Microsoft был членом ARB - консорциума, состоящего из множества компаний, и основанного компанией Silicon Graphics. Состоя в ARB, Microsoft саботировала его работу, голосуя против принятия в стандарт хороших изменений. А когда вышел DirectX 8.0, все стали говорить о победе DirectX и о том, что Microsoft убила OpenGL. Тогда Microsoft сама вышла из ARB, её никто не выгонял
| |
|
|
5.24, Zenitur (ok), 13:34, 28/03/2020 [^] [^^] [^^^] [ответить]
| +/– |
OGL 2.0 вышла в сентябре 2004 года. До этого можно было писать шейдеры на языке ассемблера, расширения ARB_fragment_program и ARB_vertex_program
| |
|
|
|
4.12, A.Stahl (ok), 10:29, 28/03/2020 [^] [^^] [^^^] [ответить]
| +/– |
Говорят что Вулкан это совсем другое и сравнивать его с OpenGL или Direct3D смысла нет.
| |
|
|
6.33, Аноним (33), 16:40, 28/03/2020 [^] [^^] [^^^] [ответить]
| +2 +/– |
Vulkan == Direct3D 12, OpenGL 3.x/4.x == Direct3D 10/11, OpenGL 1.x/OpenGL 2.x == Direct3D 6/7/8/9.
| |
|
7.63, Аномномномнимус (?), 16:38, 29/03/2020 [^] [^^] [^^^] [ответить]
| +/– |
Графический API, графический API, графический API...
Я так и не понял почему кому-то религия запрещает вулкан использовать
| |
|
|
|
|
|
2.11, Аноним (11), 10:25, 28/03/2020 [^] [^^] [^^^] [ответить]
| –2 +/– |
> Вы только не ржите, но ведь эта штука может вполне себе оказаться весьма полезной:
Да я то не хочу ржать, но у нас пацаны на районе ржут, а если не ржать вместе с ними, то они будут думать, что лох.
| |
|
|
2.15, 00 (?), 12:00, 28/03/2020 [^] [^^] [^^^] [ответить]
| +1 +/– |
mesa давно поддерживает windows сборки как минимум софтварного opengl
| |
2.16, Аноним (19), 12:22, 28/03/2020 [^] [^^] [^^^] [ответить]
| +/– |
Вот именно. Поделка оказалась win-only, а win у нас на таком большом (нет) количестве платформ, что у каждого производителя видюх уже есть OGL-дрова.
| |
|
|
|
3.69, letsmac (ok), 14:09, 30/03/2020 [^] [^^] [^^^] [ответить]
| +/– |
В javascript/python это даже неэтично - делать что-то без трех-четырех оберток.
| |
|
2.36, JL2001 (ok), 17:35, 28/03/2020 [^] [^^] [^^^] [ответить]
| +/– |
> OpenCL -> LLVM IR -> SPIR-V -> NIR -> DXIL. Это ппц.
это ж всё компиляция и вроде сейчас можно хранить кеш в NIR? может и для DXIL кеш есть в дровах
| |
|
1.21, Аноним (21), 13:11, 28/03/2020 [ответить] [﹢﹢﹢] [ · · · ]
| +1 +/– |
Няня, нужен ликбез.
В браузерах есть поддержка WebGL.
WebGL 1.0 = OpenGL ES (embedded systems) 2.0. (А WebGL 2.0 = OpenGL 3.0)
Браузеры WebGL юзают не только для canvas'ов, но и даже для ускорения видео. Так ведь?
Но если Direct3D - аналогичная OpenGL'ю технология (но от microsoft) - то почему браузеры, получается, игнорируют её абсолютно?
Неужели OpenGL условно умеет что-то, что не умеет Direct3D?
Я бы ещё понял объяснение, что "браузероделы выбрали OpenGL потому, что в отличие от Direct3D он кроссплатформенный и мы не хотим бросать наших линуксовых пользователей и макоёзеров", но ведь ускорение видео в браузерах работает только под виндой и потому этот аргумент - не аргумент.
| |
|
2.28, Nmx (?), 15:34, 28/03/2020 [^] [^^] [^^^] [ответить]
| –3 +/– |
Я не разбираюсь ни в opengl, ни в dx, так как я просто проходящий мимо неспециалист, разве что слышал что-то. Даже не особо представляю что такое есть эти ваши opengl/dx, вроде какой-то слой абстракции над реальной видеокартой. Попробую ответить используя здравый смысл:
Если dx популярна в играх, а opengl в других местах, то возможно есть то, что делает dx удобной именно для игр, либо применимость dx ограничена.
Таким способом обе технологии не до конца заменяют друг друга, хотя наверное при желании и могут.
Получилось ответить? Можно мне на руководящую должность?
| |
2.29, нах. (?), 16:08, 28/03/2020 [^] [^^] [^^^] [ответить]
| +/– |
> Браузеры WebGL юзают не только для canvas'ов, но и даже для ускорения видео. Так ведь?
нет. Для ускорения видео они юзают готовые библиотеки, предоставляемые платформой - в случае винды - имеющие прямой доступ к видеобуферу.
Почему они не могут делать то же самое в линуксе - загадка веков.
А opengl используют для ускорения...не поверишь - текстового рендеринга (ну то есть вообще рендеринга страницы, неважно, что там внутри блоков, текст или не текст).
Увидеть эффект от него - лично мне никогда не удавалось, наверное, видеокарта г-но. (вот глюки самого opengl'я увидеть таки да, удавалось)
> Неужели OpenGL условно умеет что-то, что не умеет Direct3D?
скорее d3d умеет в основном такое, что не слишком полезно браузеру (зачем ему шэйдеры и рейтрейсинг?), а для рисования текстбоксов opengl банально оказался проще и код для него понятнее.
| |
|
3.31, Аноним (33), 16:36, 28/03/2020 [^] [^^] [^^^] [ответить]
| +/– |
WebGL, он же OpenGL ES 2.0 - не умеет рисовать без шейдеров, совсем.
| |
3.46, НяшМяш (ok), 23:15, 28/03/2020 [^] [^^] [^^^] [ответить]
| +/– |
> Для ускорения видео они юзают готовые библиотеки, предоставляемые платформой - в случае винды - имеющие прямой доступ к видеобуферу.
> Почему они не могут делать то же самое в линуксе - загадка веков.
Всё же ускорение видео и аппаратное декодирование - вещи немного разные.
| |
|
4.48, нах. (?), 00:13, 29/03/2020 [^] [^^] [^^^] [ответить]
| –1 +/– |
> Всё же ускорение видео и аппаратное декодирование - вещи немного разные.
дык, забавно что под линуксом - ни того, ни другого ниасилено ;-)
зато webgl во все щели.
Впрочем, аппаратное декодирование в буфер в памяти с последующим переливанием этого буфера обратно в видеокарту - вряд ли получилось бы хорошо.
ffmpeg, насколько я понимаю, такого вообще не умеет, vo и va должны совпадать.
| |
|
5.49, НяшМяш (ok), 00:44, 29/03/2020 [^] [^^] [^^^] [ответить]
| +1 +/– |
> Впрочем, аппаратное декодирование в буфер в памяти с последующим переливанием этого буфера обратно в видеокарту
Вот в этом и вся деталь. Переноса в буфер в основной памяти автоматически не должно происходить. Апи должно возвращать ссылку на декодированные данные и если его сразу посылать на отрисовку - то кадр даже не покинет память видеокарты. А копирование обратно - это уже copy-back, для свистелок типа постобработки нейросетями или что там сейчас модно.
| |
|
6.64, нах. (?), 19:21, 29/03/2020 [^] [^^] [^^^] [ответить]
| +/– |
там может быть что-то не так не с самим api, а с техническими возможностями видеокарты - то есть запросто может быть что такую "ссылку" просто нельзя вернуть, она тут же станет невалидной, как только перезагрузятся регистры.
копирование обратно позволяет учесть масштабирование, клиппинг, всякие html5 transforms из-за которых, якобы, и невозможно было в браузере сделать то что десяток лет назад смог adobe и т д - то есть определенный смысл в нем может и быть, пока и если вообще весь рендеринг с клиппингом, масштабом и трансформами не унесен в видеокарту.
Но что-то мне подсказывает, что тот механизм, что используется в виндовых версиях браузеров - на пару порядков попроще будет.
Потому что он, как минимум, появился до появления webgl.
| |
|
|
|
|
2.51, Ordu (ok), 00:52, 29/03/2020 [^] [^^] [^^^] [ответить]
| –1 +/– |
> если Direct3D - аналогичная OpenGL'ю технология (но от microsoft) - то почему браузеры, получается, игнорируют её абсолютно?
Потому что d3d -- это венда онли, и потому что браузер не сильно выиграет от возможностей d3d, которых нет в ogl. Помимо этого браузеру ещё OGL ES придётся запиливать поверх d3d. То есть, неигнорировать d3d сложно, много возни потребуется, а бонусов от этого не видно никаких.
То есть ты вопрос не так ставишь, надо спрашивать не "чем ogl лучше для браузеров", а "чем d3d лучше для браузеров".
> Неужели OpenGL условно умеет что-то, что не умеет Direct3D?
d3d умеет кое-что, чего OGL не умеет -- я точно не скажу что, но я почитывал возню вокруг gfx-rs, и ребята отметили одним большим своим достижением реализацию ogl-бэкенда, потому как если поверх d3d или vulkan всё делается довольно прямолинейно, поверх ogl же приходится городить огород, и ogl-бэкенд в gfx-rs сильно больше по количеству кода.
Но что бы там ни было такого в 3d3, браузерам на эти возможности d3d плевать, потому как в случае браузера всё это не нужно.
| |
2.60, Аноним (60), 12:17, 29/03/2020 [^] [^^] [^^^] [ответить]
| +1 +/– |
Тут с Direct3D в браузерах не все так однозначно, потому WebGL в браузерах реализован с помощью ANGLE, а он задумывался как проект по обеспечению полного аппаратного ускорения WebGL в Windows без использования OpenGL драйверов, т.е. силами DirectX. В итоге вся эта дичь привела к тому, что в WebGL нельзя нормально сделать кое-какие штуки, которые были в OpenGL ES, и самый яркий пример из них - инвертированный буфер глубины
| |
|
1.42, Аноним (42), 21:35, 28/03/2020 [ответить] [﹢﹢﹢] [ · · · ]
| +7 +/– |
Как зaдoлбали эти надстройки настроек над настройками. Пока такие велосипеды продолжают жить, нормального линукс-гейминга не будет. Зaкaпывaйте свои велocипеды вместе с икcами, и создайте один нормальный РАБОЧИЙ стандарт для мультимедиа.
| |
1.47, vitalif (ok), 00:01, 29/03/2020 [ответить] [﹢﹢﹢] [ · · · ]
| +/– |
> Для производителей GPU подсистема даёт возможность предоставить поддержку OpenCL и OpenGL, при наличии драйверов только с поддержкой D3D12.
Хоспаде. И такие есть? А можно примеры?
| |
|
2.50, НяшМяш (ok), 00:47, 29/03/2020 [^] [^^] [^^^] [ответить]
| +1 +/– |
Думаю, что тот же Xbox вряд ли имеет поддержку чего-то Open. Или телефоны на Windows 10 Mobile (хотя уже не актуально).
| |
|
3.54, Аноним (19), 03:32, 29/03/2020 [^] [^^] [^^^] [ответить]
| +/– |
Xbox, как и WinMob, тоже никому не впёрся. Вот что есть в Xbox, чего нету в другом месте? Для юзера...
| |
|
4.62, НяшМяш (ok), 14:15, 29/03/2020 [^] [^^] [^^^] [ответить]
| +/– |
> Вот что есть в Xbox, чего нету в другом месте? Для юзера...
Игры
| |
|
5.66, Аноним (19), 21:00, 29/03/2020 [^] [^^] [^^^] [ответить]
| +/– |
Игры - что именно? Каких-таких "игры" нет на той же плойке, у которой отродясь не было DX?
| |
|
|
|
|
1.65, Аноним (19), 20:58, 29/03/2020 [ответить] [﹢﹢﹢] [ · · · ]
| +/– |
Как надо было поступить M$: не делать DX, поддержать OGL.
Как сделали M$: придумали костыли, поверх них взгромоздили OGL, чтобы всё это тормозило в стиле исконных традиций M$.
| |
|
2.67, Аноним (3), 12:30, 30/03/2020 [^] [^^] [^^^] [ответить]
| +/– |
Как надо было поступить M$: сделать DX, не прогибаться под OpenGL.
| |
|
1.70, pripolz (?), 14:38, 30/03/2020 [ответить] [﹢﹢﹢] [ · · · ]
| +/– |
так микрософт небось и заказала у колаборы этот консалтанси - чтобы новые игры на винде без проблем гонять в будущем.
| |
|