User Tag List

Страница 6 из 45 ПерваяПервая ... 2345678910 ... ПоследняяПоследняя
Показано с 51 по 60 из 443

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

  1. #51

    Регистрация
    24.08.2012
    Адрес
    г. Волжский
    Сообщений
    463
    Спасибо Благодарностей отдано 
    792
    Спасибо Благодарностей получено 
    273
    Поблагодарили
    105 сообщений
    Mentioned
    2 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Сделал опрос клавиатуры и движение игрока влево-вправо (см. видео)

    Спрайты у меня 24х24 точек, в итоге экран 10х10 элементов - это не совсем стандартно, но в 24х24 точки можно уместить более детальную графику, чем в 16х16. Но в этом решении есть свои трудности при реализации следующего шага.
    Хочу сделать игру с аппаратным вертикальным скроллингом, в связи с этим
    столкнулся с выбором - есть такие вот варианты:
    1. Если сохранить 24х24 точки и 16 цветов, то нужно писать хитрую программу которая будет выводить только часть (выбранную треть высотой 8 точек) спрайта (это для вертикального скроллинга). Поскольку спрайт (24х24) точки х10 (элементов) = 240х240 точек, поэтому остаются края со всех сторон по 8 точек.

    2. Можно изменить графику и сделать 16х16 точек и сохранить 16 цветов, тогда программа вертикального скроллинга будет попроще (наверное), но есть подозрение что если делать вывод спрайтов для вертикального скроллинга высотой 16 точек, то это будет заметнее чем высотой 8 точек.

    3. Есть ещё вариант оставить 8 цветов, а одну плоскость сделать "ширмой", которая будет прикрывать вывод строки спрайтов (высотой 16 точек) для вертикального скроллинга и в итоге скроллинг смотреться будет более качественно (наверное), но это потеря 8 цветов для игры.

    Может у кого есть идеи или советы, пишите

    Следующий шаг в разработке: движение главного героя по уровню вверх-вниз с помощью аппаратного вертикального скроллинга.

    Эти 3 пользователя(ей) поблагодарили metamorpho за это полезное сообщение:

    KTSerg(07.07.2020), shapipovo(07.07.2020), svofski(07.07.2020)

  2. #52

    Регистрация
    01.03.2005
    Адрес
    Samara
    Сообщений
    4,867
    Спасибо Благодарностей отдано 
    328
    Спасибо Благодарностей получено 
    311
    Поблагодарили
    235 сообщений
    Mentioned
    12 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    metamorpho, а зачем выводить сразу весь тайл?
    выводи попиксельно с прокруткой
    С уважением,
    Jerri / Red Triangle.

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

    metamorpho(08.07.2020)

  3. #53

    Регистрация
    22.02.2014
    Адрес
    г. Курган
    Сообщений
    1,706
    Спасибо Благодарностей отдано 
    275
    Спасибо Благодарностей получено 
    318
    Поблагодарили
    222 сообщений
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от metamorpho Посмотреть сообщение
    Сделал опрос клавиатуры и движение игрока влево-вправо ...
    А скорость передвижения влево-вправо как-то синхронизирована с прерываниями?

  4. #54

    Регистрация
    24.08.2012
    Адрес
    г. Волжский
    Сообщений
    463
    Спасибо Благодарностей отдано 
    792
    Спасибо Благодарностей получено 
    273
    Поблагодарили
    105 сообщений
    Mentioned
    2 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от jerri Посмотреть сообщение
    metamorpho, а зачем выводить сразу весь тайл?
    выводи попиксельно с прокруткой
    Скорость игры будет выше, поскольку количество выполняемых команд будет меньше, т.к. вывод целого спрайта не требует дополнительных вычисления как при выводе части спрайта (это я ориентируюсь на основании своего кода)

    Цитата Сообщение от KTSerg Посмотреть сообщение
    А скорость передвижения влево-вправо как-то синхронизирована с прерываниями?
    Нет. А что даст такая синхронизация ? И как это сделать ?
    Последний раз редактировалось metamorpho; 10.07.2020 в 08:30.

  5. #55

    Регистрация
    01.03.2005
    Адрес
    Samara
    Сообщений
    4,867
    Спасибо Благодарностей отдано 
    328
    Спасибо Благодарностей получено 
    311
    Поблагодарили
    235 сообщений
    Mentioned
    12 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от metamorpho Посмотреть сообщение
    Скорость игры будет выше, поскольку количество выполняемых команд будет меньше, т.к. вывод целого спрайта не требует дополнительных вычисления как при выводе части спрайта (это я ориентируюсь на основании своего кода)
    ну значит надо что-то поменять
    просто плавное движение экрана смотрится более приятным чем грубое потайловое.

    вот например



    Нет. А что даст такая синхронизация ? И как это сделать ?
    плавность отображения
    С уважением,
    Jerri / Red Triangle.

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

    metamorpho(10.07.2020)

  6. #56

    Регистрация
    22.02.2014
    Адрес
    г. Курган
    Сообщений
    1,706
    Спасибо Благодарностей отдано 
    275
    Спасибо Благодарностей получено 
    318
    Поблагодарили
    222 сообщений
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от metamorpho Посмотреть сообщение
    ...
    Нет. А что даст такая синхронизация ? И как это сделать ?
    С моей субъективной точки зрения, синхронизация перемещения с прерыванием может дать равномерность скорости перемещения персонажа по экрану.
    Мне кажется, что вертикальный скролинг лучше задавать в прерываниях, т.к. изменение регистра скролинга в другое время может привести к появлению артефактов на экране.
    Значит скорость вертикального перемещения будет зависеть от прерываний. Нужно на практике посмотреть какое соотношение смещения по вертикали за сколько циклов прерывания для данной игры наиболее оптимально. А если к этому привязать ещё и отрисовку смещения персонажа по горизонтали, то игроком восприниматься это будет более гармонично. Иначе получится, что по горизонтали персонаж бегает с одной скоростью, а по вертикали с другой.
    Как делается синхронизация... ну например:
    В прерывании организуем счетчик, который уменьшается от некоторого значения до нуля, при достижении нуля, присваивает значение "1" некоторой переменной (это "флаг", указывающий основному циклу программы, что пора отрисовывать перемещение), и значение счетчика снова восстанавливается для очередного цикла.
    А основной цикл кроме всего прочего проверяет значение "флаг"а, а когда он становится равным "1", сначала сбрасывает его в "0", а потом отрисовывает перемещения персонажа (при наличии смещения по горизонтали), и элементы лабиринта для компенсации скролинга (при наличии смещения по вертикали).
    Не знаю на сколько понятно я выразил свою мысль.

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

    metamorpho(10.07.2020)

  7. #57

    Регистрация
    24.08.2012
    Адрес
    г. Волжский
    Сообщений
    463
    Спасибо Благодарностей отдано 
    792
    Спасибо Благодарностей получено 
    273
    Поблагодарили
    105 сообщений
    Mentioned
    2 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    jerri, KTSerg - спасибо за идеи и советы!!

    Аппаратный вертикальный скроллинг у меня прописан именно в программе обработки прерываний.
    А горизонтального скроллинга в этой игре не будет.
    Если движение влево и вправо будет сильно различаться по скорости от движения вверх и вниз, тогда воспользуюсь идеей синхронизации вертикального и горизонтального движения.

  8. #58

    Регистрация
    24.08.2012
    Адрес
    г. Волжский
    Сообщений
    463
    Спасибо Благодарностей отдано 
    792
    Спасибо Благодарностей получено 
    273
    Поблагодарили
    105 сообщений
    Mentioned
    2 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Сделал движение главного героя по уровню вверх-вниз с помощью аппаратного вертикального скроллинга. Результат оказался не таким что ожидал, но всё же это результат.

    Следующий шаг в разработке:
    - возможно поэксперементирую с другими вариантами вертикального скроллинга
    - оптимизация (укорение) кода

    Эти 3 пользователя(ей) поблагодарили metamorpho за это полезное сообщение:

    KTSerg(16.07.2020), SegaBoy(15.07.2020), svofski(15.07.2020)

  9. #59

    Регистрация
    22.02.2014
    Адрес
    г. Курган
    Сообщений
    1,706
    Спасибо Благодарностей отдано 
    275
    Спасибо Благодарностей получено 
    318
    Поблагодарили
    222 сообщений
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от metamorpho Посмотреть сообщение
    Сделал движение главного героя по уровню вверх-вниз с помощью аппаратного вертикального скроллинга. Результат оказался не таким что ожидал, но всё же это результат.
    ...
    Это иллюзия, или сначала программа выводит элементы лабиринта, а потом происходит аппаратный скролинг ?
    А если сначала сдвигать, а потом выводить лабиринт на экран?

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

    metamorpho(16.07.2020)

  10. #60

    Регистрация
    24.01.2008
    Адрес
    Уфа
    Сообщений
    3,926
    Спасибо Благодарностей отдано 
    105
    Спасибо Благодарностей получено 
    291
    Поблагодарили
    217 сообщений
    Mentioned
    10 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от KTSerg Посмотреть сообщение
    А если сначала сдвигать, а потом выводить лабиринт на экран?
    А без разницы. Будет такой-же эффект, но с другой стороны экрана. Нужно оставлять пустое место, выводить и сдвигать попиксельно (по одной линии).

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

    metamorpho(16.07.2020)

Страница 6 из 45 ПерваяПервая ... 2345678910 ... ПоследняяПоследняя

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

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

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

Похожие темы

  1. Бейсики для Вектора-06Ц и клонов
    от ivagor в разделе Вектор
    Ответов: 696
    Последнее: 25.10.2025, 02:34
  2. Картотека ПО для Вектора-06ц
    от svofski в разделе Вектор
    Ответов: 719
    Последнее: 04.04.2024, 11:13
  3. Восстановление Вектора-06ц
    от Daniil Chislov 86 в разделе Вектор
    Ответов: 100
    Последнее: 11.03.2021, 00:23
  4. Ответов: 198
    Последнее: 26.04.2020, 13:05
  5. Ответов: 58
    Последнее: 06.07.2019, 23:56

Ваши права

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