Оригинал материала: https://3dnews.ru/169187

Сравнение DirectX7 с DirectX6

Предисловие

DirectX был обьявлен впервые в 1995 году и теперь является стандартом для мультимедийных приложений разрабатываемых на платформе Windows. Встроенный в DirectX стандарт взаимодействия с 3D акселераторами (после версии 3) Direct3D был ответом на стандарт Glide от 3dfx. Седьмая версия этого стандарта сейчас находится на стадии бета тестирования и окончательный вариант будет доступен в конце лета 99. В этой статье хотелось бы акцентировать внимание на некоторых интересных изменениях и проанализировать их поближе.

Анализ системной информации:

DirectX6.1

Time of this report: 20 jun 1999, 14:17:41
Machine name: twintexel
Operating System: Windows 98 (4.10, Build 1998)
Language: Dutch (Regional Setting: Dutch)
Processor: Intel Pentium II, MMX
Memory: 64MB RAM
Page File: 62 MB used, 51 MB available
DirectX Version: DirectX 6.1 (4.06.02.0436)
DxDiag Version: 4.06.02.0436

DirectX 7.0 Beta 1

Time of this report: 6/20/1999, 15:25:25
Machine name: twintexel
Operating System: Windows 98 (4.10, Build 1998)
Language: Dutch (Regional Setting: Dutch)
Processor: Intel Pentium II, MMX, 366MHz
Memory: 64MB RAM
Page File: 32MB used, 79MB available
DirectX Version: DirectX 7.0 (4.07.00.0166)
DxDiag Version: 4.07.00.0166

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

Компоненты DirectX

DirectX 6.1
draw.dll: 4.06.02.0436
ddraw16.dll: 4.06.02.0436
ddrawex.dll: 4.86.02.0436
ddraw.vxd: 4.06.02.0436
ddhelp.exe: 4.06.02.0436
dxapi.sys: 4.86.02.0436
d3dim.dll: 4.06.02.0436
-
-
d3dramp.dll: 4.06.02.0436
d3drgbf.dll: 4.02.00.1054
d3drg16f.dll: 4.02.00.1054
d3drm.dll: 4.06.02.0436
d3dxof.dll: 4.06.02.0436
d3dpmesh.dll: 4.06.02.0436
dplayx.dll: 4.06.02.0436
dpmodemx.dll: 4.06.02.0436
dpwsockx.dll: 4.06.02.0436
dplaysvr.exe: 4.06.02.0436
dsound.dll: 4.05.01.1998
-
dsound.vxd: 4.05.01.1998
dinput.dll: 4.05.01.1998
dinput.vxd: 4.05.01.1998
vjoyd.vxd: 4.05.01.1998
msanalog.vxd: 4.05.01.1998
joy.cpl: 4.05.01.1998
gcdef.dll: 4.05.01.1998
gchand.dll: 4.05.01.1998
-
-
dmusic.dll: 4.06.02.0436
dmusic16.dll: 4.06.02.0436
dmusic32.dll: 4.06.02.0436
dmband.dll: 4.06.02.0436
dmcompos.dll: 4.06.02.0436
dmime.dll: 4.06.02.0436
dmloader.dll: 4.06.02.0436
dmstyle.dll: 4.06.02.0436
dmsynth.dll: 4.06.02.0436
-
dxsetup.exe: 4.06.02.0436
dsetup.dll: 4.06.02.0436
dsetup16.dll: 4.06.02.0436
dsetup32.dll: 4.06.02.0436
DirectX 7 beta 1
ddraw.dll: 4.07.00.0166
ddraw16.dll: 4.07.00.0166
ddrawex.dll: 4.87.00.0166
ddraw.vxd: 4.07.00.0166
ddhelp.exe: 4.07.00.0166
dxapi.sys: 4.87.00.0166
d3dim.dll: 4.07.00.0166
d3dim700.dll: 4.07.00.0166
d3dref.dll: 4.07.00.0166
d3dramp.dll: 4.07.00.0166
-
-
d3drm.dll: 4.06.02.0436
d3dxof.dll: 4.06.02.0436
d3dpmesh.dll: 4.06.02.0436
dplayx.dll: 4.07.00.0166
dpmodemx.dll: 4.07.00.0166
dpwsockx.dll: 4.07.00.0166
dplaysvr.exe: 4.07.00.0166
dsound.dll: 4.07.00.0166
dsound3d.dll: 4.07.00.0166
dsound.vxd: 4.07.00.0166
dinput.dll: 4.07.00.0166
dinput.vxd: 4.07.00.0166
joyhid.vxd: 4.87.00.0166
-
joy.cpl: 4.07.00.0166
gcdef.dll: 4.07.00.0166
-
pid.dll: 4.07.00.0166
hidgame.sys: 4.07.00.0166
dmusic.dll: 4.07.00.0166
dmusic16.dll: 4.07.00.0166
dmusic32.dll: 4.07.00.0166
dmband.dll: 4.07.00.0166
dmcompos.dll: 4.07.00.0166
dmime.dll: 4.07.00.0166
dmloader.dll: 4.07.00.0166
dmstyle.dll: 4.07.00.0166
dmsynth.dll: 4.07.00.0166
dx7vb.dll: 4.07.00.0166
-
dsetup.dll: 4.06.02.0436
-
dsetup32.dll: 4.06.02.0436
Драйверы DirectX

framebuf.dll: 4.10.00.1998
framebuf.drv: 4.10.00.1998
-
msjstick.drv: 4.05.01.1998
supervga.drv: 4.00.00.0950
tsd32.dll: 1.03.03.0007
vga.drv: 4.10.00.1998

Драйверы DirectX

framebuf.dll: 4.10.00.1998
framebuf.drv: 4.10.00.1998
msanalog.vxd: 4.05.01.1998
msjstick.drv: 4.05.01.1998
supervga.drv: 4.00.00.0950
tsd32.dll: 1.03.03.0007
vga.drv: 4.10.00.1998
vjoyd.vxd: 4.05.01.1998

Графика:

В новой версии расширена поддержка 3D акселераторов включением поддержки аппаратной реализации наложения освещения и трасформации на выделенном 3D акселераторе, за счёт чего освобождается большое количество процессорного времени, что будет например не лишним при реализации хорошего AI или чего либо ещё, требующего интенсивной работы процессора без использования дополнительного железа. Так же стало возможно отображать эффекты отражения в воде, эффект света, проходящего через стекло и многие другие, приближающие игры к реальности. Можно создавать более сложные модели не думая о системных требованиях, в общем создавать более реалистичные игры.

Звук:

DirectMusic
Version: 1.00.16.0002
DirectMusic
Version: 1.00.16.0002

Ничего нового в этом плане в новой версии нет, но в финальной версии будут улучшены алгоритмы 3D Sound и будет встроенная поддержка аппаратного микширования и расширения позиционированного 3D звука по EAX. Всё это позволит создавать более богатый звук в приложениях. Кроме того новая версия должна быть на 20% быстрее старой.

Производительность:



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

Дополнительные материалы:

DirectX от WinG до Fahrenheit
Коротко о DirectX7
OpenGL 2.0: программируемый, масштабируемый и расширяемый
Что такое OpenGL?
OpenML. Первый взгляд


Оригинал материала: https://3dnews.ru/169187