LINUX.ORG.RU

Direct3D 9 state tracker

 , , ,


1

1

Christoph Bumiller написал Direct3D 9 state tracker и предоставил патчи в расылку месы.

Некоторые люди вспомнят что в месе уже был d3d1x стей трекер, который не так давно выкинули оттуда - он был не поддерживаемый и без полезный. Но текущий стей трекер имеет преимущества, говорит автор:

- the original author has not vanished [yet] (Luca, if you can hear me:
You cannot leave your children out to die like that !)
- it's written in C instead of C++ and not relying on horrific multiple
inheritance with templates hacks to make gcc generate COM-compatible
vtables (and I'm still not sure if that actually worked)
- gallium wasn't ready for D3D11, and still isn't (at least the pipe
drivers aren't), but it is ready for D3D9, and all the features required
from the pipe drivers are well tested via OpenGL
- there are no motivating applications using Direct3D 10/11 yet (at
least for me)
- and most importantly, contrary to d3d1x, d3d9/st already actually
works for real applications !

По поводу последнего пункта, сам автор говорит вот что:

So far I've tried Skyrim, Civilization 5, Anno 1404 and StarCraft 2 on
the nvc0 and r600g drivers, which work pretty well, at up to x2 the fps
I get with wined3d (NOTE: no thorough benchmarking done yet).
Civilization 4 works, too, but it still has a couple of (not too severe)
rendering issues because I didn't pay much attention to the fixed
function pipeline and its interaction with the earlier shader versions yet.

Для желающих попробывать:

Линк на бранч месы с сабжевым стей трекером.

https://github.com/chrisbmr/Mesa-3D/tree/gallium-nine

Патченная версия месы

https://github.com/chrisbmr/wine/tree/d3dadapter9-wip

(The wine modifications only affect { d3d9.dll.so, gdi32.dll.so,
user32.dll.so, wineps.drv.so and winex11.drv.so }, so you don't have to
replace all of it).

Описалово от автора

https://github.com/chrisbmr/Mesa-3D/blob/gallium-nine/src/gallium/state_track...

Сообщение в расылке

http://lists.freedesktop.org/archives/mesa-dev/2013-July/041900.html

Новость на форониксе

http://www.phoronix.com/scan.php?page=news_item&px=MTQxMjk

Сылка на фотки котиков

https://www.google.ru/search?q=котики&newwindow=1&client=firefox-a&am...

★★★★★

Значит ли это, что теперь можно писать нативные игры с применением DirectX 9 API? А так же значит ли это, что теперь существенно упрощается портирование существующих игр?

OldWiseCat ★★ ()

Christoph Bumiller написал Direct3D 9 state tracker и предоставил патчи в расылку месы.

Mother of bicycles...

devl547 ★★★★★ ()
Ответ на: комментарий от OldWiseCat

Учитывай тот факт что это только для открытых дров. Как я написал в стартовом сообщении раньше уже был стей трекер для прямого икса 11 и 12. Но был выкинут из месы. Одна из причин стагнации была в том что патчи для его поддержки не принимали в вино, так как они были актуальны только для свободных дров.

нативные игры с применением DirectX 9 API

Имхо ненужно.

Behem0th ★★★★★ ()
Ответ на: комментарий от Darth_Revan

Значит ли это, что теперь можно писать нативные игры с применением DirectX 9 API? А так же значит ли это, что теперь существенно упрощается портирование существующих игр?

Да, если, кхм, написать библиотеки DirectX %).

Да! Хочу нативный ДиректХ в линуксе!

cipher ★★★★★ ()
Ответ на: комментарий от Behem0th

Как я написал в стартовом сообщении раньше уже был стей трекер для прямого икса 11 и 12.

DirectX 12 ещё не родился.

Имхо ненужно.

Категорически согласен.

RussianNeuroMancer ★★★★★ ()

Толку то, игор всё равно не будет :}

Deleted ()

Да фиг знает, openGL 2.1 как-то няшнее, но многие старые игры навсегда останутся direct3d9 only, для них этот велосипед полезен.

Gorthauer ★★★★★ ()

sudo cast Novell-ch

Есть желание потестить? А то у меня под рукой нет ни одной карты для r600g драйвера.

Behem0th ★★★★★ ()
Последнее исправление: Behem0th (всего исправлений: 1)

Но зачем?? Зачем они это делают? Пусть уже прямойХ подохнет наконец, не надо его сюда тянуть, это лишь продлит его страдания.

kranky ★★★★★ ()
Ответ на: комментарий от kranky

9й в принципе уже подох, но оставил наследие в виде кучи игр. Которые хочется запускать в линуксе.

Behem0th ★★★★★ ()
Ответ на: комментарий от Behem0th

там похожу только 32 битная меса нужна, у меня 64 битная суся

Novell-ch ★★★★★ ()
Ответ на: комментарий от devl547

Mother of bicycles...

Но почему? Почему велосипед? Зачем отображать через кривой и тормозной транслятор если можно напрямую

onon ★★★ ()
Ответ на: комментарий от onon

Зачем отображать через кривой и тормозной транслятор

Действительно. Есть же винда в дуалбуте, зачем Wine.

devl547 ★★★★★ ()
Ответ на: комментарий от devl547

Есть же винда в дуалбуте

А если нету то что?

onon ★★★ ()
Ответ на: комментарий от onon

Поставить её, очевидно же, ну.

По теме: ждём бенчмарков.

x3al ★★★★★ ()
Ответ на: комментарий от onon

через кривой и тормозной транслятор в opengl если можно напрямую

onon ★★★ ()
Ответ на: комментарий от x3al

Винда не нужна. Дуалбут тем более не нужен.

onon ★★★ ()
Ответ на: комментарий от onon

А если нету то что?

То придется писать winapi. А не гонять через «кривой и тормозной» wine.

devl547 ★★★★★ ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.