+174.96
Рейтинг
748.12
Сила

spke, specke или просто лёша

Какое-то очень, очень странное мышление.
Всё наоборот, автор не обогатит конкурс своими играми, так как вы придумали запретить кодовые вставки.
Вот тут получается, что этот трек написан Davos в 1999 году, т.е. скорее он по мотивам Illusion чем наоборот: zxart.ee/eng/authors/d/davos/speccy2/
У нас с тобой как с Nuts_, язык вроде один, а понимания не происходит.
Ничего тупого в таблицах я не вижу, тупо делать что-то сложное, когда есть простой способ решения задачи.

То, что авторы не слышали ни об одном из описанных методов, тем не менее, совсем не означает, что они не задействовали одну из описанных по моей ссылке формул. Я собственно уверен на 99% что одну из них они и сделали.
ОК, например, линия Dark^X-Trade, прекрасная статья, никаких вопросов вообще. Но много ты знаешь реально быстрых линий, спроектированных иначе чем у него?
Ммм, а ещё возможно, что они и по-честному посчитали, с учётом перспективы.
Вот тут есть пример выкладок: www.javaworld.com/article/2076696/learn-java/draw-textured-spheres.html
Мне, кстати, кажется, что твоя точка зрения про таблицы весьма экстремальна. Мне прекалк в 30 секунд не кажется нормальным, а уж особенно в середине трекмо. Ты напомнил мне, как кодер ротозумера в Batman Forever на амстраде вместо традиционного расчета вектора для шагания по текстуре сделал просто таблицу готовых векторов для каждого нужного ему угла и его обвиняли его в том, что у него не ротозумер, а анимация.

С моей точки зрения, это какие-то бессмысленные ограничения, которые портят впечатление с т.зр. зрителя. Т.к. я стараюсь делать демы для зрителей, я не считаю принципиальным кто и где считал таблицы и, даже больше, я уже неоднократно задействовал кодогенераторы написанные на PC. Это позволяет при прочих равных условиях повысить качество сгенерированного кода (качество в плане объёма и/или скорости), даёт сопоставимую скорость распаковки, а так же в разы упрощает отладку.
Я бы рассказал с удовольствием, если бы у меня не было чёткого ощущения, что должен быть какой-то способ лучше чем то, что я наделал в запарке. Итоговый эффект вышел в 3 фрейма на пентагоне; но концовка самую малость тормозит на классике, т.е. слегка вылезает из 3х фреймов. Исходно подразумевался рендер в 3 прохода (1. линии -> чанки 2х2, 2. чанки 2х2 -> чанки 1х1, 3. вывод чанков 1х1), но в первом проходе я накосячил и времени переделать его ещё раз не оставалось, поэтому сделан второй проход, который чинит недостатки первого, потом третий проход, который частично красит кадр и переводит всё в чанки 8х8 и только потом 4й проход с выводом чанков.

Первые 2 прохода, невзирая на недостатки того, как я их сделал, довольно эффективны. Третий проход писался последним и на него не было времени, он фактически не оптимизирован…

Короче, ты прав, может и нужно написать ужастик, хоть кодеры поржут.
Нет однозначного ответа на этот вопрос. Картографы бьются уже который век в спорах, как правильнее натягивать карту на глобус.
Вот таблица из Википедии: en.wikipedia.org/wiki/List_of_map_projections#Cylindrical

Авторы Illusion приложили только таблицу, поэтому можно потратить несколько дней исследуя, какую именно из проекций они применили. Я этим заниматься не буду. Наиболее вероятные кандидаты — Equirectangular, Mercator, Gall stereographic, Miller, Lambert cylindrical equal-area, Gall–Peters, т.е. различные «старые» проекции.

Собственно, это одна из причин почему мне кажется бессмысленным давать рецепты такого рода. kotsoft прав, что самые интересные секреты — это вычисления в этом роде. Но какой смысл научить сейчас всех, допустим, Ламберту, чтобы потом все как попугаи шпарили шары с одними и теми же искажениями?
Вот в этом твоём «кто-то учтёт моё пожелание» и заключается причина моего раздражения. Ты пишешь вопрос под моей статьёй, но адресуешь свои призывы «кому-то». Этот неведомый «кто-то» должен по-твоему написать эту же самую статью по-другому. Влезть в код и что-то там рассмотреть не так как я, а так, как хотелось бы тебе. Или что-то ещё в том же роде.

И меня это злит. Потому что этот «кто-то» — это ведь подразумеваюсь я, но задать мне прямой вопрос тебе видимо не позволила гордость или х.з. даже что. В итоге сначала я должен тянуть из тебя клещами информацию о том, чего же тебе собственно хочется (ну, за пределами очевидного понтования о том, как тебе всё это кажется тривиальным). И после всего этого я же и оказываюсь виноватым, потому что ты, якобы, меня покритиковал, а я, якобы, адекватно воспринимаю только плюсики. Твой комментарий — это типичнейшее в стиле zx-pk.ru потребительство, где ты полон мыслей, что всё нужно делать не так, а лучше, но сам явно ничего делать не собираешься; тебе оказалось лень сформулировать даже прямой вопрос.

Генератор развёрнутого кода начинается с адреса #6133. Данные о пропусках хранятся в таблице с адреса #6944.
Формат таблицы такой:
6944:	db	0c ; ширина в пикселях этой строки сферы (+1 или +2, это какой-то подгон под кодогенератор)
6945:	db	0c,06,04,04,04,03,04,04,04,06,0c ; 11 пропусков для пикселей первой строки
и т.д.

Мне было лень сейчас разбираться, как там согласовано то, что ширина хранится не точно, а +1 или +2. Непосредственно число в начале строки преобразовывается в число пикселей на половину рисунка, потом пересчитывается в сдвиг в байтах (для вывода на экран) и там возня не интересная, приспособленная к конкретному коду.
Ты с кем сейчас разговариваешь, поясни пожалуйста. Если понятно что синус, зачем спрашиваешь. Если тебе интересно, как люди, вообще, считают и хранят разные, вообще, математические функции? ну, по-разному, и считают, и хранят. Как можно ответить на такой широкий вопрос? Только так же широко. Учи математику. Придумывай, как все остальные придумывают. Но какое отношение это всё имеет к демо «Illusion»?

Какие-то авторы статей про демо-эффекты тебя не удовлетворяют…
Ну вот скажу тебе симметрично, что комментаторы у статей про демо-эффекты тоже бывают весьма замысловатые.
Ну вот а мне такой способ объяснения понятнее, чем лоскуты неперевареного кода, которые любишь выкладывать ты.

Твой Moving Shit, насколько я помню, и был причиной я влез в Illusion, потому что у тебя было душераздирающе медленно (в 4 раза медленнее, насколко я помню). Если бы ты научился думать о внутренних циклах описанным мной образом, м.б. и у тебя вышло бы пошустрее.
Не, мои исходники в обозримом будущем в опенсорс не пойдут.
Да, он, родимый.
Прямо на скриншоте, посмотри на верхнюю кромку слова SHIT и сравни её с нижней кромкой. Ничего не напоминает?
А теперь посмотри на линию между H и I, и сравни её с правой кромкой буквы T.
Думаю, это отвечает на твой вопрос :)
Общую идею понял, спасибо!
Да!
Я решил для себя, что не буду обсуждать улучшения эффектов по двум причинам. Во-первых, это может показаться людям обидным, что мне меньше всего бы хотелось (см. треды такого типа Алон-кодера на zx-pk.ru). Во-вторых, лично меня очень вдохновляет даже просто посмотреть на эти решения, просто как способ думать немного по-другому. В третьих, с моей точки зрения, если есть мысли как улучшить, нужно делать об этом демо, а не писать об этом на Hype :)

А вообще — «Illusion» — одна из немногих дем 1990х, которая нравилась мне тогда и нравится сейчас. Она быстрая, без передержанных сцен, с мелодичным треком, с чувством самоиронии и без типичных для того времени понтов. Впечатляющая не смотря на это всё. Подытоживая, я не думаю, что когда-нибудь сделаю дему похожую на «Illusion», но отношение у меня к ней очень тёплое.

Плейер я даже не посмотрел, — там в бегущей строке под робокопом авторы сами написали что у них плейер 4500 тысячи тактов.
Между прочим, тебе благодарность: твои метаболсы на тс-конфе заставили меня задуматься как их делать на дохлых платформах (типа нашей).
Твою домашку сам знаешь. Популярное объяснение bump-mapping :)