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

User Tag List

Страница 3 из 3 ПерваяПервая 123
Показано с 21 по 30 из 30

Тема: Обрезание спрайта на краю экрана.

  1. #21
    Guru Аватар для moroz1999
    Регистрация
    17.01.2005
    Адрес
    Tallinn
    Сообщений
    2,517
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    86
    Поблагодарили
    39 сообщений
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Soplik
    А если кинуть безо всяких проверок, а запорченный экран быстро-быстро забить фоном?
    может возникнуть ситуация, что помимо фона на той стороне спрайт будет.

  2. #22
    Activist Аватар для Soplik
    Регистрация
    02.04.2005
    Адрес
    Минск
    Сообщений
    378
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    1
    Поблагодарили
    1 сообщение
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Уже понял.
    А обязательно все спрайты попиксельно выводить?
    Сферический ламер в вакууме

  3. #23
    Master Аватар для Vladimir Kladov
    Регистрация
    09.02.2005
    Адрес
    Новосибирск
    Сообщений
    933
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    17
    Поблагодарили
    17 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Есть еще такое решение: строить весь кадр в буфере с последовательной организацией строк, и при этом строки делать шире, добавляя с обоих краев нужное число байтов (по размеру максимального спрайта минус 1). При переброске обрезать. Работает в том числе когда задействована вся ширина для игрового поля и когда есть рамки и не только рамки ink=paper. И очень неплохо, когда игровое поле уже (а например справа еще что-то типа как меню команд в лазер сквадроне).
    Последнюю версию EmuZWin (2.7) можно получить по этой ссылке, а "официальная" страница с описанием здесь. Если что-то не пашет, берите там же версии 2.6 или старше. [B]

  4. #24
    Veteran Аватар для Sinus
    Регистрация
    29.01.2005
    Адрес
    Belarus, Grodno
    Сообщений
    1,279
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    1
    Поблагодарили
    1 сообщение
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Vladimir Kladov: очень хорошее решение, но к сожалению фреймовости не добится.

    хотя я вот (когда муль свой тестил) посмотрел пару старых игрулек (Hydson Hawk тот же) - нифига не фреймово, но не менее играбельно
    [target] [zemu] [js8x] [pouet] KAY-1024, 5''FDD, 3''FDD, HDD

  5. #25
    Guru Аватар для moroz1999
    Регистрация
    17.01.2005
    Адрес
    Tallinn
    Сообщений
    2,517
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    86
    Поблагодарили
    39 сообщений
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

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

  6. #26
    Member Аватар для rjhaviy
    Регистрация
    06.02.2009
    Адрес
    Москва
    Сообщений
    31
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    0
    Поблагодарили
    0 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    есть 3 процедуры, спрайты покрянчены

    1) спрайт залазит влево
    2) спрайт полностью на экране
    3) спрайт залазит вправо

    если спрайт на экране, то всё очевидно.
    ...
    покрянчены ??? Объясните пожалуйста новичку, что это за метод???

  7. #27
    Guru Аватар для jerri
    Регистрация
    01.03.2005
    Адрес
    Samara
    Сообщений
    4,752
    Спасибо Благодарностей отдано 
    263
    Спасибо Благодарностей получено 
    279
    Поблагодарили
    207 сообщений
    Mentioned
    12 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от rjhaviy Посмотреть сообщение
    покрянчены ??? Объясните пожалуйста новичку, что это за метод???
    Покрянчены значит приготовлены к быстрому выводу
    к примеру у тебя есть спрайт размером 16 х 16 пикселей
    и тебе надо выводить его с точностью до 2х пикселей

    т.е изначально имеем
    2*16 - 32 байта под спрайт
    и некую процедуру печати спрайта с точностью до пикселя

    но все это работает крайне медленно (см ZX Ревю )

    а далее берем и на основе имеющегося спрайта 16*16 (2х16)
    создаем еще 3 спрайта размером 24*16 (3*16)
    для чего скролим спрайт вправо на 2 пикселя и прячем в памяти

    и теперь имеем и спрайт 2*16 - 32 байта и еще 3 спрайто 3*16
    все вместе весит уже 176 байт

    но теперь мы можем существенно облегчить процедуру печати спрайта
    как по весу так и по скорости

    и теперь при прорисовке смотрим на координату X
    и в соответсвии со смещениями берем нужный нам спрайт

    кстати если изначально задать при рисовании размер к примеру не 16*16
    а 18*16 то при скролле не потребуется менять размер спрайта
    а 2 пикселя для таких мелких спрйтов это ОГОГО сколько

    будут еще вопросы - пиши в аську
    С уважением,
    Jerri / Red Triangle.

  8. #28
    Member Аватар для rjhaviy
    Регистрация
    06.02.2009
    Адрес
    Москва
    Сообщений
    31
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    0
    Поблагодарили
    0 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    jerri, спасибо! Я все понял, елси мне не изменяет памать, то именно так сделано во многих игрушках Hewson, таких как Exolon, Zynaps, Cybernoid 1 и 2,
    и др.?

  9. #29
    Guru Аватар для jerri
    Регистрация
    01.03.2005
    Адрес
    Samara
    Сообщений
    4,752
    Спасибо Благодарностей отдано 
    263
    Спасибо Благодарностей получено 
    279
    Поблагодарили
    207 сообщений
    Mentioned
    12 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Да именно так
    С уважением,
    Jerri / Red Triangle.

  10. #30
    Guru Аватар для jerri
    Регистрация
    01.03.2005
    Адрес
    Samara
    Сообщений
    4,752
    Спасибо Благодарностей отдано 
    263
    Спасибо Благодарностей получено 
    279
    Поблагодарили
    207 сообщений
    Mentioned
    12 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    иллюстрация
    Миниатюры Миниатюры Нажмите на изображение для увеличения. 

Название:	Безымянный.JPG 
Просмотров:	316 
Размер:	7.9 Кб 
ID:	10752  
    С уважением,
    Jerri / Red Triangle.

Страница 3 из 3 ПерваяПервая 123

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

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

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

Похожие темы

  1. Разрешение экрана.
    от CityAceE в разделе Форум
    Ответов: 19
    Последнее: 06.03.2005, 06:37

Ваши права

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