URL: https://www.opennet.ru/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID3
Нить номер: 95125
[ Назад ]

Исходное сообщение
"Открыт код транслятора Direct3D HLSL в OpenGL GLSL, созданно..."

Отправлено opennews , 28-Мрт-14 23:59 
Компания Unknown Worlds Entertainment последовала примеру (http://www.opennet.ru/opennews/art.shtml?num=39286) Valve и  перевела (https://twitter.com/max_mcguire/statuses/449291790164570112) в разряд открытых проектов свои наработки по трансляции Direct3D в OpenGL, созданные в процессе адаптации игры Natural Selection 2 (http://ru.wikipedia.org/wiki/Natural_Selection_2) для платформы Linux. В частности, под лицензией MIT открыт (https://github.com/unknownworlds/hlslparser) код парсера для языка описания шейдеров HLSL (High-Level Shader Language), используемого в Direct3D,  и генератора кода OpenGL GLSL.


Указанная связка позволяет организовать перевод на OpenGL 3.1 игр, изначально написанных с использованием Direct3D 9 или режима D3DCOMPILE_ENABLE_BACKWARDS_COMPATIBILITY в D3D11. Отмечается, что в текущем виде код не пригоден для обособленной сборки, так как он завязан на некоторые остающиеся закрытыми функции движка игры Natural Selection 2. Но так как данные функции являются типовыми (например, работа с массивами, распределение памяти и т.п.), они легко могут быть реализованы самостоятельно.


URL: http://www.gamingonlinux.com/articles/natural-selection-2s-d.../
Новость: http://www.opennet.ru/opennews/art.shtml?num=39433


Содержание

Сообщения в этом обсуждении
"Открыт код транслятора Direct3D HLSL в OpenGL GLSL, созданно..."
Отправлено A.Stahl , 28-Мрт-14 23:59 
Неполные огрызки кода для перевода вызовов какой-то дурацкой непортируемой библиотеки в OpenGL?
А зачем? Ах, да -- для того, чтобы поощрять микрософт-фанов писать под директХ и кормить остальных криво оттранслированным автоматическим трешем в OpenGL.
Нет, спасибо.
Я, пожалуй, пройду мимо.

"Открыт код транслятора Direct3D HLSL в OpenGL GLSL, созданно..."
Отправлено Отражение луны , 29-Мрт-14 00:02 
Вам же ответили заранее - для портирования игр.

"Открыт код транслятора Direct3D HLSL в OpenGL GLSL, созданно..."
Отправлено A.Stahl , 29-Мрт-14 00:07 
Ну я не стал бы называть это портированием.
Это как засунуть программу в один пакет с вайном и сказать, что "Программа портирована. Идите жрать."
Для бюрократической галочки покатит, но в общем и целом решение нежизнеспособно и влечёт за собой множество проблем при эксплуатации.

"Открыт код транслятора Direct3D HLSL в OpenGL GLSL, созданно..."
Отправлено Аноним , 29-Мрт-14 19:17 
> Это как засунуть программу в один пакет с вайном и сказать, что "Программа портирована. Идите жрать."

Нет. Это как транслировать шейдеры с HLSL в GLSL перед релизом и поставлять полученные GLSL шейдеры с GL-версией игры. Хотя если кому-то очень хочется отдельно поддерживать два комплекта шейдеров чтобы фиксить каждый баг в двух местах и добавлять каждую новую возможность также в двух местах на двух разных языках, то можно использовать транслятор с HLSL один раз в самом начале, просто чтобы сэкономить время, а дальше пилить два набора шейдеров на GLSL и HLSL вручную.

В любом случае никто не заставляет разработчиков выполнять трансляцию шейдеров в процессе работы игры, как это делает вайн.


"Открыт код транслятора Direct3D HLSL в OpenGL GLSL, созданно..."
Отправлено anonymus , 29-Мрт-14 00:45 
А чем вас не устраивает встроенная в вайн библиотека для трансляции? Зачем непонятный проприетарный огрызок, когда есть давно зарекомендовавшая себя открытая система?

"Открыт код транслятора Direct3D HLSL в OpenGL GLSL, созданно..."
Отправлено Аноним , 30-Мрт-14 15:47 
> А чем вас не устраивает встроенная в вайн библиотека для трансляции?

Встроенная в "вайн" библиотека не устраивает тем, что не устраивает сам "вайн", какие бы библиотеки в него не входили.

Другой вопрос, если имеется какой-то способ использовать какие-то полезные библиотеки из вайн, абсолютно независимо от самого "вайн", и чтобы эти библиотеки были бы 64-разрядными, вот только после этого имеет смысл начать рассматривать вопрос, чем могла бы устроить та или иная библиотека из "вайн".


"Открыт код транслятора Direct3D HLSL в OpenGL GLSL, созданно..."
Отправлено EuPhobos , 29-Мрт-14 00:50 
Ага, я пытался эту игру загрузить пару раз, она грузится минут эдак по 10-15, на железе AMD FX 8150 + GeForce GTX 670.
Грузится-грузится и падает, но иногда всё же можно поиграть! Если терпения хватит дождаться загрузки, или если не упадёт.
Отличный порт! Для проверки нервов и весёлой траты времени.

"Открыт код транслятора Direct3D HLSL в OpenGL GLSL, созданно..."
Отправлено Lain_13 , 29-Мрт-14 04:47 
А дело точно в том, что это порт? Или оно такое от рождения и на всех платформах?

"Открыт код транслятора Direct3D HLSL в OpenGL GLSL, созданно..."
Отправлено EuPhobos , 29-Мрт-14 09:09 
> А дело точно в том, что это порт? Или оно такое от рождения и на всех платформах?

Об этом я не задумывался, нет возможности проверить на других платформах. Но есть в стиме ещё одна игра Deadfall Adventures, в который прямиком написано "Баги бета версии: Из-за портирования долгие загрузки", и реально загрузка уровня с надписью "Компиляем шейдеры" длится просто вечно, но в отличие от топика, игра загружается и играется.


"Открыт код транслятора Direct3D HLSL в OpenGL GLSL, созданно..."
Отправлено Аноним , 29-Мрт-14 09:35 
Решил записать видео, чтобы показать что ты не прав. Но ты оказался прав, вот видео: http://yadi.sk/d/N4qx5GueLQ9AK 135 Мб, 17 минут, специально не стал вырезать загрузку уровней (чтобы можно было самому посчитать сколько времени она занимает) и вылеты.

"Открыт код транслятора Direct3D HLSL в OpenGL GLSL, созданно..."
Отправлено EuPhobos , 29-Мрт-14 11:13 
> Решил записать видео, чтобы показать что ты не прав. Но ты оказался прав, вот видео: http://yadi.sk/d/N4qx5GueLQ9AK 135 Мб, 17 минут, специально не стал вырезать загрузку уровней (чтобы можно было самому посчитать сколько времени она занимает) и вылеты.

0:15 Палево, zenitur, или залогинься ))

А вообще я наоборот записываю видео удачных игр под линукс и со стима и вообще, но особо глючные пропускаю. http://www.youtube.com/user/EuPhobos/videos?flow=grid&view=0
Да и вообще уже хочется создать рейтинг самых неудачных игр (в плане поддержки разработчиками).
Как минимум на первых местах будут Metro Last Light и Natural Selection 2


"Открыт код транслятора Direct3D HLSL в OpenGL GLSL, созданно..."
Отправлено Аноним , 29-Мрт-14 16:43 
Перезагрузил компьютер, установил драйвер NVIDIA версии 319.xx, выключил Compiz, не включал запись видео. Не работает. Значит причина не в чём-то из этого, а в очередном обновлении игры. Несколько месяцев назад всё работало отлично.

"Открыт код транслятора Direct3D HLSL в OpenGL GLSL, созданно..."
Отправлено anonymous , 29-Мрт-14 17:17 
>Metro Last Light

У меня работала прекрасно. Было пару багов, но чисто игрового характера. Подозреваю, что у Вас не nVidia.


"Открыт код транслятора Direct3D HLSL в OpenGL GLSL, созданно..."
Отправлено anonymous , 29-Мрт-14 17:24 
>nVidia

Упс, невнимательно прочитал Ваш комментарий. Но таки должен отметить, что у меня игра работала прекрасно.


"Открыт код транслятора Direct3D HLSL в OpenGL GLSL, созданно..."
Отправлено petyanamlt , 29-Мрт-14 11:51 
У меня 8350 и тоже 670
Грузится быстро, работает без глюков.
Но игра гавно.

"Открыт код транслятора Direct3D HLSL в OpenGL GLSL, созданно..."
Отправлено Взьызалебжч , 30-Мрт-14 21:15 
Эта игра даже под виндой долго грузит карту, так как кеширует все модели текстуры и звуки, но не дольше 3 минут, кстати opengl версия движка зависает при старте в этой винде.

"Открыт код транслятора Direct3D HLSL в OpenGL GLSL, созданно..."
Отправлено Pelican , 29-Мрт-14 00:50 
Этим транслятором должен заниматься Khronos Group

"Открыт код транслятора Direct3D HLSL в OpenGL GLSL, созданно..."
Отправлено A.Stahl , 29-Мрт-14 00:54 
Скорее микрософт. Какое отношение кронос имеет к директХ?

"Открыт код транслятора Direct3D HLSL в OpenGL GLSL, созданно..."
Отправлено Pelican , 29-Мрт-14 03:30 
> Скорее микрософт. Какое отношение кронос имеет к директХ?

Для миграции некрофилов (разработчиков игр) на OpenGL стек


"Открыт код транслятора Direct3D HLSL в OpenGL GLSL,..."
Отправлено arisu , 29-Мрт-14 06:29 
>> Скорее микрософт. Какое отношение кронос имеет к директХ?
> Для миграции некрофилов (разработчиков игр) на OpenGL стек

а зачем? нравится им на подыхающей винде — на здоровье. и без них шлака достаточно.


"Открыт код транслятора Direct3D HLSL в OpenGL GLSL,..."
Отправлено Аноним , 29-Мрт-14 11:31 
Арису как всегда работает на большинство. Как ему приятно, когда другие поддерживают его, хвалят, плюсуют, комментируют его, считают, что он чего-то да стоит, и в конце-концов, просто обращают на него внимание.
Но через 5 лет, Арису повзрослеет, и ему в голову придёт замечательнейшая и откровеннейшая вещь, что жизнь-то у него одна, а он уже половину её спустил в унитаз, тролля, флудя, флеймя и холиваря.
Интересно, чем же он займётся потом?

"Открыт код транслятора Direct3D HLSL в OpenGL GLSL,..."
Отправлено arisu , 29-Мрт-14 11:40 
какая чудесная проекция.

"Открыт код транслятора Direct3D HLSL в OpenGL GLSL,..."
Отправлено Аноним , 29-Мрт-14 12:24 
а вдруг не повзрослеет?

"Открыт код транслятора Direct3D HLSL в OpenGL GLSL,..."
Отправлено Аноним , 29-Мрт-14 13:18 
Ну а ты, написав свой коммент, считаешь, что не троллишь, не флудишь, не флеймишь и не спускаешь свою жизнь в унитаз?

"Открыт код транслятора Direct3D HLSL в OpenGL GLSL,..."
Отправлено Аноним , 30-Мрт-14 11:49 
А ты, написав свой?

"Открыт код транслятора Direct3D HLSL в OpenGL GLSL,..."
Отправлено Пиу , 31-Мрт-14 14:33 
>подыхающей винде

"подыхающая винда" всё еще топовая игровая платформа, и отрицать это непростительно


"Открыт код транслятора Direct3D HLSL в OpenGL GLSL,..."
Отправлено Аноним , 01-Апр-14 19:22 
уже давно она является третьестепенной платформой, игры были бы восхитительны, если разрабатывались лишь с оглядкой на неё.

"Открыт код транслятора Direct3D HLSL в OpenGL GLSL, созданно..."
Отправлено Lain_13 , 29-Мрт-14 04:50 
Вот как-раз Некрософт было бы очень радо закопать все подобные трансляторы. Вот только облом. Скоро уже DirectX будет впору закапывать. Потеряли WinAPI — пришла пора терять и DirectX.

"Открыт код транслятора Direct3D HLSL в OpenGL GLSL, созданно..."
Отправлено клоун Стаканчик , 30-Мрт-14 23:09 
Дай мне Путин прожить столько, сколько Windows будет доминировать в мире...

"Открыт код транслятора Direct3D HLSL в OpenGL GLSL, созданно..."
Отправлено Lain_13_too_lazy_to_login , 31-Мрт-14 02:33 
Если учитывать смартфоны, то ты уже кагбэ того.

"Открыт код транслятора Direct3D HLSL в OpenGL GLSL, созданно..."
Отправлено Пиу , 31-Мрт-14 14:35 
> Если учитывать смартфоны, то ты уже кагбэ того.

а если учесть xbox?


"Открыт код транслятора Direct3D HLSL в OpenGL GLSL, созданно..."
Отправлено Аноним , 29-Мрт-14 04:09 
Зачем в открытой ОС, поддержка проприетарщины MS? Наверное MS давно не троллили патентами DX-а никого. Что ж, они, ясное дело, наверстают упущенное.

"Открыт код транслятора Direct3D HLSL в OpenGL GLSL, созданно..."
Отправлено Отражение луны , 29-Мрт-14 07:37 
Вы вообще понимаете разницу между транслятором кода и "поддержкой проприетарщины МС"?

"Открыт код транслятора Direct3D HLSL в OpenGL GLSL, созданно..."
Отправлено Аноним , 29-Мрт-14 09:54 
один фиг ничего нормального на линуксе не будет. количество индишлака и треша, может быть и возрастёт немного.

"Открыт код транслятора Direct3D HLSL в OpenGL GLSL, созданно..."
Отправлено svsd_val , 29-Мрт-14 10:48 
Очередной трэш, что от Valve что от этой фирмы
Использование трансляторов из D3D -> OpenGL - не может называться нативным.
Уже об этом говорили и ни одну сотню раз.
Как уже говорилось с тем же успехом можно выпускать пакет с игрой в котором будет сидеть вино или досбокс или иные эмуляторы, суть от этого не изменится.

В конечном итоге это будет геморой связанный супер неглючностью и супер производительностью, примеров такого говна в сети по самое не хочу...


"Открыт код транслятора Direct3D HLSL в OpenGL GLSL, созданно..."
Отправлено llolik , 29-Мрт-14 12:51 
>Использование трансляторов из D3D -> OpenGL - не может называться нативным.

Почему?

ИМХО, никто и не предлагал использовать эти штуки для разработки новых игр. А относительно легко/дёшево портировать D3D-only и получить какие-никакие, но всё же деньги, почему бы нет. В итоге геймдевы с наваром, пользователи с игрой.


"Открыт код транслятора Direct3D HLSL в OpenGL GLSL, созданно..."
Отправлено Аноним , 29-Мрт-14 16:17 
относительно легко/дёшево портировать-это всегда значит, что кое как. мало того, что нынче и оригиналы качеством не блещут, так после такого скоростного порта выйдет вообще полное убожество. ну и по правильному это всё называется, срубить бабло наскоро, и пофигу что потом все плеваться будут.    

"Открыт код транслятора Direct3D HLSL в OpenGL GLSL, созданно..."
Отправлено SubGun , 29-Мрт-14 17:10 
Ты даже не смог осилить назначение данного транслятора, но сразу бросился писать комментарий. Я в шоке.

"Открыт код транслятора Direct3D HLSL в OpenGL GLSL, созданно..."
Отправлено svsd_val , 31-Мрт-14 13:45 
> Ты даже не смог осилить назначение данного транслятора, но сразу бросился писать
> комментарий. Я в шоке.

Извините, но я то как раз таки смог и потому высказал своё имхо что такое "добро" даже даром не нужно.
А что касается вас - не уверен.


"Открыт код транслятора Direct3D HLSL в OpenGL GLSL, созданно..."
Отправлено anonymous , 29-Мрт-14 18:11 
Использование С-функций для трансляции OpenGL->видеокарта не может быть нативным.
Уже об этом говорили и ни одну сотню раз.
С таким же успехом можно выпускать пакет с игрой, в котором будет сидеть виртуальная машина с виртуальной видеокартой, суть от этого не изменится.

"Открыт код транслятора Direct3D HLSL в OpenGL GLSL, созданно..."
Отправлено svsd_val , 31-Мрт-14 13:40 
Ага, я так вижу вы так уверены в своих словах что решили спрятаться под стул и что то от туда заявить...

Тут идёт речь об эмуляции D3D средствами OpenGL, если хотите поговорить вылазите из под анонимуса, поговорим =)


"Открыт код транслятора Direct3D HLSL в OpenGL GLSL, созданно..."
Отправлено anonymous , 31-Мрт-14 18:11 
Это не эмуляция (этот термин здесь совершенно неоправдан), это просто реализация API, пусть она и просто транслирует функции Direct3D в OpenGL. Вас ведь не смущает, что GTK работает поверх X11? Пишу из под anonymous, потому что не хочу регистрироваться, Ваш переход на личные оскорбления ("спрятаться под стул" не могу понимать иначе) считаю неуместным.

"Открыт код транслятора Direct3D HLSL в OpenGL GLSL, созданно..."
Отправлено svsd_val , 01-Апр-14 13:52 
>>Вас ведь не смущает, что GTK работает поверх X11

Нет не смущает, GTK и QT используют стандартные функции X11 для "красивого" отображения своих классов. QT сейчас стремится заюзать OpenGL, дабы отвязаться от стандартных форм.

>>Это не эмуляция (этот термин здесь совершенно неоправдан)

Это именно что эмуляция, тут нет прямого соответствия D3D -> OpenGL.
Цитата с вики: http://ru.wikipedia.org/wiki/Эмуляция
"Эмуля́ция (англ.  emulation) в вычислительной технике — комплекс программных, аппаратных средств или их сочетание, предназначенное для копирования (или эмулирования) функций одной вычислительной системы (гостя) на другой, отличной от первой, вычислительной системе (хосте) таким образом, чтобы эмулированное поведение как можно ближе соответствовало поведению оригинальной системы (гостя). Целью является максимально точное воспроизведение поведения в отличие от разных форм компьютерного моделирования, в которых имитируется поведение некоторой абстрактной модели."

В результате того что они будут стремиться реализовать картинку в OpenGL равно такую же как в D3D, появятся различные несовместимости, баги и тормоза - Факт.

>>Ваш переход на личные оскорбления ("спрятаться под стул" не могу понимать иначе) считаю неуместным.

Я не могу считать анонимное заявление как заявление от человека понимающего свои слова и отвечающих за них. То есть отношусь к ним негативно. Однако извиняюсь за свои слова выше если оскорбил вас.


"Открыт код транслятора Direct3D HLSL в OpenGL GLSL, созданно..."
Отправлено DarkTorvald , 30-Мрт-14 03:27 
Всё равно здесь DirectX круче opengl

"Открыт код транслятора Direct3D HLSL в OpenGL GLSL, созданно..."
Отправлено DarkXIV , 21-Авг-14 13:54 
Чем?

"Открыт код транслятора Direct3D HLSL в OpenGL GLSL, созданно..."
Отправлено Аноним , 30-Мрт-14 07:55 
http://biipi.ru/article/7047
Европол, понимаешь, предупреждает об опасности, таящей в себе Windows XP, а эти неадекваты зачем-то подставляются под угрозу наезда по случаю нарушения патентов в лице Microsoft.

"Открыт код транслятора Direct3D HLSL в OpenGL GLSL, созданно..."
Отправлено anonymous , 30-Мрт-14 10:06 
Это просто реализация API Direct3D поверх OpenGL. Какие могут быть патенты на API? Если патенты и могут откопать, то уже в самом OpenGL, с обёрткой или без уже неважно.

"Открыт код транслятора Direct3D HLSL в OpenGL GLSL, созданно..."
Отправлено Аноним , 30-Мрт-14 22:28 
Не волнуйтесь, этот патентный тролль MS, ещё и не так умеет.

"Открыт код транслятора Direct3D HLSL в OpenGL GLSL, созданно..."
Отправлено Аноним , 01-Апр-14 13:32 
если в их "цивилизованном" мире имеют место быть патенты на прямоугольники, то патенты на API тем более имеют право на существование