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

User Tag List

Страница 7 из 46 ПерваяПервая ... 34567891011 ... ПоследняяПоследняя
Показано с 61 по 70 из 456

Тема: Демо эффекты для Вектора

  1. #61
    Guru
    Регистрация
    07.08.2008
    Адрес
    г. Уфа
    Сообщений
    7,849
    Спасибо Благодарностей отдано 
    654
    Спасибо Благодарностей получено 
    1,833
    Поблагодарили
    1,050 сообщений
    Mentioned
    22 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Идея избавиться от сдвига маски развернув циклы у меня была (еще применительно к svoline), даже писал об этом svofski. Основной очевидный недостаток - код разбухнет сильно, а выигрыш в быстродействии будет не таким уж и большим. Если для какой-либо конкретной задачи чуть-чуть не будет хватать (например, чтобы в фрейм утрамбовать) - придется заморочиться, а пока не хочется.

  2. #61
    С любовью к вам, Yandex.Direct
    Размещение рекламы на форуме способствует его дальнейшему развитию

  3. #62
    Guru
    Регистрация
    07.08.2008
    Адрес
    г. Уфа
    Сообщений
    7,849
    Спасибо Благодарностей отдано 
    654
    Спасибо Благодарностей получено 
    1,833
    Поблагодарили
    1,050 сообщений
    Mentioned
    22 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Вчера в связи с приключениями IRL прочитал по диагонали, сегодня внимательно.
    Т.е. не только избавление от сдвига маски, но и уменьшение числа пересылок ошибки. Ну и в целом разделение расчета и рисования с группировкой рисуемых точек. Суммарный эффект, конечно, будет не чуть-чуть, а вполне заметный. Теперь бы кто-нибудь сделал завершенную процедуру для 8080.

  4. #63
    Guru
    Регистрация
    07.08.2008
    Адрес
    г. Уфа
    Сообщений
    7,849
    Спасибо Благодарностей отдано 
    654
    Спасибо Благодарностей получено 
    1,833
    Поблагодарили
    1,050 сообщений
    Mentioned
    22 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Моя любимая маргинальщина. 580ВМ1 позволяет избавиться от пересылок (маска в A, ошибка (или как ее теперь называть) в H, слагаемые/вычитаемые в B и D, счетчик в L, адрес в H1L1). Это дает ускорение на 20% при сокращении размера на 8 байт.

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

    А если ничего не менять и просто прогнать на 6128, то будет быстрее почти на 30% за счет mov r,r; inr/dcr и условных переходов.
    Последний раз редактировалось ivagor; 23.12.2017 в 13:31.

  5. #64
    Guru
    Регистрация
    07.08.2008
    Адрес
    г. Уфа
    Сообщений
    7,849
    Спасибо Благодарностей отдано 
    654
    Спасибо Благодарностей получено 
    1,833
    Поблагодарили
    1,050 сообщений
    Mentioned
    22 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Слегка ускорил процедуру blackmirrora - с 313 до 323 линий/секунду.

    Проверил свою идею (и, соответственно, одну из идей blackmirrora) по разворачиванию циклов с избавлением от сдвига маски. Но применил, конечно, уже к процедуре blackmirrora.
    Разворачивание пологих циклов: +320 байт, зато 353 линии/секунду.
    +еще разворачивание крутых циклов: +еще 350 байт, 355 линий/секунду - нафиг нужно.

  6. #65
    Member
    Регистрация
    25.11.2015
    Адрес
    г. Москва
    Сообщений
    192
    Спасибо Благодарностей отдано 
    12
    Спасибо Благодарностей получено 
    16
    Поблагодарили
    14 сообщений
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от ivagor Посмотреть сообщение
    +еще разворачивание крутых циклов: +еще 350 байт, 355 линий/секунду - нафиг нужно.
    У меня после разворота крутых циклов 256 линий от верхнего края до нижнего стали рисоваться за 48 кадров вместо 64, а после разворота пологих циклов, но без группировки точек 256 линий от левого края до правого стали рисоваться за 48 кадров вместо 73. Пологие циклы можно ускорить еще в полтора раза за счёт группировки точек, а вот крутые циклы ускорять будет явно сложнее.

  7. #66
    Guru
    Регистрация
    07.08.2008
    Адрес
    г. Уфа
    Сообщений
    7,849
    Спасибо Благодарностей отдано 
    654
    Спасибо Благодарностей получено 
    1,833
    Поблагодарили
    1,050 сообщений
    Mentioned
    22 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от blackmirror Посмотреть сообщение
    У меня после разворота крутых циклов 256 линий от верхнего края до нижнего стали рисоваться за 48 кадров вместо 64, а после разворота пологих циклов, но без группировки точек 256 линий от левого края до правого стали рисоваться за 48 кадров вместо 73.
    Максимально длинные линии +, предполагаю, без части предварительных вычислений - максимальный эффект. На коротких линиях необходимость модификации направления вверх/вниз сказывается, особенно для крутых, т.к. там точек модификации в 2 раза больше, а выигрыш от "несдвига" маски меньше. Можно попробовать еще в 2 раза увеличить основные циклы - одна версия вниз, другая вверх. Но эффект будет совсем слабым, лучше уж попробовать разделение расчета и рисования с группировкой. Только это сложновато.

  8. #67
    Member
    Регистрация
    25.11.2015
    Адрес
    г. Москва
    Сообщений
    192
    Спасибо Благодарностей отдано 
    12
    Спасибо Благодарностей получено 
    16
    Поблагодарили
    14 сообщений
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    У меня разворот крутого цикла был сделан так:
    Код:
    LineYn0: SetPix 128;продолжнение цикла здесь
            IncY
            Err+=dy-dx
            jp nc,LineYn1
    LineYp0: SetPix 128 ;точка входа здесь
            IncY
            Err-=dx
            jp nc,LineYp0;крутимся рисуя вертикальный отрезок
    LineYn1: SetPix 64
            IncY
            Err+=dy-dx
            jp nc,LineYn2;нарисовав точку нового отрезка идём дальше или 
    LineYp1: SetPix 64
            IncY	
            Err-=dx
            jp nc,LineYp1;крутимся рисуя следующий
    LineYn2:
    	...
    LineYn8:
            IncH		;x
            Dec Cnt8 ;изначально=(x2-x1-8)/8
            Jp nz,LineYn0

  9. #68
    Guru
    Регистрация
    07.08.2008
    Адрес
    г. Уфа
    Сообщений
    7,849
    Спасибо Благодарностей отдано 
    654
    Спасибо Благодарностей получено 
    1,833
    Поблагодарили
    1,050 сообщений
    Mentioned
    22 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Я не успел
    Вышеприведенного поста не видел, вечером еще раз взглянул на развороты.
    Удалось сократить и ускорить и пологий (немного) и крутой циклы. Крутой теперь похож на вышеприведенный и никто не поверит, что я сам до этого тоже допер (пусть и только на второй день).

    В итоге:
    1. Бенч svofski
    1.1. Без разворотов - 323 линии/секунду
    1.2. Развернутый пологий - 355 линий/секунду (+285 байт по сравнению с 1.1)
    1.3. Развернутые пологий и крутой - 369 линий/секунду (+588 байт по сравнению с 1.1)

    2. По результатам рисования 256 пологих линий (x0=0, y0=0; x1=255, y1=0..255)
    2.1. Без разворотов - 113 линий/секунду
    2.2. Развернутый пологий - 145 линий/секунду

    3. По результатам рисования 256 крутых линий (x0=0, y0=0; x1=0..255, y1=255)
    3.1. Без разворотов - 126 линий/секунду
    3.2. Развернутый крутой - 139 линий/секунду

  10. #69
    Guru Аватар для svofski
    Регистрация
    20.06.2007
    Адрес
    С.-Петербург
    Сообщений
    4,116
    Спасибо Благодарностей отдано 
    798
    Спасибо Благодарностей получено 
    658
    Поблагодарили
    403 сообщений
    Mentioned
    22 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    > до 220 или 380 далеко

    Уже нет!
    Больше игр нет

  11. #70
    Guru
    Регистрация
    07.08.2008
    Адрес
    г. Уфа
    Сообщений
    7,849
    Спасибо Благодарностей отдано 
    654
    Спасибо Благодарностей получено 
    1,833
    Поблагодарили
    1,050 сообщений
    Mentioned
    22 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Про 380 я помню. Если с допингом (ВМ1/8085/Z80), то уже больше. А для 8080 надо реализовать оставшиеся идеи blackmirrorа, что несколько сложно.

Страница 7 из 46 ПерваяПервая ... 34567891011 ... ПоследняяПоследняя

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

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

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

Похожие темы

  1. Картотека ПО для Вектора-06ц
    от svofski в разделе Вектор
    Ответов: 719
    Последнее: 04.04.2024, 11:13
  2. Демо эффекты для Корвета
    от esl в разделе Корвет
    Ответов: 31
    Последнее: 10.10.2016, 13:37
  3. Звуковые эффекты AY в играх
    от goblinish в разделе Игры
    Ответов: 31
    Последнее: 21.07.2015, 04:43
  4. Возьму в дар эффекты для частей мегадемо
    от AAA в разделе Программирование
    Ответов: 36
    Последнее: 25.11.2013, 14:45
  5. Эффекты в музыкальном редакторе ...
    от Robus в разделе Музыка
    Ответов: 0
    Последнее: 20.09.2006, 21:52

Ваши права

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