Re[7]: кто знает как плавно скроллить игровое поле(VC)?
От: Аноним  
Дата: 12.09.03 13:03
Оценка:
Здравствуйте, Hawk, Вы писали:

H>В общем, насколько я понял, основная идея — это копировать изображение из back-буфера на экран узкими полосами, предварительно сдвигая текущее содержимое экрана на ширину полосы. Чем меньше ширина полосы — тем плавнее прокрутка. Это, так сказать, общий принцип... Как конкретно это реализовать средствами DirectX — не знаю, ибо не в курсе.



Нужно что бы твои графические обьекты имели виртуальные координаты и реальные...

Виртуальные координаты это те которые на карте(карта хоть в 1 000 000 экранов) ее не хранят...
Map_Max_Width=max(Object[1..CountObjects].Width)
Map_Max_Height=max(Objects[1..CountObjects].Height)

Реальные координаты — это экранные координаты...

Так вот когда скролируешь, то меняються виртуальные координаты, тогда ты вычитываешь те обьекты которые попадают в область видимости по карте, рассчитывашь их реальные координаты, блитишь на BackBuffer, потом соответственно на PrimaryBuffer...

Работает плавнее некуда...
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.