Модераторы: Rickert
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Сохранение сцены после нажатия ALT + TAB, Сохранение сцены после нажатия ALT + TAB 
:(
    Опции темы
ZC1989
  Дата 23.7.2006, 13:23 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 468
Регистрация: 17.7.2006
Где: Нижний Новгород; Россия

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



Подскажите, как на Direct3D9 обеспечить сохранение сцены после нажатия ALT + TAB, приложение работает полноэкранно. Раньше получалось сделать это, но тогда приложение было написано совсем по-другому, сейчас  же следующие шаги не помогают

Код

long DrawScene()
{
pDevice->Clear(0, NULL, D3DCLEAR_TARGET, D3DCOLOR_XRGB(63, 63, 63), 1.0f, 0);
HRESULT hr;
hr = pDevice->TestCooperativeLevel();
if(hr == D3DERR_DEVICELOST) return;
if(hr == D3DERR_DEVICENOTRESET) pDevice->Reset(&d3dpp);
pDevice-> BeginScene();
…
pDevice->EndScene();
pDevice->Present(NULL, NULL, NULL, NULL);
return 0;
}
…
bool CreateObject()
{
    // Тут координаты вершин и т.п.
…
// вспомогательные переменные
HRESULT hres;
void * pBuf;

// создание вершинного буфера
hres = pDevice->CreateVertexBuffer( sizeof(MyVertex) *  NumVerts,
0 , D3DFVF_MYVERTEX, D3DPOOL_MANAGED, &pVertexBuffer, 0);
if( FAILED(hres) )
 return false;

// заполнение вершинного буфера
hres = pVB->Lock( 0, sizeof(MyVertex) * NumVerts, &pBuf, 0 );
if( FAILED(hres) )
return false;
memcpy( pBuf, pMyVerts, sizeof(MyVertex) * NumVerts);
pVB->Unlock();

// создание индексного буфера
hres = pDevice->CreateIndexBuffer( sizeof(short) * NumInds, 
0, D3DFMT_INDEX16, D3DPOOL_DEFAULT,&pIB, 0);
if( FAILED(hres) )
return false;

// заполнение индексного буфера
hres = pIB->Lock( 0, sizeof(short) * NumInds, &pBuf, 0 );
if( FAILED(hres) )
return false;
memcpy( pBuf, pInds, sizeof(short) * NumInds);
pIB->Unlock();

return true;
}


Раньше это работало, но тогда сцена была 2D и написана с другими типами функций, пробовал всё, что в голову приходило, ничего не вышло… ошибок при работе нет, но и после сворачивания я вижу вместо прекрасно вращающегося куба белый экран… 


--------------------
озарение настанет позже, когда поймём больше... (Сo. Stigmata)
PM MAIL ICQ   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Программирование игр, графики и искуственного интеллекта"
Rickert

НА ЗЛОБУ ДНЯ: Дорогие посетители, прошу обратить внимание что новые темы касающиеся новых вопросов создаются кнопкой "Новая тема" а не "Ответить"! Любые оффтопиковые вопросы, заданные в текущих тематических темах будут удалены а их авторы, при рецедиве, забанены.

  • Литературу, связанную с программированием графики, обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы связанные с программированием графики и мультимедии на языках С++ и Delphi
  • Вопросы по реализации алгоритмов рассматриваются здесь

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Rickert.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Программирование игр, графики и искусственного интеллекта | Следующая тема »


 




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


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

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