Текущий архив: 2004.08.29;
Скачать: CL | DM;
Вниз
Вывод графики - всё, что можно Найти похожие ветки
← →
Mihey © (2004-05-07 00:28) [0]Задача как раз для игр. Представьте, что у вас любым способом загружена в память картинка, большая, пускай 1024х768 или 800х600 и вам в оконном режиме её нужно сначала просто выводить, а потом на неё ещё одну картинку с блендингом, причём всё надо делать максимлаьно быстро. Простая игровая задача.
Вопрос. Перечислите все возможные способы, все возможные средства, причём самые быстрые и примерно сравните их скорость.
Первый мой способ - вывод при помощи Canvas.Draw и блендинг через Canvas.Pixels вручную.
← →
Proger (2004-05-07 11:04) [1]А мой способ пошустрее: Вывод при помощи BitBlt и блендинг через
ScanLine вручную.
← →
Думкин © (2004-05-07 11:11) [2]> Proger (07.05.04 11:04) [1]
Он это знает. Он просит предлагать и сравнивать на скорость, как в одной из его веток по доступу к пикселам, кажется.
← →
MsShtaer (2004-05-07 11:35) [3]Ребя! А использовать Direct Draw вам в голову не приходило. Я сверял скорость, ну раз в 20 быстрее ScanLine.
← →
Думкин © (2004-05-07 11:42) [4]> MsShtaer (07.05.04 11:35) [3]
Блин, вот никогда не думал что придется это делать.
> Mihey © (07.05.04 00:28)
Формулируй в следующий раз проще, а то сейчас тебя тут по осточкам разберут. %-)
> MsShtaer (07.05.04 11:35) [3]
Более чем наверняка, это приходило в голову автора сабжа. И не только это. Но он просит не просто методов. Но и чисел, насколько я понял.
Реализуй способы, сравни(на своем ПК) и выложи результаты.
← →
miek © (2004-05-07 16:16) [5]Думаю, быстрее всего будет через DDraw взять GetGDISurface и отрисовать на нем вручную.
← →
AxxxE © (2004-05-07 16:25) [6]А ещё лучше OpenGL или Direct3D - там это поддерживается на аппаратном уровне.
← →
Mihey © (2004-05-07 20:04) [7]Я имел ввиду всё - от графичеких пакетов до поддержки аппаратного ускорения, и в частности, аспекты этого дела. В частности, сравнить что да как с какой скоростью. Вы можете написать простейшие примеры этого дела на OpenGL, DirectX с Direct3D или может ещё быстрее на чём-нибудь????
2 miek:
Допустим, карта поддерживает Direct3d. Всё равно ли DirectDraw будет быстрее?
← →
miek © (2004-05-07 22:03) [8]2Mihey: Да, я уверен на 90%. Речь идет о переносе из системной памяти в видео, не так ли? 3D не катит.
← →
Landgraph © (2004-05-07 23:03) [9]Самое быстрое, конечно, прямое обращение к видеопамяти... Но, ОСи, если я не ошибаюсь, сейчас не дают доступ к видеопамяти, только через драйвера. Так что лучше всего OGL, либо DX. По моему через DX быстрее будет, но через OGL качественнее картинка.
← →
Mihey © (2004-05-07 23:15) [10]То есть, вывод через DirectX - самое быстрое из существующих средств вообще?
← →
miek © (2004-05-08 10:01) [11]>То есть, вывод через DirectX - самое быстрое из существующих средств вообще
Вообще, да.
С чисто теоретической точки зрения - есть в API возможность посылать команды видеоадапетру напрямую, но что с этого можно состричь, вопрос темный!
← →
Mihey © (2004-05-08 19:18) [12]Отлична.
← →
Mihey © (2004-05-08 19:18) [13]И всё же хотелось бы увидеть код и готовые откомпилированные примеры.
← →
AxxxE © (2004-05-08 22:20) [14]А может тебе ещё и ключ от квартиры? Проведите ему анализ, напишите примеры...
← →
Mihey © (2004-05-08 23:09) [15]2 AxxxE:
Анализ я не просил, просил простой вывод картинки в OpenGL, DirectX с Direct3d и DirectDraw c FPS. Это сложно? Долго? Муторно?
← →
cyborg © (2004-05-09 09:47) [16][15] Mihey © (08.05.04 23:09)
как ты себе это представляешь сравнение скоростей 3Д и 2Д? Это как сравнение кораблей с подводными лодками, что быстрее то и будем строить?
← →
Mihey © (2004-05-09 11:37) [17]2 Cyborg:
По-моему для данной задачи можно вполне определить.
← →
Thor © (2004-05-09 18:36) [18]
> Mihey © (09.05.04 11:37) [17]
скорость 2D вообще очень трудно оценить - все зависит от конкретного экземпляра видеокарты, монитора, и вообще всего остального компьютера.
об этом в каждом обзоре видеокарт на ixbt.com пишут :)
← →
Mihey © (2004-05-09 20:05) [19]А по подробнее, от чего зависит и как в общих чертах. Например, с монитором не очень понятно.
← →
miek © (2004-05-12 00:35) [20]>скорость 2D вообще очень трудно оценить
Тем более, что оченивать ее обычно ни к чему, потому что скорости хватает. Ну, GDI не в счет, конечно.
← →
KilkennyCat © (2004-05-12 04:48) [21][18] Thor © (09.05.04 18:36)
> Mihey © (09.05.04 11:37) [17]
скорость 2D вообще очень трудно оценить - все зависит от конкретного экземпляра видеокарты, монитора, и вообще всего остального компьютера.
Ну почему же... если делать, как просит Mihey, то можно получить относительные данные, ведь программы тестироваться будут на одном (у каждого) компьютере.
← →
KilkennyCat © (2004-05-12 04:50) [22]Но, извиняюсь, мне лениво проводить тест :) Для себя я определил уже, что работа в DirectX мне вполне достаточна.
Страницы: 1 вся ветка
Текущий архив: 2004.08.29;
Скачать: CL | DM;
Память: 0.49 MB
Время: 0.028 c