Модераторы: Rickert, Alexeis, BorisVorontsov
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> 3D под GDI, без D3D и OGL 
:(
    Опции темы
Prog
Дата 19.4.2005, 05:16 (ссылка)    |    (голосов: 0) Загрузка ... Загрузка ... Быстрая цитата Цитата


Unregistered











пытаюсь изобрести велосипед: делаю 3D графику под GDI;
Есть проблема: как сделать Back/Front buffer ?
Точнее как их между собой обменять?
SetPixel работает слишком медленно;можть можно как то в пямяти
подменить видеобуфер окна(если таковой существует)?
Памагите!!!
  Вверх
chipset
Дата 19.4.2005, 05:34 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Экс. модератор
Сообщений: 4071
Регистрация: 11.1.2003
Где: Seattle, US

Репутация: нет
Всего: 165



Модератор: перенесено из C++:Общие вопросы.


--------------------
Цитата(Jimi Hendrix)
Well, I stand up next to a mountain
And I chop it down with the edge of my hand
PM MAIL WWW   Вверх
DENNN
Дата 19.4.2005, 10:03 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Участник Клуба
Сообщений: 3878
Регистрация: 27.3.2002
Где: Москва

Репутация: 2
Всего: 43



::BitBlt() ?
PM ICQ   Вверх
Guest
Дата 19.4.2005, 17:52 (ссылка)    |    (голосов: 0) Загрузка ... Загрузка ... Быстрая цитата Цитата


Unregistered











Используй контекст памяти совместимый с экраном CreateCompatibleDC()

Из него в окно копируй BitBlt - только не ждиот GDI скорости как от D3D. У GDI слишком длинный путь от вызова до реальноцй роприсовки.

Да, попиксельно работаь вообще не стоит. Есои хочеш работаь руками то сам строй изображение в памяти в формате экрана, оптом преобразуй это дело в картинку и выводи уже ее. Но это опять же медленно будет, под DX буджет всеравно быстрее, так как там самый коротки путь к видеокарте.
  Вверх
DeadProger
Дата 20.4.2005, 18:23 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 21
Регистрация: 30.12.2004
Где: The Earth

Репутация: нет
Всего: нет



Цитата
сам строй изображение в памяти в формате экрана, оптом преобразуй это дело в картинку и выводи уже ее

можно поподробнее smile
ps тему я создал
PM MAIL   Вверх
Madest
Дата 21.4.2005, 09:15 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 143
Регистрация: 27.11.2003
Где: Городок

Репутация: нет
Всего: нет



Где-то читал, что StretchDIBits() работает не медленней. Так ли это?
--------------------
PM MAIL   Вверх
oleg1973
Дата 21.4.2005, 09:48 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


asm fanat
****


Профиль
Группа: Экс. модератор
Сообщений: 3283
Регистрация: 16.7.2003
Где: Italy

Репутация: нет
Всего: 34



дык вроде была такая тема уже
имхо лучше в директдраве все это рисовать если уж на то пошло
там вроде как 3д нет функций но есть полезности для работы с бэк буффером для ускорения вывода графики, а BitBlt и ему подобные есть полный сакс и тормоза


--------------------
SST 465555
icq 200-512-712
PM MAIL WWW ICQ   Вверх
ZeroMem
Дата 20.5.2005, 15:25 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 25
Регистрация: 24.8.2004
Где: Комсомольск-на-Ам уре

Репутация: нет
Всего: нет



Люди, а не проще ли просто использовать новую библю GDI+. Лично мне, она очень понравилась. Там все очень просто и очень круто! Даже есть 3D преобразования 2D объектов smile
PM MAIL ICQ   Вверх
Xerx
Дата 28.5.2005, 11:25 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 17
Регистрация: 28.5.2005
Где: Калуга

Репутация: нет
Всего: нет



BitBlt для копирования контекста в контекст, есль же буфер цвета просто массив чисел, то нужно StretchDIBits. Без 'Stretch' никак... Если нужно, могу скинуть мою лабу по Машинной Графике (3D и т.д.)
PM MAIL ICQ   Вверх
Xerx
Дата 25.1.2006, 17:24 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 17
Регистрация: 28.5.2005
Где: Калуга

Репутация: нет
Всего: нет



StretchDIBits работает медленнее BitBlt, но, если размеры исходной области и приемной совпадают, то не намного. Вообще, если кому надо, могу выложить спой вариант реализации: 24-битный цвет, 32-битный z-буфер, отсечения невидимых граней, освещение(плоское, Гуро, с цветом и направлением). Все в BCB 6.0 с КУЧЕЙ(предупреждаю) кода на AMS'е. Для окна 600x600 дает 97 FPS.
PM MAIL ICQ   Вверх
Empirik
Дата 2.2.2006, 10:49 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 156
Регистрация: 28.10.2005
Где: Россия, Пермь

Репутация: нет
Всего: 1



Цитата(Xerx @ 25.1.2006, 17:24)
StretchDIBits работает медленнее BitBlt, но, если размеры исходной области и приемной совпадают, то не намного. Вообще, если кому надо, могу выложить спой вариант реализации: 24-битный цвет, 32-битный z-буфер, отсечения невидимых граней, освещение(плоское, Гуро, с цветом и направлением). Все в BCB 6.0 с КУЧЕЙ(предупреждаю) кода на AMS'е. Для окна 600x600 дает 97 FPS.

если не сложно то вышли мне на мыло [email protected]
--------------------
Постоянно удивляюсь человеческой фантазии напридумывают гаджетов
PM MAIL WWW ICQ   Вверх
Xerx
Дата 3.2.2006, 20:38 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 17
Регистрация: 28.5.2005
Где: Калуга

Репутация: нет
Всего: нет



Отправил, лови
PM MAIL ICQ   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Вы можете найти полезным что...
Alexeis
Rickert
  • Английская документация по DirectX лежит где-то здесь.
  • Английская документация по OpenGL лежит где-то там.
  • Гейм-дев у нас обсуждают где-то тут

Ждём вас! С уважением, Alexeis, Rickert.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | C/C++: Мультимедия, OpenGL/DirectX | Следующая тема »


 




[ Время генерации скрипта: 0.1045 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.