Извините, ничего не найдено.

Не расстраивайся! Лучше выпей чайку!
Регистрация
Справка
Календарь

Вернуться   forum.boolean.name > Программирование игр для компьютеров > Blitz3D > 2D-программирование

2D-программирование Вопросы, касающиеся двумерного программирования

Ответ
 
Опции темы
Старый 23.05.2007, 14:28   #1
dimanche13
Мастер
 
Регистрация: 19.03.2007
Сообщений: 1,039
Написано 153 полезных сообщений
(для 252 пользователей)
плавный скроллинг в тайл движке?

Сделал скроллинг по-тайловый, вот так:

Method Draw()
For Local x:Byte = 0 Until VisibleX
For Local y:Byte = 0 Until VisibleY
If Map[x + CameraX + ((y + CameraY) * Width)] = False
Tile0.Draw( (x * TTile.Width) , (y * TTile.Height) )
Else
Tile1.Draw( (x * TTile.Width) , (y * TTile.Height) )
End If
Next
Next
End Method

Блин, не могу сделать плавный (попиксельный) скроллинг карты. Может кто знает как это делается???
(Offline)
 
Ответить с цитированием
Старый 23.05.2007, 14:30   #2
johnk
Легенда
 
Регистрация: 01.10.2006
Сообщений: 3,705
Написано 296 полезных сообщений
(для 568 пользователей)
Re: плавный скроллинг в тайл движке?

При прибавлении значения домножай на что нибудь Например на *0.1
(Offline)
 
Ответить с цитированием
Старый 23.05.2007, 14:55   #3
dimanche13
Мастер
 
Регистрация: 19.03.2007
Сообщений: 1,039
Написано 153 полезных сообщений
(для 252 пользователей)
Re: плавный скроллинг в тайл движке?

не понял что домножатья? у меня ф-ция апдэйт :
Method Update()

If KeyDown(KEY_UP) CameraY :- 1 If KeyDown(KEY_DOWN) CameraY :+ 1
If KeyDown(KEY_RIGHT) CameraX :+ 1
If KeyDown(KEY_LEFT) CameraX :- 1
end method

что домножать то?
(Offline)
 
Ответить с цитированием
Старый 23.05.2007, 14:58   #4
johnk
Легенда
 
Регистрация: 01.10.2006
Сообщений: 3,705
Написано 296 полезных сообщений
(для 568 пользователей)
Re: плавный скроллинг в тайл движке?

Ну или не +1 а +0.01
(Offline)
 
Ответить с цитированием
Старый 23.05.2007, 15:00   #5
dimanche13
Мастер
 
Регистрация: 19.03.2007
Сообщений: 1,039
Написано 153 полезных сообщений
(для 252 пользователей)
Re: плавный скроллинг в тайл движке?

Нет, не работает, а другие варианты есть?
(Offline)
 
Ответить с цитированием
Старый 23.05.2007, 20:52   #6
ZanoZa
Элита
 
Регистрация: 02.10.2005
Сообщений: 1,789
Написано 132 полезных сообщений
(для 252 пользователей)
Re: плавный скроллинг в тайл движке?

тоже самое сделать только объявить cameraX и cameraY как флоат
(Offline)
 
Ответить с цитированием
Старый 24.05.2007, 00:01   #7
moka
.
 
Регистрация: 05.08.2006
Сообщений: 10,429
Написано 3,454 полезных сообщений
(для 6,863 пользователей)
Re: плавный скроллинг в тайл движке?

Сделать 2 значения скорости, и одно значение максимальной скорости, затем к значениям CameraX и CameraY, прибавлять их каждый цикл, а их изменять так:
Пра нажатии вправо:
CamXSp#=CamXSp+((CamMaxSp#-CamXSp)*.05)
Влево:
CamXSp#=CamXSp+((-CamMaxSp#-CamXSp)*.05)

И после всех изменений снижение скорости:
CamXSp.97

Ну и т.п, .05 это значение плавности, с ним можешь поиграться, ну в этом роде делай дальше, примерно так. Я такие плавности применяю, т.к. в них есть эффект резкого разгона.
(Offline)
 
Ответить с цитированием
Старый 25.05.2007, 13:59   #8
dimanche13
Мастер
 
Регистрация: 19.03.2007
Сообщений: 1,039
Написано 153 полезных сообщений
(для 252 пользователей)
Re: плавный скроллинг в тайл движке?

MoKa а можно поподробнее, примерчик какой-нить...
(Offline)
 
Ответить с цитированием
Старый 28.05.2007, 01:16   #9
moka
.
 
Регистрация: 05.08.2006
Сообщений: 10,429
Написано 3,454 полезных сообщений
(для 6,863 пользователей)
Re: плавный скроллинг в тайл движке?

Как понял вид сверху?
Вот, давненько делал.
1,2,3 эффекты. WASD перемещение.
(Offline)
 
Ответить с цитированием
Старый 28.05.2007, 14:11   #10
dimanche13
Мастер
 
Регистрация: 19.03.2007
Сообщений: 1,039
Написано 153 полезных сообщений
(для 252 пользователей)
Re: плавный скроллинг в тайл движке?

Мока ну ты даешь! Я начинающий, а ты мне такой крутяк предлагаешь ))) я просто в шоке ! Я такое никогда не напишу. Попроще бы чего-нибудь.
(Offline)
 
Ответить с цитированием
Старый 29.05.2007, 02:20   #11
moka
.
 
Регистрация: 05.08.2006
Сообщений: 10,429
Написано 3,454 полезных сообщений
(для 6,863 пользователей)
Re: плавный скроллинг в тайл движке?

Там всё просто, значит истинна в этих строках:

CamSp#=5 ;Skorostj
CamXSp=(CamXSp+(((IKdD-IKdA)-CamXSp)*.05))
CamZSp=(CamZSp+(((IKdS-IKdW)-CamZSp)*.05))
Gx:+(CamXSp*CamSp)
Gz:+(CamZSp*CamSp)
Gx и Gz - это глобальные координаты камеры.
CamXSp и CamZSp, объяви в глобали.

ЗЫ По секрету, это 3 мой код на БМаксе
(Offline)
 
Ответить с цитированием
Старый 29.05.2007, 15:29   #12
dimanche13
Мастер
 
Регистрация: 19.03.2007
Сообщений: 1,039
Написано 153 полезных сообщений
(для 252 пользователей)
Re: плавный скроллинг в тайл движке?

IKdD-IKdA - а что это такое? я так понял что это кнопки для движения камеры. Но почему они друг из друга вычитаются? глобальные координаты камеры это верхний левый или центр камеры?
(Offline)
 
Ответить с цитированием
Старый 29.05.2007, 18:49   #13
jimon
 
Сообщений: n/a
Re: плавный скроллинг в тайл движке?

ну смотри (я про кнопки)
есть выражение ( A-B )
если зажата A то выражение = 1
если B то = -1
если A и B то = 0
тоесть если нажать A то поедем прямо (или куда нам надо)
если B то поедем в противоположную сторону
если A и B то никуда не поедем
 
Ответить с цитированием
Старый 29.05.2007, 20:29   #14
moka
.
 
Регистрация: 05.08.2006
Сообщений: 10,429
Написано 3,454 полезных сообщений
(для 6,863 пользователей)
Re: плавный скроллинг в тайл движке?

ну смотри (я про кнопки)
есть выражение ( A-B )
если зажата A то выражение = 1
если B то = -1
если A и B то = 0
тоесть если нажать A то поедем прямо (или куда нам надо)
если B то поедем в противоположную сторону
если A и B то никуда не поедем
Именно так.
IKd? - это переменная, к которой привязана кнопка, тоесть:
IKdD=KeyDown(Непомню ИД буквы D)

глобальные координаты камеры это верхний левый или центр камеры?
Левого верхнего.
(Offline)
 
Ответить с цитированием
Старый 30.05.2007, 15:29   #15
dimanche13
Мастер
 
Регистрация: 19.03.2007
Сообщений: 1,039
Написано 153 полезных сообщений
(для 252 пользователей)
Re: плавный скроллинг в тайл движке?

Блин с кнопками, это прикольно, я понял. ) У меня получилось, правда есть такая ерунда, что камера продолжает движение после отпускания кнопки до тех пор пока не нажмешь другую кнопку.
(Offline)
 
Ответить с цитированием
Ответ


Опции темы

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Скроллинг в 2д мире. Данил FAQ и уроки 15 06.07.2009 18:54
Редактор карт для игр на движке irrlicht Dronchik 3D Моделирование 5 20.01.2008 18:33
Конкурс на лучший салют в 3D движке! Crystal Форумные конкурсы 81 05.01.2008 02:17
Скроллинг мышой X-Ranger 3D-программирование 3 29.05.2007 01:58
Плавный прыжок mr.DIMAS Полезные функции 2 03.03.2007 16:06


Часовой пояс GMT +4, время: 15:46.


vBulletin® Version 3.6.5.
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Перевод: zCarot
Style crйe par Allan - vBulletin-Ressources.com