Pull to refresh

Comments 8

Не могу понять (оффтоп):
Steam делает свою операционку и свои Steam машины. Многие игры сейчас переводятся на OpenGL ради поддержки операционки стима. Недавно я был оочень приятно удивлён тем, что на моём ArchLinux запустился Company of Heroes 2 без лагов / фризов с хорошим фпс. Так почему люди сразу не пишут на OpenGL?
А тулзы у Интела — 5+. Очень удобные.
UFO just landed and posted this here
Многие игры сейчас переводятся на OpenGL ради поддержки операционки стима

Единицы переводятся, а операционка стима, грубо говоря, на рынке не представлена. Это не платформа, раз, просто еще один Linux дистриб. В отличие от убунты, ее доля вообще нулевая, два. В свете опоздания Vulkan за DX12 и ухода Apple на Metal для приемника все выглядит еще хуже.

Так почему люди сразу не пишут на OpenGL?

А зачем писать, когда у подавляющего большинства разработчиков связка windows+xbox. Там сейчас Dx12. В итоге, OpenGL не нужен и только мешается, потому что тут же натыкаешься на вечные проблемы с драйверами (вспоминается Rage от Кармака, которому именно качество поддержки OpenGL испортило релиз).
А вот интересно, чего с openGL такая проблема? Казалось бы, это должно быть более качественное API — ведь его разработка распределённая, реализацию могут максимально подогнать под своё железо производители видеокарт. В то время как Dx разрабатывается авторитарно майкрософтами под все видяхи которые есть и которые будут (насколько я понимаю, если ошибаюсь — было бы интересно узнать как это выглядит на самом деле) — и, следовательно, всё должно быть более громоздким и глючным.
Производители и «подгоняют» реализуя спорные места (а их есть в любой спецификации, тем более такой большой) так, как им захочется. А потом они ошибки исправляют когда им об этом сообщат. Но только для последних GPU (ну действительно: не возиться же с GPU выпущенными лет 10 назад, правда?). А потом на всём этом кто-то пытается запустить игру.

Распределённая разработка — путь куда угодо (к дешевезне за счёт конкуренции, к богатству возможностей за счёт выбора разных подходов и т.д. и т.п.), только не к качественной реализации чего-либо.

А насчёт последствий разработки Dx только Microsoft'ом… вы неправильно понимаете ситуацию: если Microsoft скажет что где-то нужно красить по вертикали, а не пе горизонтали, а создатель GPU их не послушается, то дальше — вариантов два:
1. Не послушался сейчас — исправит в следующей версии (пример — nVidia GeForce FX, оптимизированная под FP 16bit, в то время как Microsoft требовал 24).
2. Не хочет исправлятьсяя — вылетит с рынка (пример — PowerVR, который «рулит» на рынке мобильной графики, но исчез с рынка настольной «не вписавшись» в DirectX видение мира).
Это, понятно, мало нравится разработчикам железа (но куда им деваться?), зато очень помогает разработчикам игр.
Именно авторитарность DX и ключ его успеха. МС это общий знаменатель. Они вводят спецификации и требования к железу и разработчики железа просто не имеют выбора кроме как подчиниться — это банально в их же интересах. Галочка «поддерживает DX12» это хорошее подспорье для покупки новой видеокарты. Кроме того это высшее благо для разработчиков игр. Нет ничего лучше, когда у тебя есть четкие спецификации и гарантии совместимости. DX их предоставляет. Разработчикам остается лишь заниматься главным — делать свой продукт, а не бороться с драйверами и железом. Разве что багрепорты отправлять, которые быстро исправляются вендорами еще на стадии разработки игры.

МС не делают все под все видяхи. Они дают вендорам только API и спецификации. Каждый вендор сам пишет свои драйвера. Вот архитектура их модели драйверов https://msdn.microsoft.com/en-us/library/windows/hardware/ff570589(v=vs.85).aspx Серым выделены компоненты, которые пишет и подгоняет под свое железо вендор.
Vavle должны для начала перетянуть на свою операционку/консоль значительное число геймеров, чтобы был стимул писать на OpenGL(а точнее Vulkan). Vulkan же, в свою очередь должен быть не менее удобным и быстрым чем DirectX (а желательно превосходить его в этих аспектах). А Microsoft при этом может ещё и деньгами разработчиков стимулировать.
Короче, верю и надеюсь на Vulkan, но много звёзд должно сойтись для него…
Самая главная — поддержка драйверами. С этим пока не очень.
Sign up to leave a comment.