Настройка монитора DX8

Работа с 2D и 3D графикой, видео, звуком.

Модератор: Mikle

D'alex
Продвинутый пользователь
Продвинутый пользователь
Аватара пользователя
 
Сообщения: 144
Зарегистрирован: 08.05.2004 (Сб) 20:11
Откуда: Moscow

Настройка монитора DX8

Сообщение D'alex » 21.09.2004 (Вт) 20:35

Подскажите пожалуйста или даете ссылочку!
Как можно изменить разрешение монитора
без выхода из проги?
(использование дополнительной формы настройки
и выбора видеоадаптера заранее отвергаеться)

Vovik
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 643
Зарегистрирован: 02.08.2003 (Сб) 15:14
Откуда: Belarus, Minsk

Re: Настройка монитора DX8

Сообщение Vovik » 21.09.2004 (Вт) 21:06

Я чуть-чуть не понял... если ты имеешь ввиду применить новые настройки в полноэкранном режиме, то останавливаешь цикл рендеринга и d3ddevice.reset d3dpp :roll:

D'alex
Продвинутый пользователь
Продвинутый пользователь
Аватара пользователя
 
Сообщения: 144
Зарегистрирован: 08.05.2004 (Сб) 20:11
Откуда: Moscow

Сообщение D'alex » 22.09.2004 (Ср) 19:00

Ну допустим...
А как быть стеми обьектами которые уже
загружены в пямять и настроены под определенное разрешение монитора?

Меня интересует техника вопроса в общих чертах...или примерчик...плиз

Vovik
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 643
Зарегистрирован: 02.08.2003 (Сб) 15:14
Откуда: Belarus, Minsk

Сообщение Vovik » 22.09.2004 (Ср) 20:15

хм... единственное, что нужно перестраивать, это все, что связано с D3DDevice (фильтры текстур и т.д.), а остальное подстраиваешь под разрешение... читаешь параметры, если например у тебя стандартное 800х600, то коэффициент преобразования будет (800/1024) - по иксу (по игрику аналогично),при том что 1024 - новое разрешение окна.... посмотри пример с моим движком..там вначале меню.... посмотри, как оно работает - там все это осуществлено..... :roll:

D'alex
Продвинутый пользователь
Продвинутый пользователь
Аватара пользователя
 
Сообщения: 144
Зарегистрирован: 08.05.2004 (Сб) 20:11
Откуда: Moscow

Сообщение D'alex » 23.09.2004 (Чт) 7:06

Спасибо ща гляну...

D'alex
Продвинутый пользователь
Продвинутый пользователь
Аватара пользователя
 
Сообщения: 144
Зарегистрирован: 08.05.2004 (Сб) 20:11
Откуда: Moscow

Сообщение D'alex » 23.09.2004 (Чт) 17:51

Извени... но кроме подгонки спрайтов под разрешение экрана там ни хр... нету!!!
Подогнать позицию и размеры обьектов под
настройки монитора я могу!!!
Мне нужна концепция переклкючения разрешения в полноэкранном режиме...
Если я уже работаю с определенными настройками , обьявил необходимые классы, создал и загнал в памятькучу обьектов игрового меню и хочу перейти в другой режим с другими
настройками, то что...
То что остановить основной цикл -это я понимаю.
То что надо удалить прежние и вернуться вначало к новым настройкам-это я тоже понимаю.
Новедь ни хр... не работает !!!
Может есть еще какие тонкости ?
Ну хоть кто- нить че-нить предложит ?... плиз
Или я торможу и все слишком просто ?

Vovik
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 643
Зарегистрирован: 02.08.2003 (Сб) 15:14
Откуда: Belarus, Minsk

Сообщение Vovik » 23.09.2004 (Чт) 18:48

да блин....вот все подогнано.... останавливаешь цикл рендеринга.... задаешь новые параметры устройства (device) , делаешь ресет, старт цикла - и все зеергуд.... больше ничего не надо выгружать или еще чего-нть.... мой двиган во всяком случае все нормально делает и никаких глюков нет. (а, в некоторых объектах типа шрифта есть функция OnResetDevice или OnReset - не помню, но ее тоже надо вызывать.... )вот и все. :roll:

D'alex
Продвинутый пользователь
Продвинутый пользователь
Аватара пользователя
 
Сообщения: 144
Зарегистрирован: 08.05.2004 (Сб) 20:11
Откуда: Moscow

Сообщение D'alex » 25.09.2004 (Сб) 16:36

Все сделал как написано ...
Вылезает ошибка памяти и именно на Device.Reset d3dWindow ... Я идиот! Убейте меня, кто-нибудь!???

Vovik
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 643
Зарегистрирован: 02.08.2003 (Сб) 15:14
Откуда: Belarus, Minsk

Сообщение Vovik » 25.09.2004 (Сб) 21:52

D'alex писал(а):Все сделал как написано ...
Вылезает ошибка памяти и именно на Device.Reset d3dWindow ... Я идиот! Убейте меня, кто-нибудь!???
:shock: Странно!!! У меня - все работает и именно по тому принципу, что я описывал.... Елки, вы же в редакторе приминяли это(смена размеров окна).... неужели там не работает??? В крайнем случае - копай SDK DX8.... :roll:

D'alex
Продвинутый пользователь
Продвинутый пользователь
Аватара пользователя
 
Сообщения: 144
Зарегистрирован: 08.05.2004 (Сб) 20:11
Откуда: Moscow

Сообщение D'alex » 26.09.2004 (Вс) 8:48

В оконном режиме все пашет так как нужно...
В полноэкранном - стопор...
Ладно буду копать...

d3drm
Астролог
Астролог
Аватара пользователя
 
Сообщения: 2873
Зарегистрирован: 29.05.2002 (Ср) 23:34
Откуда: МаСКвА

Сообщение d3drm » 26.09.2004 (Вс) 11:09

А у меня ее баг вылетает со шрифтами... Чтобы это могло значить? Может знаешь, Vova? ))
ХЎ

Vovik
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 643
Зарегистрирован: 02.08.2003 (Сб) 15:14
Откуда: Belarus, Minsk

Сообщение Vovik » 26.09.2004 (Вс) 18:25

d3drm писал(а):А у меня ее баг вылетает со шрифтами... Чтобы это могло значить? Может знаешь, Vova? ))
Попробуй вместо OnResetDevice вызывать OnLostDevice.... я так делал... :roll:

D'alex
Продвинутый пользователь
Продвинутый пользователь
Аватара пользователя
 
Сообщения: 144
Зарегистрирован: 08.05.2004 (Сб) 20:11
Откуда: Moscow

Сообщение D'alex » 27.09.2004 (Пн) 20:00

Народ - ПОМОГИТЕ !!!!!
Device.Reset d3dWindow-НЕ РАБОТАЕТ
в полноэкранном режиме...выдает ошибку ОС приложения VB и вылетает из редактора...???
На других компах написанные приложения работают как положено.
В чем проблема???

Vovik
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 643
Зарегистрирован: 02.08.2003 (Сб) 15:14
Откуда: Belarus, Minsk

Сообщение Vovik » 27.09.2004 (Пн) 20:23

А какой ты z-буфер ставишь? и вообще, если у тебя на рабочем столе стоит 16 бит, то кроме 16-ти битного в оконном больше ничего не катит.... и вывали кусок кода посмотреть, а лучше пример с тем куском, где именно не работает.... :roll:

D'alex
Продвинутый пользователь
Продвинутый пользователь
Аватара пользователя
 
Сообщения: 144
Зарегистрирован: 08.05.2004 (Сб) 20:11
Откуда: Moscow

Сообщение D'alex » 28.09.2004 (Вт) 19:47

Public Sub ResetDeviceFullscreen(Width As Long, Height As Long)

With d3dpp
.SwapEffect = D3DSWAPEFFECT_FLIP
.BackBufferCount = 1
.BackBufferWidth = Width
.BackBufferHeight = Height
.Windowed = False
.EnableAutoDepthStencil = 1
End With

d3dDevice.Reset d3dpp - вот здесь не работает...???

'MainFont.OnResetDevice
MainFont.OnLostDevice
End Sub


Вернуться в Мультимедиа

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 22

    TopList