Tollel



Дело было в чятике #z80. Кто-то спросил, как делается этот эффект из риалтайм Di:Halt 2016, я не успел объяснить…


Да, в чятике всегда происходит нечто интересное. Мы сидели, наблюдали за стримом, в это время была объявлена тема Realtime Coding — «Туннельное безумие».

Идей таковых не было, готового кода тоже. Запилить одну гифку? Неспортивно.

В это время Какос Нонос бросает фразу: сегодня сделаю толлель(или примерно так звучала фраза). И мне попадается на глаза картинка:


Заодно вспомнилось, как ребята из BeerManz на DH:99 усердно агитировали на участие. Поэтому я решил взяться за конкурс, вышло, конечно не 50fps, но попытаться оно стоило.

Первая идея — занять поле 192х192, я описал координаты точек в sjAsm+:


;here is coords
tollel:
x=0
 dup 192;r
 db x
 db 0
x=x+1
edup

y=0
 dup 192;d
 db 192
 db y
y=y+1
edup

x=192
 dup 192;l
 db x
 db 192
x=x-1
edup

y=192
 dup 192;u
 db 192*0
 db y
y=y-1
edup


по идее, вернее по понятиям, нужно написать код, формирующий данные.Но мне так удобнее.

Теперь проще пустить линию по описанным координатам:

;line data
lines:
 dw 192
 dw 192*3
 dw DRAW_R;db 255*0

 dw 0;counter
 dw 192*2
 dw DRAW_R;db 255*0;mask for plot
 
 dw 96
 dw 96+192*2
 dw DRAW;db 255
 
 dw 96+192
 dw 96+192*3
 dw DRAW;db 255


В структуре два слова — это номера массива, следующее слово указывает на процедуру:

DRAW_R — рисует линию по точкам
DRAW — стирает точки на линии.

В качестве процедуры рисования линии я взял часть исходников от Bizarre Constructions(Иван поделился).
Сначала было внесено изменение построить точку/стереть точку, я переписал процедуры и разбил их на разные. Простой замер показал полфрейма на процедуру. Поэтому хватит 4х линий. Осталось правильно указать данные в массивах и написать проверку «зацикливание индексов».

Скачать исходники

всем realtime?

28 комментариев

avatar
всем realtime!
  • VBI
  • 0
avatar
самое интересное — «заливка», не описана.
можешь дополнить?
  • VBI
  • +1
avatar
Рисуешь линию по квадрату, т.е. по координатам. Вслед за нарисованным стираются точки — см. описанный массив.
avatar
Всем два Гоблина!
avatar
ну, заживём! :)
но я рад.
avatar
Чистый код, особенно realtime, впечатляет. К тому же приветствуется понимание и реализация 2D и 3D графики в коде, но пока никто не сделал так, чтобы ААА обосрался. Ну, может, за исключение kracku.
avatar
объявленный преселект?:) Непонятны критерии отбора.
avatar
Заметьте, про преселект я ничего нег говорил, вы сами начали!
avatar
Да это из чятика цитатка прилетела.
avatar
пока никто не сделал так, чтобы ААА обосрался

Вы серьёзно?
  • sq
  • +5
avatar
Серьезно. А что, вы видите там смайлик или lol?
avatar
Если бы я видел смайлик или, как вы выразились, «лол», или, я не знаю, что у вас там в обиходе ещё, «ржунимагу» и прочий фольклор конца девяностых — я бы не спрашивал. Но если вы серьёзно, значит у вас всё ещё хуже, чем я думал.
avatar
тем не менее, ААА все же обосрался (осторожно, НЕНАВИСТЬ и лучи поноса ниже):

AAA гобушеньке
28 Февраля 2016, 15:21 По поводу текста скролла. Я бы рад обосраться, только вот получается так что кроме меня запилятором никто пользоваться не умеет. Я посмотрел что сделал НОТ софт и честно скажу ахуел от колличества недочетов и ошибок. Люди ни хуя не понимат как надо готовить гифы, куда но пихать, организацию памяти, ваабще бездарно!

Хорошие идеи хорогят. По поводу этого КСП я не участвую в нем. Я участвую в форевер 2016 и борюсь с гембой. Пока что на этой сцене мне не скем сражаться. Все очень слабо делают продукты. Даже ты в этой демо недоработал. А именно не обработал 9 фаз. Зачем то кинул верхушку, при том что там нет движения? Мудак согласись? Надо было обработать 9 фаз векторов движения корридора, правильно? А ты не сделал этого, идет двойная полоска?! Что за нахуй?

2. Вверху что у тебя глючит планетарий? И точки статически стоят. Что тебе трудно туда сделать звезды точками? Я бы это демо в запиляторе сделал ахуительно. И мне бы хватило памяти и тактов. ты же кодом все засрал.

Пришли мне оригинальный гиф и я его сделаю в разы лучше. не быстро но сделаю. Руками. И сверху будут звезды меняться а не глюки.

Кто ебанат? гоблин. Народ поддержите ААА.
avatar
Давайте это гогно своими собственными рученьками сюда не будем тянуть, хорошо? Хватит нам того, что этот юродивый спам другие ресурсы заполонил. Не забывайте классику:
" … Ну теперь, стало быть, пошло. Пропал дом. Все будет как по маслу: вначале — каждый вечер — пение, затем в сортирах замерзнут трубы, потом лопнет паровое отопление и т.д… "
avatar
Зощенко?
avatar
Булгаков же, из собачьего сердца :)
avatar
соглашусь, просто накипело :)
avatar
А какова, собственно, заслуга глубокоуважаемого Алексеенко в его, с позволения сказать, творчестве?
Он автор чего? Ворованных с интернета гифок? Перекрашенной чужой графики? Автор кода запилятора? Без спроса взятой музыки? Чего он такого произвел на свет, чтобы его вообще стоило поминать всуе?
avatar
Ты просто не читаешь его пдаменные речи. Предлагаю закрыть тему.
avatar
Наверное это можно назвать чем-то zx-demoscene-related-виджейства со стилистикой из ранних 90-х с запуском на нативном/расширенном железе. Очень узкое направление, ценителей — днём с огнём.
avatar
Да, если копаться в классификации, то это точное определение. Ценителей — минимум, желающих личным примером дать вышеупомянутому маэстро «просраться» в этой сомнительной спортивной дисциплине — еще меньше. Что, собственно, я и хотел донести до товарища BlastOff.
avatar
Если бы товарищ BlastOff имел хотя бы минимальный поверхностный интерес к обозначенной теме, он бы не нёс такую чушь которую тут он несёт. Интереса очевидно нет. Зато есть мелкий троллинг на почве некой мало понятной и очень плохо затаённой обиды. Поэтому не нужно писать ему 100 комментов, как вы тут похоже задумали. Оставьте эту разборку лично товарищу BlastOff наедине с его психотерапевтом.
avatar
Ну у нас у всех, порой, свербит :-D. Мне лишь показалось важным донести идею о применении термина «виджейство» к данному случаю. Прочие линии дискуссии я как-то скипнул.
avatar
а еще он уличен в фальсификации резалтов ZX Enhanced compo исходя из личных «вкусов» (пруфы искать на захопомойке, если кому-то вообще хочется там копаться)
avatar
шо?
avatar
линк

… в то время как в официальных результатах все совсем по-другому.
avatar
Лёше насрать. у него своя история.
avatar
мне вспоминается одна история в пиндостане. одна бабуля в кресле замахивалась на другую с криком «Сука, ты хотела меня убить!». Почему? бабуль-божих одуванчиков везли по коридору в столовую, одна решила прикрыть за собой дверь и чуть не прищемила вторую. Вот и вы похожи на них: не так посмотрел, не то сказал, не так понял, а обиды общие. Да, меня ааа раздражает, особенно его высказываниями и набегами на поует. Нет человека — нет проблемы.

Короче, если движок позволит, я прикрываю каменты, кому понадобится, пишите в личку.
Автор топика запретил добавлять комментарии