![]() |
![]() ![]() |
![]() |
Shura |
![]()
Сообщение
#1
|
![]() Пионер ![]() ![]() Группа: Пользователи Сообщений: 136 Пол: Мужской Реальное имя: Александр Репутация: ![]() ![]() ![]() |
Допустим, у нас есть две видеостраницы, и нужно сделать анимацию нескольких частично накладывающихся друг на друга изображений.
Чё то я понять никак не могу.... Рисуем все изображения на "задней" странице, а потом копируем её в видимую? Так что ли? Но это ж медленно... Есть ли другой способ? -------------------- Старайтесь восполнять пробелы в области незнания! ;-D
|
volvo |
![]()
Сообщение
#2
|
Гость ![]() |
Цитата(Shura @ 2.04.05 15:56) Рисуем все изображения на "задней" странице, а потом копируем её в видимую? Так что ли? Но это ж медленно... Да нет, не совсем так... Если "копировать" видеостраницы одну в другую, то смысл в чем? Видеостраницы переключаются ... Поиском пользовался? Эта тема уже поднималась... Например, здесь: http://forum.pascalnet.ru/index.php?showtopic=2417 |
Shura |
![]()
Сообщение
#3
|
![]() Пионер ![]() ![]() Группа: Пользователи Сообщений: 136 Пол: Мужской Реальное имя: Александр Репутация: ![]() ![]() ![]() |
А вот ещё проблемка. Если просто рисовать и переключать видеостраницу, то fps напрямую зависит от кол-ва рисуемого. Так как же зафиксировать время между переключениями?
-------------------- Старайтесь восполнять пробелы в области незнания! ;-D
|
Shura |
![]()
Сообщение
#4
|
![]() Пионер ![]() ![]() Группа: Пользователи Сообщений: 136 Пол: Мужской Реальное имя: Александр Репутация: ![]() ![]() ![]() |
Может вопрос не совсем ясен?
Ну вот, например. У какой-нибудь игры нормальное фпс 60. На нормальном компе бежим от одного дерева к другому за 15 секунд. Но это ж не значит что на слабеньком компе, где 15 фпс, мы будем бежать целую минуту! Т.е. тут какие-то кадры по необходимости отбрасываются. Но и на КРУТЮЩЕМ компе мы не будем "пролетать" это расстояние за секунду. Тут уж некоторые кадры отбрасываются "умышленно". Может это все и совсем не так, но на первый взгляд так и выглядит. Кто шарит или мысли есть какие - поделитесь! -------------------- Старайтесь восполнять пробелы в области незнания! ;-D
|
Дож |
![]()
Сообщение
#5
|
![]() Бывалый ![]() ![]() ![]() Группа: Пользователи Сообщений: 179 Пол: Мужской Репутация: ![]() ![]() ![]() |
Все спрайты должны зависеть от реального времени и подстраиваются под него.
Цитата(Shura) ...бежим от одного дерева к другому... Засекаем время, когда персонаж начал бежать от дерева. Когда обновляем положение спрайтов, расчщитываем, где должен быть персонаж, зная во сколько он начал бежать, в какую сторону, с какой скоростью и откуда. Теперь сохраним новое положение персонажа, направление, скорость и текущее время. И так далее расчитываем до тех пор, пока персонаж не окажется в пункте назначения, в данном случае у второго дерева... ;) Сообщение отредактировано: Дож - 3.06.2005 12:53 -------------------- Доброго времени суток.
:nnn: |
Shura |
![]()
Сообщение
#6
|
![]() Пионер ![]() ![]() Группа: Пользователи Сообщений: 136 Пол: Мужской Реальное имя: Александр Репутация: ![]() ![]() ![]() |
Цитата(Дож @ 3.06.05 13:51) ...рассчитываем, где должен быть персонаж... Получается надо ещё не только "себя" ""рассчитать", но и остальные динам. объекты, так что ли? Значит вывод этих объектов нужно делать в самую последнюю очередь, после всех остальных подсчётов? -------------------- Старайтесь восполнять пробелы в области незнания! ;-D
|
Dark |
![]()
Сообщение
#7
|
![]() Знаток ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 408 Пол: Мужской Репутация: ![]() ![]() ![]() |
так и делается - сначало расчет изменений сцены а потом вывод графики =)
-------------------- - Где я?
- Во тьме. - В какой тьме? - Во тьме твоего мозга. |
Archon |
![]()
Сообщение
#8
|
![]() Профи ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 618 Пол: Мужской Репутация: ![]() ![]() ![]() |
Можно ждать возврата луча перед сменой страниц. Тогда FPS будет зависеть от частоты мерцания монитора. Тему можно разрулить, добиться, чтобы на разных частотах работало одинаково...
-------------------- Close the World...txeN eht nepO
|
Shura |
![]()
Сообщение
#9
|
![]() Пионер ![]() ![]() Группа: Пользователи Сообщений: 136 Пол: Мужской Реальное имя: Александр Репутация: ![]() ![]() ![]() |
Ну а если кадр не успеет отрисоваться до очередного мерцания?.. Один раз придётся ждать одного такта, другой - двух (ну или что-то типа этого). Я в на TP7 так делал - рывками всё двигается...
-------------------- Старайтесь восполнять пробелы в области незнания! ;-D
|
Archon |
![]()
Сообщение
#10
|
![]() Профи ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 618 Пол: Мужской Репутация: ![]() ![]() ![]() |
Цитата Ну а если кадр не успеет отрисоваться до очередного мерцания?.. есть косяк.... :yes: , но и современные игры, бывает, тормозят, тогда до второго дерева можно бежать дооолго........(ну, просто дольше, чем должно).Цитата Я в на TP7 так делал - рывками всё двигается... Это, скорее, алгоритм медленный, ожидание возврата луча может задержать вывод картинки максимум только на время одного полного обхода экрана лучом.-------------------- Close the World...txeN eht nepO
|
Дож |
![]()
Сообщение
#11
|
![]() Бывалый ![]() ![]() ![]() Группа: Пользователи Сообщений: 179 Пол: Мужской Репутация: ![]() ![]() ![]() |
Цитата Получается надо ещё не только "себя" ""рассчитать", но и остальные динам. объекты, так что ли? Значит вывод этих объектов нужно делать в самую последнюю очередь, после всех остальных подсчётов? Shura, здесь рассказывается об этом. http://dronprogs.mirg.ru/stat/dgtemp.php?s...t_from=&ucat=3& -------------------- Доброго времени суток.
:nnn: |
Shura |
![]()
Сообщение
#12
|
![]() Пионер ![]() ![]() Группа: Пользователи Сообщений: 136 Пол: Мужской Реальное имя: Александр Репутация: ![]() ![]() ![]() |
Ну так он же с Direct3D, OpenGL работает, про софтверную обработку ничего...
Однако, неплохой сайтик. А ты движок его юзал, или игры его скачивал? -------------------- Старайтесь восполнять пробелы в области незнания! ;-D
|
Дож |
![]()
Сообщение
#13
|
![]() Бывалый ![]() ![]() ![]() Группа: Пользователи Сообщений: 179 Пол: Мужской Репутация: ![]() ![]() ![]() |
Цитата Ну так он же с Direct3D, OpenGL работает И все же идею про разделение расчетов и вырисовки можно использовать и для более примитивной графики. Все что нужно- хороший таймер. Цитата А ты движок его юзал, или игры его скачивал? Учусь юзать движок. Добавлено: Цитата Ну так он же с Direct3D, OpenGL работает, Только с OpenGL. Dron's openGL Engine = DGLEngine -------------------- Доброго времени суток.
:nnn: |
![]() ![]() |
![]() |
Текстовая версия | 15.07.2025 1:01 |