Важная информация

User Tag List

Страница 21 из 32 ПерваяПервая ... 171819202122232425 ... ПоследняяПоследняя
Показано с 201 по 210 из 318

Тема: Пишу шедевр для «Вектора 06Ц»

  1. #201
    Guru
    Регистрация
    07.08.2008
    Адрес
    г. Уфа
    Сообщений
    5,162
    Спасибо Благодарностей отдано 
    184
    Спасибо Благодарностей получено 
    487
    Поблагодарили
    296 сообщений
    Mentioned
    4 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от KTSerg Посмотреть сообщение
    Не пропущено "mov h,a" ?
    Да, команда пропущена.
    Можно ускорить переход между плоскостями, если перейти на змейки по плоскостям и в пространстве. В варианте jerri переходы между плоскостями (при добавлении mov h,a) займут 80 тактов на две строки. Если первую строку выводить слева-направо и в одну сторону по плоскостям, а вторую справа-налево и в другую сторону по плоскостям, то переходы можно ужать до 56 тактов на две строки.
    Последний раз редактировалось ivagor; 02.08.2020 в 06:52.

  2. Этот пользователь поблагодарил ivagor за это полезное сообщение:

    metamorpho (02.08.2020)

  3. #202
    Guru Аватар для jerri
    Регистрация
    01.03.2005
    Адрес
    Samara
    Сообщений
    3,860
    Спасибо Благодарностей отдано 
    114
    Спасибо Благодарностей получено 
    98
    Поблагодарили
    81 сообщений
    Mentioned
    3 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от KTSerg Посмотреть сообщение
    jerri, примерно да. Только у меня алгоритм значительно длиннее, и не построчно, а по две строки.
    Т.е. две строки в одной колонке, потом две во второй, в третьей. Потом переход на след. план. По две строки справа налево. Переход на след. план. Снова по две строки в право. И так дважды.
    За счет более длинного и развёрнутого алгоритма, по тактам, мой не значительно быстрее. Видимо за счет меньшего количества проверок на конц цикла. Т.к. у тебя на 4 строки дважды проверка на повтор, а у меня один раз.
    Поскольку у тебя, переход между планами и проверка циклов компактнее, чем у меня.
    Спасибо за идею.
    И подозреваю, что у моего метода "по две строки" выше вероятность появлению мельтешения (мерцания).

    - - - Добавлено - - -

    jerri, в алгоритме рисования спрайта, есть для меня один не понятный момент.
    При переходе на след строку (в средине алгоритма):

    Код:
            ld      (hl),c
    ;возвращаемся на первый план
            sub     #40
    ;переходим на следующую строку
            inc     l
    ;повторяем цикл рисования
            ld      (hl),b
    Уменьшение аккумулятора на 40 - это я понимаю, переход не след строку "inc l" - тоже.
    А как происходит перевод регистра H - на начало?
    Не пропущено "mov h,a" ?
    Ага пропущено.

    Как вариант конечно можно и по 2 строки по высоте выводить, это ещё ускорит алгоритм, но увеличит вероятность мерцания цвета.

    Насколько головоломным станет формат спрайта?

    Сейчас спрайт выводится построчно.

    С другой стороны если снизить минимальную частоту до 25 фпс это будет не важно.
    С уважением,
    Jerri / Red Triangle.
    [02.05.2014] не забудь этот день. Чубайс должен умереть. Dixi.
    [l'Abbey des morts TSEvo EV...5%]

  4. Этот пользователь поблагодарил jerri за это полезное сообщение:

    metamorpho (02.08.2020)

  5. #203
    Master
    Регистрация
    22.02.2014
    Адрес
    г. Курган
    Сообщений
    942
    Спасибо Благодарностей отдано 
    57
    Спасибо Благодарностей получено 
    107
    Поблагодарили
    84 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    jerri, переделал переход между планами по твоему, спрайт выводится ещё быстрее.
    Судя по таймингу, стало с запасом хватать на вывод 4-ёх подвижных объектов при перемещении во вертикали, хотя раньше запаса совсем не было.

  6. Этот пользователь поблагодарил KTSerg за это полезное сообщение:

    metamorpho (02.08.2020)

  7. #204
    Guru
    Регистрация
    07.08.2008
    Адрес
    г. Уфа
    Сообщений
    5,162
    Спасибо Благодарностей отдано 
    184
    Спасибо Благодарностей получено 
    487
    Поблагодарили
    296 сообщений
    Mentioned
    4 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от KTSerg Посмотреть сообщение
    стало с запасом хватать на вывод 4-ёх подвижных объектов при перемещении во вертикали
    Даже если учесть шторку на мой взгляд слишком осторожная оценка. По моей прикидке в кадр укладываются 7 объектов 32*24 (это движение по горизонтали, без шторки, зато спрайты крупнее). Ну и я учитываю только рисование, без обработки управляющих воздействий и взаимодействия объектов.

  8. Этот пользователь поблагодарил ivagor за это полезное сообщение:

    metamorpho (02.08.2020)

  9. #205
    Guru Аватар для jerri
    Регистрация
    01.03.2005
    Адрес
    Samara
    Сообщений
    3,860
    Спасибо Благодарностей отдано 
    114
    Спасибо Благодарностей получено 
    98
    Поблагодарили
    81 сообщений
    Mentioned
    3 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от ivagor Посмотреть сообщение
    Даже если учесть шторку на мой взгляд слишком осторожная оценка. По моей прикидке в кадр укладываются 7 объектов 32*24 (это движение по горизонтали, без шторки, зато спрайты крупнее). Ну и я учитываю только рисование, без обработки управляющих воздействий и взаимодействия объектов.
    На шторке в текущем виде слишком много пересчетов на позицию.
    Можно раскатать подобным образом и получить что то вроде 400 тактов на линию
    С уважением,
    Jerri / Red Triangle.
    [02.05.2014] не забудь этот день. Чубайс должен умереть. Dixi.
    [l'Abbey des morts TSEvo EV...5%]

  10. Этот пользователь поблагодарил jerri за это полезное сообщение:

    metamorpho (02.08.2020)

  11. #206
    Master
    Регистрация
    22.02.2014
    Адрес
    г. Курган
    Сообщений
    942
    Спасибо Благодарностей отдано 
    57
    Спасибо Благодарностей получено 
    107
    Поблагодарили
    84 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от ivagor Посмотреть сообщение
    Даже если учесть шторку на мой взгляд слишком осторожная оценка. По моей прикидке в кадр укладываются 7 объектов 32*24 (это движение по горизонтали, без шторки, зато спрайты крупнее). Ну и я учитываю только рисование, без обработки управляющих воздействий и взаимодействия объектов.
    Я понимаю, что у меня не всё круто оптимизировано... но у меня, при движении по горизонтали, 6 объектов (плюс персонаж) не входит между прерываниями. И это, как упомянуто, ещё без обработки взаимодействия.

    Вот выложу тестилку быстродействия вывода спрайтов. Зелёные полосы на бордюре, это время отрисовки спрайта. 10 узких полос, это вывод заполнения под ширмой.
    Поскольку за одно прерывание скроллинг 4 строки, то и вывод спрайтов оптимизирован под вывод 4-ёх строк за цикл. Заполнение под ширмой тоже 4 строки за раз.
    Вложения Вложения
    Последний раз редактировалось KTSerg; 02.08.2020 в 08:47.

  12. Этот пользователь поблагодарил KTSerg за это полезное сообщение:

    metamorpho (02.08.2020)

  13. #207
    Guru
    Регистрация
    07.08.2008
    Адрес
    г. Уфа
    Сообщений
    5,162
    Спасибо Благодарностей отдано 
    184
    Спасибо Благодарностей получено 
    487
    Поблагодарили
    296 сообщений
    Mentioned
    4 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Не смотрел шторку/ширму у metamorpho, но ничего быстрее push+...+push+inr h+sphl представить не могу. Для 4 строк будет по 1536 тактов на рисование и столько же на стирание. Это для 32 колонок, для 30 понятно меньше.

    - - - Добавлено - - -

    Цитата Сообщение от KTSerg Посмотреть сообщение
    Заполнение под ширмой тоже 4 строки за раз.
    Рисование под ширмой я не считал. Я бы рисовал под "высокой" ширмой сразу всю строку, а потом сдвигал уже без рисования.

  14. Этот пользователь поблагодарил ivagor за это полезное сообщение:

    metamorpho (02.08.2020)

  15. #208
    Master
    Регистрация
    22.02.2014
    Адрес
    г. Курган
    Сообщений
    942
    Спасибо Благодарностей отдано 
    57
    Спасибо Благодарностей получено 
    107
    Поблагодарили
    84 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от ivagor Посмотреть сообщение
    Не смотрел шторку/ширму у metamorpho, но ничего быстрее push+...+push+inr h+sphl представить не могу. ...
    Поскольку перенос ширмы всегда в прерываниях, при изменении значения скроллинга, то ширма формируется стековыми операциями записи. На моём примере, это синий цвет бордюра.

    Рисование под ширмой я не считал. Я бы рисовал под "высокой" ширмой сразу всю строку, а потом сдвигал уже без рисования.
    Формирование поля в 4 строки под ширмой, для равномерности использования ресурсов. Если выводить под ширмой полностью весь спрайт, да ещё на всю ширину экрана, то как минимум одно из 6 прерываний, будет занято, и перемещение подвижных объектов будет с характерным дёрганием - не будет плавным.
    Мне кажется. Я не пробовал.

  16. Этот пользователь поблагодарил KTSerg за это полезное сообщение:

    metamorpho (02.08.2020)

  17. #209
    Guru
    Регистрация
    07.08.2008
    Адрес
    г. Уфа
    Сообщений
    5,162
    Спасибо Благодарностей отдано 
    184
    Спасибо Благодарностей получено 
    487
    Поблагодарили
    296 сообщений
    Mentioned
    4 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Я надеюсь, что торможение из за вывода строки объектов будет не особо заметно на фоне сдвига при движении по вертикали.

  18. Этот пользователь поблагодарил ivagor за это полезное сообщение:

    metamorpho (02.08.2020)

  19. #210
    Guru Аватар для jerri
    Регистрация
    01.03.2005
    Адрес
    Samara
    Сообщений
    3,860
    Спасибо Благодарностей отдано 
    114
    Спасибо Благодарностей получено 
    98
    Поблагодарили
    81 сообщений
    Mentioned
    3 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от ivagor Посмотреть сообщение
    Я надеюсь, что торможение из за вывода строки объектов будет не особо заметно на фоне сдвига при движении по вертикали.
    Значит надо выводить постепенно.
    4 линии очистил - 4 линии вывел
    С уважением,
    Jerri / Red Triangle.
    [02.05.2014] не забудь этот день. Чубайс должен умереть. Dixi.
    [l'Abbey des morts TSEvo EV...5%]

  20. Этот пользователь поблагодарил jerri за это полезное сообщение:

    metamorpho (02.08.2020)

Страница 21 из 32 ПерваяПервая ... 171819202122232425 ... ПоследняяПоследняя

Информация о теме

Пользователи, просматривающие эту тему

Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)

Похожие темы

  1. Бейсики для Вектора-06Ц и клонов
    от ivagor в разделе Вектор
    Ответов: 68
    Последнее: 15.05.2020, 11:11
  2. Ответов: 198
    Последнее: 26.04.2020, 13:05
  3. Картотека ПО для Вектора-06ц
    от svofski в разделе Вектор
    Ответов: 612
    Последнее: 27.10.2019, 20:41
  4. Восстановление Вектора-06ц
    от Daniil Chislov 86 в разделе Вектор
    Ответов: 72
    Последнее: 14.10.2019, 12:20
  5. Ответов: 58
    Последнее: 06.07.2019, 23:56

Ваши права

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