Модератор: Mikle
http://tuapse-mikle.narod.ru/World.zip
FireFenix писал(а):Не качается
DODge писал(а): афигенно!
Effect.shader = Direct3D.Effect.FromString(RenderDevice, HLSLtext, Nothing, Nothing, Direct3D.ShaderFlags.None, Nothing, StringData)
StringData = Effect.shader.Disassemble(False)
DODge писал(а):в строковой переменной SrtingData ты получаешь ASM шейдер
MDX:
139 687 500
141 875 000
VС++9 D3DXMatrixMultiply (в disasm-e реализован через FPU):
33 750 000
32 968 750
VC++9 самописный через ссылки на матрицы (r11=a11*b11+..) ключи: /fp:fast
65 000 000
64 843 750
с ключами: /fp:fast /arch:SSE2 (по генерации кода ничего не изменилось, а время просто.. раз на раз)
63 593 750
62 500 000
VC++9 mul4x4 (где-то здесь на форуме у кого-то была реализация через SSE mul4x4):
22 968 750
23 125 000
SlimDX (september 2008, написан на C++\CLI):
175 937 500
178 281 250
XNA2-Matrix, а также XNA3-Matrix, а также самописный mul в простой консоли:
~92 000 000
Mikle писал(а):Вот тест:
http://tuapse-mikle.narod.ru/TestMatrix.zip
Моя DLL почти вдвое быстрее Микрософтовской dx8vb...
хотя Микрософтовская подключена в TLB, а моя подключена через Declare, что медленнее!
Посмотри результат у себя.
s2 = Timer
m1.m11 = 1: m1.m12 = 0: m1.m13 = 0: m1.m14 = 0
m1.m21 = 0: m1.m22 = 1: m1.m23 = 0: m1.m24 = 0
m1.m31 = 0: m1.m32 = 0: m1.m33 = 1: m1.m34 = 0
m1.m41 = 0: m1.m42 = 0: m1.m43 = 0: m1.m44 = 1
m2.m11 = 1: m2.m12 = 0: m2.m13 = 0: m2.m14 = 0
m2.m21 = 0: m2.m22 = 1: m2.m23 = 0: m2.m24 = 0
m2.m31 = 0: m2.m32 = 0: m2.m33 = 1: m2.m34 = 0
m2.m41 = 0: m2.m42 = 0: m2.m43 = 0: m2.m44 = 1
Mikle писал(а):Демка:.
VB6 и её представители всегда славились консерватизмом.
StimorolD3DX писал(а):Mikle писал(а):Демка:.
Шикарно Mikle, такое бы лет 5 назад
djalex777 писал(а):А что мешает таким же образом портировать DX10 или 11?
Mikle писал(а):djalex777 писал(а):А что мешает таким же образом портировать DX10 или 11?
Ничего, только зачем? Этот проект - не убийца Крайзиса, а скромный порт для производства казуалок. ИМХО dx9 для этого подходит в самый раз. Устроил бы и dx8, если бы не проблемы с распространением dx8vb.dll, то же демку можно сделать и на PS_1_4, VS_1_1, просто мне PS_2_0 больше нравится.
Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 0