Форум: "Media";
Текущий архив: 2004.10.17;
Скачать: [xml.tar.bz2];
ВнизКак можно рисовать быстрее GDI? Найти похожие ветки
← →
kingdom (2004-07-21 18:08) [0]Я думал использовать DirectX, а точнее DirectDraw, но там все заточено под 3D, т.е. чтобы нарисовать квадрат, нужно испльзовать Direct3D, а мне нужно делать простые вещи
- рисовать линии/окружности и т.д.
- закрашивать
но очень быстро, быстрее чем это делает GDI.
Можно ли использовать для этих целей DirectDraw?
А что вообще можно использовать для этих целей?
← →
Palladin © (2004-07-21 18:20) [1]Можно конечно, можно и http://www.delphikingdom.com/asp/viewitem.asp?catalogid=772
← →
NOX (2004-07-21 18:31) [2]Естественно! С использованием DirectDraw можно сделать 2D графику любой сложности. В сети об этом море инфы.
← →
Красный молоток (2004-07-21 18:34) [3]//а точнее DirectDraw, но там все заточено под 3D
DirectDraw заточен под 3D?!!!
← →
kingdom (2004-07-21 18:45) [4]>Palladin
Спасибо за ссылку. Как я понял, GDI+ это более современный и удобный вариант чем просто GDI. Однако производительность его под впросом.
>NOX
Может я не так ищу, но что-то мне пока ничего не попалось =))
практически всегда под 2D графикой понимаются 2D игрушки, а они пишутся с использованием спрайтов, т.е. рисование линий, окружностей там просто нет. А мне надо именно это. Если вы подскажите мне источник, буду вам очень признателен.
>Красный молоток
Пожалуй не точно выразился, DirectX заточен под 3D, мне так кажется.
← →
kingdom (2004-07-21 18:46) [5]>NOX
а что я напишу между
DirectDrawSurface7.Lock
и
DirectDrawSurface7.Unlock
??
с помощью чего рисовать-то
← →
Palladin © (2004-07-21 18:52) [6]
> [4] kingdom (21.07.04 18:45)
Статью то читал? почитай внимательней первые абзацы? Прямой доступ к памяти, практически тоже, что и DirectDraw ранее 7 версии.
> а что я напишу между
> DirectDrawSurface7.Lock
> и
> DirectDrawSurface7.Unlock
> ??
> с помощью чего рисовать-то
С помощью примитивов.
← →
kingdom (2004-07-21 19:08) [7]>Palladin
Статью смотрел, однако упоминание о "прямом доступе к памяти" которое есть в тексте не относится к GDI+
"Как вы все знаете в DELPHI до сих пор используется библиотека GDI предоставляющая разработчику скудный (по сегодняшним меркам) набор функций для рисования, поэтому программистам приходится идти на всякие ухищрения при работе с графикой, используя DirectX, OpenGL или библиотеки доступа непосредственно к видеопамяти. Данная библиотека существенно упростить..."
Как мне кажется, это упоминание относится к слову "ухищрения", а не к "данной библиотеке". Вы согласны?
"С помощью примитивов."
Вы имеете ввиду использовать DDraw и GDI+ совместно?
← →
Огромное Кулясищще © (2004-07-21 20:29) [8]> Как можно рисовать быстрее GDI?
www.g32.org см. Graphic32
> с помощью чего рисовать-то
Вывод пикселя через прямоугольник 1х1. Попиксельно рисуй примитивы.
← →
kingdom (2004-07-23 15:53) [9]>Огромное Кулясищще
Я посмотрел g32, крутая штучка!!
На сколько я понял она работает на прямую с памятью?
На их сайте нету описалова как она работает =(
← →
pavia (2004-07-23 17:05) [10]То kingdom Что работает быстрее не знаю.Но 3 вареанта. OpenGL - много всего,DirectDrow-чучуть 2d приметивов.Написать сваи примитивы.
> Вывод пикселя через прямоугольник 1х1.
Думаю что это будет еще более тормознута.
← →
kingdom (2004-07-23 17:52) [11]>pavia
В DirectDraw нет примитивов для рисования.
Как мне кажется, OpenGL и DirectX заточены для 3D, поэтому использовать их для 2D (line, circle, rect и т.д.) смысла нет. Может использовать, например DirectDraw для прямогодоступа как памяти, а рисовать, например через GDI или написать что-то свое.
Как вы думаете?
← →
Огромное Кулясищще © (2004-07-23 18:03) [12]>Я посмотрел g32, крутая штучка!!
На сколько я понял она работает на прямую с памятью?
На их сайте нету описалова как она работает =(
Примерно так. На сайте описнаия нет, но код то открыт. :)
>Как мне кажется, OpenGL и DirectX заточены для 3D, поэтому использовать их для 2D (line, circle, rect и т.д.) смысла нет. Может использовать, например DirectDraw для прямогодоступа как памяти, а рисовать, например через GDI или написать что-то свое.
Скажем, смысл есть, потому что это очень быстро. Например, есть программа 3DPaint - как PhotoShop, но только с hardware ускорением.
DirectDraw устарел, он больше не обновляется.
Далее, твоя идея совместить DirectDraw и GDI не нова. Например, miek уже написал подобную библиотеку (SpriteUtils 2), ты можешь скачать её: miek.narod.ru
← →
kingdom (2004-07-23 18:34) [13]>Огромное Кулясищще
Ну да, я в сорцы и полез =)
И идея не моя =)
А где-нить есть теоритический материал на эту тему?
А то книжек таких в магазине нету =( и в инете что-то ничего не попадалось пока
← →
pavia (2004-07-23 19:00) [14]OpenGL является на данный момент одним из самых популярных программных интерфейсов (API) для разработки приложений в области двумерной и трехмерной графики. Стандарт OpenGL был разработан и утвержден в 1992 году ведущими фирмами в области разработки программного обеспечения, а его основой стала библиотека IRIS GL, разработанная Silicon Graphics.
DirectX - заточен под 3D я спорить не буду.Но в его комплекте есть возможность использовать 2D приметивы.Линия точка триугольник.Я невижу ничего пред осудительного в использование 3D для создания плоских фигур.Так как ресование 3D занимаються 3D ускорители .Вот личии от 2D ресование которых занимается ЦП.
← →
kingdom (2004-07-23 19:15) [15]>pavia
OpenGL и DirectX это одного поля ягоды =)
Я здесь уже писал, но повторюсь
...практически всегда под 2D графикой понимаются 2D игрушки, а они пишутся с использованием спрайтов! Это значит быстрое копирование и обработка изображений, а нужно РИСОВАНИЕ линий, окружностей и заливка фигур.
← →
pavia (2004-07-23 19:30) [16]>kingdom
В OpenGl есть рисование линей триугольников многоугольников их заливак и многое др.Если ты незнаеш как. Читай М.Краснова.
Страницы: 1 вся ветка
Форум: "Media";
Текущий архив: 2004.10.17;
Скачать: [xml.tar.bz2];
Память: 0.48 MB
Время: 0.046 c