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

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Сохранение OpenGL как рисунок, типа скриншота сцены 
:(
    Опции темы
Malloc
Дата 13.12.2006, 09:40 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 47
Регистрация: 16.8.2005
Где: Челябинск, ЧМЗ

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



Я использую OpenGL для вывода графики не на всем окне, а в части ее. Для этого применяю TGroupBox (Viewer), т.е. при инициализации OpenGL пишу не Хэндл окна, а Viewer'а.

Чтобы сохранить файл, я пишу:

Код

        Graphics::TBitmap *bm = new Graphics::TBitmap();

        bm->Height = Viewer->Height;
        bm->Width = Viewer->Width;

        BitBlt(bm->Canvas->Handle,0,0,Screen->Width,Screen->Height,GetDC(Viewer->Handle),0,0,SRCCOPY);

        bm->SaveToFile("123.bmp");

        TJPEGImage *jpg = new TJPEGImage();
        jpg->Assign(bm);
        jpg->SaveToFile("123.jpg");

        delete jpg;
        delete bm;


Все получается, файлы создаются и успешно. Но если часть Viewer'а заходит за низ экрана, например, то в файлах сохраняется еще и панель задач. 

Какая еще существует альтернатива этому способу?
  


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

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

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


 




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


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

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