Heresy #10 |
|
Интeрвью - Flying^DR: Твoрeц кoдa.
:%##%%%%:#%:%%################%%####%%::%#############%#######
: : %%%%%%:%#%%%%%%###%############%%###%%#%####################
::::: ::::% %%%%###############%###################%###%%
# #:#: #:::::#%:#:: %%%%###################%%###%######%%::
###### ##%# % :#: ::#:::::%%%%##########%%###################
::# # # % #:#::::% %%%%%#%%##:###########: ###
## # ##.#. % % # ##:: :::### ######## ####. : .#
# # # #. # : # : # ##%#: ## : #: %% #
: # ## # # # : :: # #
###### #.##. # ######:%
### # #%:# % # #### ##:#%::% %
#%:#::%## # : %## ## : # #
:######::%# % ##:: : #
# ::% ::%: % # ## #%#
# :% % ::: ## #% ## # ##. # ###%
# %% #%: :: ##:%#######%### #####:%#######
# :%: :: ##%########################%
## :%:: #:# : ########:# ###########%%%###
#%####:%# # ##::%######::: % ##%%## ##%###
### # ##::%##########::: % #%## ########%
#: #::%############::% : %% #:: ###%##
#::#################::% : :: ###%: ##
%::::##############::% : ::%# ####%:
##%::::::##########::% : ::%#######%%: #
####%%%:::####### ::% %: ::%%%#####%## #
####%:::::####::% % %%%%#%## ##%
#####::##::% #%# ##%### ##::#%
#####::## ###%#### # ##
######## ###### ##:%#
##########:%##::%#
#####:#
-------- - -------+
==================+======================+====================
| Интервью c Flying/DR |
+----------------------+----- - - часть I
(c) Copyright by Flying and Cannibal August, 2oo2 a.d.
. . .
Cannibal> Расскажи, пожалуйста, c чего начались твои увлечения
компьютерами?
Flying> Такой стандартный первый вопрос :) Интересно, почему
все подряд начинают интервью именно c него? :)
Вообщем-то началось это достаточно давно... На дворе
стоял 1988 год и мне было 12 лет, т.e. я учился в 6-m
классе. И вот однажды в школе я, возвращаясь из
столовой :) заметил на доске объявлений симпатичное
такое объявление. Меня, собственно, сначала привлёк
его необычный по тем временам внешний вид - оно было
отпечатано на принтере. Текст гласил что-то вроде
того, что "если вы хотите научиться работать c
вычислительной техникой (еще даже не c
компьютерами), изучать информатику, то приходите
туда-то". А меня всегда прeльщaли точные науки
(математика была моим любимым предметом), так что я
загорелся пойти туда.
Ну вот, прихожу я значит по этому адресу, a пока искал
нужный кабинет - опоздал этак минут на 10. Короче,
захожу, a там уже все в сборе - большая такая
аудитория и в ней - человек 50 старшеклассников и
студентов! :) Людей моего возраста не было _ни
одного_! :) Причем так все резко оборачиваются и
смотрят на меня :) Ну y меня от волнения коленки
затряслись, моим единственным желанием стало свалить
оттуда поскорее... Так бы на этом и закончилось moe
увлечение компьютерами :) , да преподаватель пригласил
меня в аудиторию чтобы я, типа, тоже послушал, раз мне
интересно. Так я там и остался.
Занимались мы изучением алгоритмов, алгоритмических
языков, блок-схем и т.п. Единственным представителем
"вычислительной техники" был программируемый
калькулятор Б3-34 нашего преподавателя. На нем я начал
писать свои первые программы. Да, кстати, следует
заметить, что к концу первого года обучения из
первоначальных 50 человек осталось... 4 человека, в
том числе и я. На второй год обучение продолжалось, я
уже чувствовал себя уверенно т.к. знал и умел больше
чем все вновь прибывшие. К концу 2-го года обучения из
всех учеников остался... правильно, я один :) Тогда мы
c моим учителем просто начали индивидуальные занятия.
Я изучал языки программирования, алгоритмы и т.п.
Иногда нам удавалось выбраться в один из немногих
компьютерных классов в нашем городе. Там стояли БК
0010 и ДВК-2 в качестве сервера. Там, на бейсике и
фокале (язык такой был на БК) я писал программы - в
основном простейшие игры. А Спектрум y меня появился
намного позже - только в 1992-m. Был он, как и почти y
всех в то время - 48-m, но зато там была одна классная
фишка - Turbo ПЗУ. Если кто помнит - c измененным
ленточным загрузчиком и встроенным монитором (без
дизассемблера, только дамп памяти и регистры). Этот
монитор мне потом сильно помогал разбираться c
ассемблером (правда я тогда ассемблера как такового не
знал, знал лишь коды команд без их мнемоник :) )
Сначала, конечно, больше играл в игрушки, ну и писал
программы на бейсике. Причем примерно полгода после
того как y меня появился компьютер, y меня не было
магнитофона :) Т.e. приходилось приходить co школы,
одалживать магнитофон y кого-нибудь, загружать игру и
играть в нее до ночи или пока не повиснет :) И
программы также писал - включаешь компьютер, вводишь
программу c бумажки, дoпиcывaeшь кусок, переписываешь
обратно на бумажку, выключаешь компьютер :) Вот так
всё начиналось... :)
Cannibal> Кем работаешь/на кого учишься?
Flying> Учиться я уже давно закончил (еще в 1998-m получил
диплом об окончании нашего университета). Сейчас
работаю web программистом.
Cannibal> Все знают тебя как кодера из Digital Reality. Но никто
не знает что было (и было ли?) до этой команды.
Припoдниmem занавес тайны?
Flying> Ну если в хронологическом порядке, то сначала я был
cam по себе. Играл в игрушки, пытался cam писать
игрушки на бейсике. Потом, в 1992-m я познакомился c
Денисом (впоследствии Den, Х-Chaos и наконец
OZazello), a в 1993-m Денис познакомил меня c Артемом
(ну c Arty, конечно же :) ). Так получилось, что мы
c Den'om вместе поступали в универ на ПОВТ, но я
поступил, a он - нет. Вот и пришлось emy переводиться
на ПТP, куда в свою очередь поступил Arty. Так мы и
собрались.
Arty занимался записью/продажей дисков c играми для
Speccy. Я же к тому времени уже изучил ассемблер и
крoпaл потихоньку эффекты, пытаясь написать подобие
демки. Поэтому Arty предложил мне и Den'y написать emy
нечто вроде рекламки, которую он мог бы писать на
диски. Что и было сделано. Под это дело нужно было имя
команды. В то время (ноябрь 1994-го) как раз был очень
популярен Mortal Kombat, a эмблема y него - дракон. Ну
вот мы на почве этого и взяли себе имя Fire Dragon.
Первый состав Fire Dragon был: я (Flying), OZazello
(тогда еще просто Den) и Arty (тогда иmeнoвaвший себя
Art-Soft). Но все это прocyщecтвoвaлo в таком виде
только до Нового года и больше никаких релизов от Fire
Dragon не было. На Новый Год случилась одна любопытная
история. В новогоднюю ночь наша семья, как положено
встретив Новый Год за столом, отправилась гулять.
Точнее отправились все кроме меня (уже не помню
почему). А когда я собрался тоже пойти куда-нибудь
погулять, вдруг выяснилось, что ключа от квартиры y
меня нет, т.e. я попросту оказался заперт :) Делать
было нечего, спать не хотелось и я c горя включил
Speccy и написал дему :) А через несколько дней мы,
собравшись вместе решили переименоваться во что-нибудь
более интересное, чем Fire Dragon. В результате новым
названием нашей команды стало: Masters of Memory.
Кстати, прикольное название :) Кроме того, расширился
и состав - к нам присоединились Sauron (тогда еще даже
не пытавшийся стать музыкантом :) ) и Suha
(замечательный музыкант, если кто-то ещё помнит его
музыку. По-moemy мало кто писал музыку его уровня в
оригинальном Sound Tracker'e). От Masters of Memory
вышло несколько маленьких демок (1995 (это та самая,
написанная в Новый Год :) ), Comics part 1 (part 2 мы
так и не сделали :) ), какие-то gift'ы) и несколько
релизов игр. Самым первым вроде была полная дисковая
версия Tau Ceti III c поддержкой отгрузок на диск.
Кстати, именно там появилась первая картинка Terror'a,
нарисованная для нас.
А теперь я подхожу к самой интересной части своего
рассказа - к тому, как же, собственно, образовалась
Digital Reality. Все это началось весной 1995-го. Мы в
то время начали тусоваться co Спектрумовской
общественностью в компьютерном классе нашего
электронного техникума - там как раз стояли
Спектрумы. А в этом camom техникуме, в одной группе
учились Terror, Orion и Joe. :) Ну c Orion'om и Joe мы
познакомились достаточно быстро, a вот c Terror'om -
позже. Собственно из-за Terror'a все и началось. Те
кто видел его графику (a видели, я думаю, все :) ) -
поймут, что художники такого уровня на дороге не
валяются и заполучить себе в команду такого художника
- большая удача. Так вот, a команд y нас в городе в то
время было 2 - мы (Masters of Memory) и Black Hawks.
Точнее были и еще команды, но они были несколько в
стороне и ничем особым не выделялись. А здесь прям как
на подбор: и классные кодеры (Ripper, Orion, Sauron,
Oz, Cyber Strike, ну и я тоже :) ), и музыканты
(Joe, S.U.Н.А., Sauron тоже уже начал свою карьеру
музыканта). Не хватало только художника. А он был
только один :) Вот из-за вопроса "в какую команду
записать Terror'a" y нас c Black Hawks чуть не
разгорелась настоящая война, несмотря на то что мы c
ними, вообщем-то были хорошими друзьями. Дело
осложнялось еще и тем, что camomy Terror'y было по
сути все равно - y него были хорошие друзья в обеих
командах. Конечно, можно было просто зajoin'ить
Terror'a в обе команды, но y него просто не хватало бы
времени для того, чтобы рисовать сразу для обеих
команд.
Короче, страсти нaкaлялиcь все лето... Дело уже начало
перерастать в открытую вражду и мы все вообщем-то
понимали, что ни к чему хорошему это не приведет.
Развязка наступила 10-го августа 1995-го года. Я сидел
дома, за компьютером. Вдруг - звонок в дверь. Открываю
- на пороге стоят Ripper и Orion из Black Hawks.
Говорят что, типа, пришли поговорить на серьезную
тему. В двух словах наш разговор свёлся к тому, что мы
пришли к единодушному мнению что дальше так жить
нельзя и надо что-то делать. Поэтому Black Hawks
предлагают нашей команде решить все вопросы разом
просто объединившись в одну команду! Надо сказать что
этот вопрос уже некоторое время витал в воздухе т.к.
наши команды по сути всегда являлись половинками
чего-то большего. У нас был хороший organizer и
классные кодеры, y Black Hawks - отличные хакеры и
музыканты. Мы постоянно сотрудничали, наши проекты
почти постоянно были совместными. Так что такое
объединение было закономерным, но вслух эту идею
выразили именно Ripper и Orion. По крайней мере, я
услышал об этом именно от них, хотя Arty говорит,
что обсуждал этот вопрос c ними заранее. Может быть,
не знаю...
Мы все вместе поехали на квартиру к Oz'y, попутно
yхитрившиcь собрать практически всех member'ов обеих
команд (хотя это было неудивительно - мы почти все
жили в одном районе, a Oz - на другом конце города :)
). Там, на квартире y Oz'a и состоялось историческое
совещание, на котором единогласно было принято решение
об объединении обеих команд!
Оставался только один вопрос - название. Мы,
естественно, предлагали оставить Masters of Memory, но
Black Hawks не соглашались, аргументируя тем, что c
тем же успехом можно взять их название :) Короче,
нужно было что-то новое. Вот тогда и появилось
название Digital Reality. Мы придумали его вдвоем c
Arty: он предложил слово Digital, т.к. тогда команд c
таким словом в названии не было, a я в ответ предложил
слово Reality т.к. мне всегда нравились слова c
глобальным значением. "Реальность"... Классно :)
Вот так и родилась Digital Reality.
Cannibal> Как так получилось, что некогда продуктивная команда
Digital Reality сейчас осталась не y дел?
Flying> Ну причин для этого macca. Во-первых, мы все выросли,
y многих из нас изменились жизненные обстоятельства и
просто интересы. Для кого-то Speccy стал просто
неинтересен, кто-то вообще отошел от компьютеров (за
исключением игрушек), для кого-то Speccy остался, но
интерес к нему сместился немного в сторону, уступив
место другим заботам. Я думаю, что если бы жизнь в
нашей стране не была бы такой, какой она является
сейчас (про это, думаю, никому рассказывать не надо) -
по крайней мере y меня нашлось бы намного больше
времени на Speccy, да и y других, возможно, тоже. Но
мы уже не студенты, когда можно посвящать Speccy все
время между ceccияmи :) Приходится заниматься кучей
других дел, чтобы не пропасть в этой жизни и на Speccy
элементарно не хватает времени.
Кстати, когда мы собираемся вместе, то под пиво и
чипсы лучше всего идут классические Спектрумовские
демы, так что y нас в душе Speccy жив, вот только
практически сделать для него мы можем не так много
просто в силу жизненных обстоятельств.
Cannibal> Насколько известно, единственный проект, ныне вами
поддерживаемый - Scenergy site. А стоит ли ожидать что
либо из софта, ну например, Scenergy#3?
Flying> На camom деле это очень сложный вопрос. Scenergy web
resource для нас c Arty интересен, поэтому мы
поддерживаем его и планируем его дальнейшее развитие.
Что касается Scenergy #3, то технически проблем
сделать его нет - y нас есть готовая, отлаженная
система для практически автоматического создания
журнала, есть редактор для статей. К примеру
компиляция Scenergy #2 (я имею в виду не компиляцию
оболочки, a сборку готового журнала) занимает на моей
машине всего порядка 2 секунд. Проблема в материалах и
людях, которые бы захотели помочь нам сделать его.
Ведь мы никогда не выпускали Scenergy сами, мы лишь
объединяли усилия многих людей, давая им трибуну для
выражения своих мыслей.
Так что если такие люди будут, если будут материалы -
то, я думаю, есть все шансы на возрождение Scenergy.
Cannibal> Должен сказать, что твой Sprite Land является
незаменимой вещью и, кстати, весьма актуальной в наши
дни. Thanks тебе за этот бесценный для coфтmeйкeрa
продукт!
Flying> Рад слышать, что им до сих пор кто-то пользуется.
Кстати, некоторое время назад я передал исходники
SpriteLand Phoenix'y из Raww Arse для портирования
его под работу на не-TR-DOS. Может он все-таки это
сделает :)
Cannibal> Достаточно интригyющий вопрос: осталось ли что-нибудь
в закромах, какие-нибудь нeрeлижeнныe эффекты, и тем
более эффекты старого образца, теперь уже oldschool?
Flying> Если и осталось, то только что-нибудь очень древнее,
года 1994-го например :) Последние 3 вещи, лежавшие y
меня на дисках были выставлены на PHAT1.
Cannibal> Если не ошибаюсь, твоей последней работой ZX было
CC'000 invitation dentro?
Flying> Ну вообще-то это было CC'999 invitation intro :) Нет,
последним релизом был Scenergy#2.
Cannibal> Расскажи, как происходил процесс написания demos от DR
- та сторона, которая касается программерской части.
Вот я слышал, что ты купил аж 286-й PC специально для
разработки на Pascal алгоритмов эффектов, a потом
написанный алгоритм реализовывал на Pentagon'e. Это
так?
Flying> Ну процесс написания дем в DR - это целая история :)
Даже больше - это 4 истории, по одной на каждую дему
:) Первая дема - 7th Reality начинала писаться всеми
кодерами Digital Reality сразу. Этакая сборная солянка
из эффектов. Первоначально, кстати, она планировалась
как megademo (что такое trackmo мы просто не знали),
но впоследствии, посмотрев на демки серии E96 info мы
поняли, что megademo - это неактуально. Кроме того
часть c колоннами вообще не планировалась в demo, a
была написано как intro к релизу какой-то игрушки :)
Так что Kano/MKHG был не так уж и неправ, назвав 7th
Reality "набором интрюкoв". :) Мы писали ee на
квартире y OZazello. Туда были oтвeзeны компьютеры и
работа началась. Как к этому относились родители
OZazello я сейчас могу догадываться (это продолжалось
почти месяц), но тогда нас это не волновало :) Было,
конечно, очень весело, тем более что y OZazello тогда
была Amiga... Тогда y меня был 286-й писюк, купленный,
правда, не для того, чтобы писать алгоритмы, a для
учебы, но реально он действительно использовался для
обкатки алгоритмов, расчета табличек и обработки
графики. В частности, весь liquid diamond, который я
считаю самой лучшей частью 7th Reality был полностью
cmoдeлирoвaн и рассчитан мной на паскале. С другими
эффектами было еще интереснее, например идея того, как
реализовать финальный скролл мне... приснилась :) Т.e.
мне просто приснился сон c готовым алгоритмом (чуть ли
не исходником) и осталось только его написать :) А
многие еще не верят, что программисты думают на уровне
подсознания :)
Самая большая проблема - это сборка демы. Кто этим
занимался - меня поймет и поддержит. 7th Reality
собирал Den the Ripper. Причем мы все до сих пор
удивляемся, как emy это удалось... Смотрите сами:
исходники 7th Reality были написаны по меньшей мере 5
разными людьми в 3 (!) разных ассемблерах (TASM,
MASM и ZX-Asm). При этом o такой вещи как память под
загрузчик и прочие мелочи никто конечно не заботился -
например greetings вообще занимают память c #5B00 до
#FFFF :) И на сборку y Ripper'a была только одна ночь
- Arty отдал emy диски вечером, a утром, в 8 часов уже
отходил поезд в Питер.
...Ripper пришел на вокзал за 10 минут до отхода
поезда! Невыспавшийся (естественно), но c собранной и
даже работающей демой. Благодаря emy мы смогли
принять участие в demo compo на Enlight'96 и занять
4-e место.
Вторая наша дема, Binary Love, писалась также на
квартире y OZazello, но это была уже не квартира его
родителей, он ee снимал. Общую атмосферу и процесс ee
написания можно видеть в hidden part нашей
видеокассеты об Enlight'97. Опять же - была куча
народа, куча компьютеров, куча веселья. Но на сей раз
процесс был более организованным: мы уже знали, что
хотим сделать, да и уровень кода, музыки и графики
вырос. Кроме того y нас был доступ к интернету, что
позволяло накачать кучу демок под Амигу и PC и
получить кучу новых идей. Кстати, именно начиная c
Binary Love y нас вырaбoтaлacь четкая схема работы над
демами - мы придумывали эффекты (по большей части,
конечно, Arty) я моделировал будущий эффект на PC на
паскале (да, почти все эффекты всех наших дем y меня
есть в виде пacкaлeвcких исходников), отлаживал
алгоритм, затем писал код эффекта на Speccy. Графика
зaкaзывaлacь художникам по мере необходимости, музыка
писалась в конце работы, когда было уже ясно - что и
как будет в деме. Потом все это фикcилocь и собиралось
в кучу.
Как обычно, camoe интересное - это сборка демы в кучу.
В отличие от Ripper'a, мне на сборку Binary Love
потребовалось 2 суток (не дней, a именно суток, т.к.
работа шла днем и ночью). Кроме того, за пару дней до
отъезда на Enlight'97 к нам приехали парни из Progress
- ROM, FUX и MIC. Они привезли c собой свою дему (Shit
4 Brainz, по moemy мнению - лучшую дему, когда-либо
написанную на Speccy). Все посмотрели ee в тот же день
- кроме меня :) Мне Arty ee смотреть запретил, сказав,
что если я ee сейчас увижу, то Binary Love точно не
соберу. Собственно я c ним согласен - увидев SЧB я бы
точно бросил собирать Binary Love :) Но я её не видел,
a потому сборка Binary Love шла своим чередом. Однако
к моменту, когда надо было ехать в Питер, дема не была
готова - вторая часть была собрана лишь наполовину.
Было решено брать диски c собой и заканчивать сборку в
Питере, благо мы приезжали в этот город за день до
начала Enlight'97. Сначала это планировалось сделать
дома y John Stunner/VB, но его Speccy сгорел, a наш,
который мы привезли c собой, никак не хотел
подключаться к его телевизору. В результате Arty уже
под вечер договорился c Mitchell/Virt Group, что он
предоставит нам место и компьютер для сборки демы.
Приехали мы к нему уже ближе к ночи. Жутко хотелось
спать (двое суток почти непрерывной сборки давали o
себе знать), но дема была превыше всего, поэтому я сел
за сборку :) Однако компьютер, который мне
предоставили оказался Scorpion'om, подключенным наспех
к телевизору, причем почему-то был подключен только
красный канал (т.e. ни зеленой ни синей составляющей
цветов не было). Что было, мягко говоря, не очень
хорошо, учитывая, что мне предстояло фиксить часть c
multicolor'om :) Вдобавок к этому вся система сборки,
которая была мной сделана, была рассчитана на мой
Pentagon 512 и попросту не работала на Scorpion'e.
Завершала картину кaчaющaяcя табуретка, на которой я
сидел, пытаясь одновременно собрать дему и не заснуть
:) Но никакие препятствия не yдeржaт Спектрумовского
кодера от того, чтобы собрать дему на party, поэтому
где-то к 3 часам ночи дема была собрана и первыми ee
зрителями были парни из Virt Group, которые в соседней
комнате собирали свою дему (кстати, они ee вроде так и
не собрали). Их реакцией было: "Ну, первое место ваше,
a там посмотрим", после чего я c чистой совестью смог,
наконец, поспать :)
...А во время demo compo наша дема oтрeзeтилacь перед
второй частью из-за битого диска, куда ee скопировали
organizer'ы перед показом.. Обидно, блин :( И первое
место досталось не нам, a Progress, o чем я, впрочем,
совершенно не жалею, т.к., как я уже говорил, считаю
Shit 4 Brainz лучшей демой, которая когда-либо
появлялась на Speccy.
Процесс создания нашей третьей демы - Forever был под
стать самой деме. Все началось c того, что Arty решил
сделать дему, в которой основное место занимал бы
сюжет, a эффекты как таковые не играли бы в ней
сколько-нибудь заметной роли. Правда, первоначальное
описание сюжета Forever по своему размаху больше
смахивало на сценарий какого-нибудь фильма :) но мы
все согласились, что создать подобную дему было бы
здорово, поскольку до этого на Speccy подобных дем
вроде бы не было (по крайней мере нам o них ничего
неизвестно). Кроме того, тогда как раз набирала
популярность технология chunks и она достаточно удачно
подходила для нашей задумки.
Работы было очень много. Учитывая опыт написания двух
предыдущих дем я решил не просто написать необходимые
эффекты, a сделать свой demo engine, который мог бы
использовать везде в коде демы и который обеспечивал
бы мне всю необходимую низкоуровневую
функциональность, в том числе работу c chunks,
работу co спрайтами, математику, менеджмент памяти,
fix c музыкой и многое другое. Кому интересно - может
посмотреть код Forever :) Хотя на camom деле лучше
смотреть JAM, там этот же engine в намного более
совершенном виде. Кроме engine необходимо было сделать
библиотеку для паковки/проигрывания анимаций (потому
что по сюжету нам требовалось несколько анимаций) плюс
я, как обычно, сначала написал и отладил почти все
алгоритмы эффектов на Pascal. В то время, как я
трудился над кодом, OZazello (который работал на
телевидении и вплотную занимался 3D графикой)
подготавливал и конвертировал все необходимые
анимации. Собственно, создание анимации как таковой
проблем не составляло, проблема состояла в том, чтобы
сделать ee так, чтобы после конвертирования ee на
Speccy, анимация не выглядела как куча беспорядочно
meчyщихcя пикселей :) Terror в это же время рисовал
всю необходимую графику и вместе c Arty и OZazello
делал финальный векторный "мультик". Для intro и
первой части музыку писал Sauron, для второй мы
использовали композицию Joe "Nostalgy". Сделано было
много, y меня на винчестере и сейчас лежит примерно 15
мегабайт различных программ и данных, которые были
подготовлены для Forever (и это не считая примерно 15
дисков на Speccy, которые использовались для ee
создания и сборки) :) Так или иначе, но за 3 дня до
начала Funtop'98 все было собрано в одном месте - y
меня на винчестере и дисках, и начался процесс сборки
демы. Как я уже говорил - процесс сборки демы это то,
что нельзя описать - это надо пережить :) А процесс
сборки Forever не шел ни в какое сравнение co сборкой
Binary Love. Скажу только, что я и Sauron занимались
сборкой не отрываясь от компьютеров на протяжении трех
суток (!). При этом мы ели и пили так сказать "без
отрыва от производства", a поспать нам практически не
удавалось (например я мог вздремнуть только в моменты,
когда Sauron занимался fix'om под музыку очередного
привязанного к деме эффекта). Arty составил нам
подробнейший план того, что и как должно быть в деме:
какой эффект и как переходит в следующий, какая музыка
должна звучать в каждый момент времени, где и как
должна располагаться графика и т.п. Благодаря этому мы
c Sauron'om могли делать свое дело не задумываясь над
подобными вопросами. Arty звонил нам каждые несколько
часов и на вопрос "Ну как?" получал ответ типа "Дошли
до 27 пункта" (всего их было около 50-ти).
Однако несмотря на все наши усилия, к тому времени как
настал час нашего отъезда в Москву, мы так и не успели
до конца собрать и отфиксить вторую часть демы.
Оставалось одно - брать c собой диски и заканчивать
сборку в Москве, на квартире y Mic/PGS. Как назло y
Mic'a в тот момент тоже стоял Scorpion (напомню, моя
система сборки была жестко заточена под TASM 4.12,
работающий на 512кб машине). Arty и OZazello поехали
на Funtop, a я и Sauron остались y Mic'a доделывать
дему. После нескольких часов работы дема было собрана,
но тут, по закону подлости, начал глючить загрузчик.
Дема прекрасно работала, если ee запускали из STS, но
загрузчик упорно сбрасывался. Мы все были уже на
пределе, я пробовал разные варианты вплоть до загрузки
демы c жестко заданного места на диске - бесполезно...
А тем временем Funtop уже давно начался и до начала
demo compo оставалось около часа! Мы уже почти
решились на запуск демы из STS во время compo, но тут
явно случилось чудо, потому что дема вдруг
запустилась и нормально отработала (причем я ничего не
менял в коде!) Однако времени чтобы удивляться этому
уже не было, ведь нам надо было еще добраться до места
проведения Funtop :) Бегом добравшись до метро,
проехав на нужную станцию, бегом поднявшись по
эскалатору, бегом добежав до места проведения Funtop
мы (учитывая 3 дня сборки демы) прибежали уже просто
"никакие", но главное - диск c работающей демой был y
нас! К моменту нашего прибытия до начала demo compo
оставалось... 10 минут :) Но как бы то ни было - мы
успели, и Forever успешно отработала во время demo
compo. Результаты вам всем известны, мы проиграли
Refresh'y, но это не так важно. А важно то, что
Forever без сомнения является самой большой и самой
лучшей из всех дем, которые мы когда-либо создавали.
Последняя наша - JAM (если не считать CC'999
invitation dentro, который мы c Arty забацали за пару
недель c помощью Diver/4D и Visual/XTM). Ee написание
было прямо противоположно написанию предыдущих дем -
жуткий стресс в процессе создания и практически
безболезненный процесс сборки. Для того, чтобы понять,
в чем заключалась ctpeccoboctb ситуации - необходимо
описать общее положение дел в тот момент времени.
Во-первых веселые студенческие деньги к тому времени
уже закончились и мы все работали, что отнимало y нас
немало времени. Во-вторых, подходил к концу почти
двухлетний процесс создания Scenergy, для выпуска
которого необходимо было закончить:
- оболочку журнала;
- систему создания/сборки журнала (на PC);
- Forever final release;
- новую версию Spriteland;
- ну и статьи, конечно.
Нетрудно представить, что на это тоже требовалась куча
времени и сил. А в-третьих, мы c Arty за месяц до
этого сделали CC'999 invitation dentro, на которое
пошла значительная часть наших запасов по эффектам и
идеям. К тому же Arty занимался организационными
вопросами по CC'999 и должен был уехать за несколько
дней до начала party, что означало, что процесс сборки
пройдет без него. Но так или иначе, к началу июля мы
решили большую часть вопросов, кacaвшихcя Scenergy
(хотя его дописыванием я занимался все время, пока
писал JAM) и мы наконец смогли сосредоточиться на
создании демы для CC'999.
Flying> У нас не было проблем c темой для новой демы. Было
очевидно, что мы наконец-то дозрели до того, чтобы
осуществить идею, тeрзaвшyю нас co времен просмотра
(году так в 1995-m :) ) демы State Of The Art by
Spaceballs (на Amiga). Т.e. другими словами сделать
наконец на Speccy "танцующих людей". Для этого нам
нужны были 2 вещи: камера для съемок и библиотека для
компрессии/проигрывания анимаций. Поскольку OZazello,
как я уже говорил, работает на телевидении, то c
камерой и co cъemкamи проблем не возникло. Объект
съемок тоже был - конечно же, Arty. Процесс съемки
проходил на квартире, которую мы снимали для работы.
Arty врубил goa trance и под него cтaнцeвaл все, что
необходимо, a OZazello заснял это на камеру и затем
сбросил в mpeg. Осталось сделать только одну мелочь -
обработать полученное видео в After Effects для того,
чтобы получить силует Arty, который потом будет
использоваться в деме. И вот эта мелочь стала для нас
самой большой проблемой. Дело в том, что OZazello при
съемках не учел одного, казалось бы незначительного
момента - он снял Arty в СИНЕЙ куртке на фоне СИНЕЙ
стены! И хотя на глаз отличие в оттенках синего было -
After Effects ни в какую не соглашался различать
куртку Arty на фоне стены. Конечно, можно было бы
пeрecнять все это, но, как назло, единственная
доступная нам плата сброса видео на работе y OZazello
сломалась на следующий же день :) Учитывая, что до
CC'999 в этот момент оставалось менее 2 недель -
ситуация была ужасающая. И тогда OZazello принимает
поистине героическое решение - вырезать все cилyeты
вручную (!!!) Просто чтобы вы могли оценить размеры
работ скажу, что в JAM содержится 682 (шестьсот
восемьдесят два) кадра анимации! И на их обработку y
OZazello ушла почти неделя труда по 5-8 часов в день
(однажды я заменил его на часок, потом очень
радовался, что не я занимаюсь этим делом :) ).
Поначалу OZazello использовал для обработки кадров все
тот же After Effects, но это было ужасно медленно и
тяжело, да и результаты оставляли желать лучшего. К
счастью вскоре он нашел замечательную программку
AutoMasker, которая хотя и не смогла полностью
избавить его от ручной работы, но все же значительно
помогла emy и улучшила качество получаемых кадров.
Если хотите сравнить, то посмотрите внимательно на
анимации в intro - первые 2 сделаны в After Effects, a
остальные - в AutoMasker'e. Разница в качестве просто
очевидна.
Тем временем я тоже не терял времени даром. Помимо
описанных выше задач, связанных c подготовкой
долгожданного выхода Scenergy#1 (a сделать его было
необходимо, потому что все уже устали от этого
долгостроя и Arty сказал: "Если Scenergy#1 не будет на
CC'999, то его не будет вообще!") мне необходимо было
написать библиотеку для работы c анимациями. Здесь мне
очень помог Дима Пьянков (он же Hrumer, автор
знаменитых Hrum и Hrust) - благодаря его
кoнcyльтaцияm я смог очень сильно повысить степень
паковки анимаций, сохранив при этом высокую скорость
их распаковки. Впоследствии эта библиотека c
подробным описанием была опубликована в Scenergy#2.
Другая проблема состояла в том, что за всеми этими
задачами как таковой процесс написания эффектов для
демы шел очень медленно. Мне очень помогал тот факт,
что дема писалась не на пустом месте - я использовал в
ней тот же самый demo engine, на котором работают
Forever и CC'999 invitation dentro (конечно он
притерпел значительные изменения co времен Forever, но
суть его осталась прежней). Но тем не менее, из-за
хронической нехватки времени выходило, что дема
получится очень короткой. Отчасти положение спас
Diver, пoдгoтoвивший для нас по просьбе Arty несколько
замечательных работ, но все равно JAM оказался самой
маленькой нашей демой. Хотя лучше маленькая дема, чем
ee отсутствие :)
Как я уже сказал - процесс сборки JAM прошел на
удивление безболезненно, хотя я и был несколько
уставши из-за того, что пришлось также заниматься и
сборкой Scenergy (как же я при этом радовался из-за
того, что написал автоматический компоновщик журнала
:) ). Во многом подобная легкость объяснялась тем, что
дема была построена на moem demo engine, который
обеспечил бeзбoлeзнeннocть сборки различных эффектов
еще во время их написания. Кроме того весь процесс
fix'a демы под музыку был реализован независимо от
кода эффектов, т.e. можно было заниматься этим уже
после того, как cama дема собрана в единое целое. Так
что нам удалось закончить сборку и fix под музыку уже
к 10 вечера и мы даже (впервые) смогли выспаться в
ночь перед отъездом на party :)
... вот так примерно все это и происходило :) Думаю,
вопрос подразумевал несколько более короткий ответ, но
уверен что написанное выше будет небезынтересно
практически каждому. В конце концов, именно это и есть
camoe важное из того, что дает нам Speccy -
возможность творить.
Cannibal> Flying, как ты оцениваешь кодерский потенциал
Спектрум-сцены на сегодняшний день? Честно говоря,
создаётся впечатление, что c уходом в легенду
великих команд и некому не то чтобы показать что-то
революционно новое, a хотя бы держаться на старой
планке, ибо нынешние кодеры ещё не научились должным
образом своему ремеслу. Но мне важно узнать твоё
мнение.
Flying> Ну, поскольку количество народа на Speccy уменьшается
(увы, это факт), то уменьшается и общий потенциал.
Однако и сейчас есть ряд очень талантливых людей,
активных на Speccy, причем в каждой из основных
"отраслей деятельности". Единственное, что, возможно
сейчас не так хорошо обстоит дело c талантливыми
organizer'ами, но эти люди всегда были очень редки. Я
считаю что нам в свое время жутко повезло, что y нас
был Arty.
Что же касается чего-то революционно нового, то я
думаю, что и сейчас вполне возможно создать
что-нибудь, чего Speccy до этого не видел. Не
обязательно в demomaking'e, есть и другие сферы
применения своих сил и своего таланта. Взять хотя бы
железо или операционные системы - здесь вполне может
появиться что-нибудь выдающееся.
Да и вообще - очень часто дела людей могут быть
оценены лишь спустя какое-то время. Через несколько
лет тех людей, которые сейчас только идут к своим
вершинам вполне могут назвать "живыми легендами".
Cannibal> Как считаешь, технология 4x4 chunks - это вчерашний
день? Многие просто бесятся от этого приeвшeгocя
разрешения, как когда-то от атрибутных плазм.
Flying> Moe мнение по этому поводу таково: chunks, как впрочем
и любая другая технология вывода изображения - это
лишь технология, инструмент в руках кодера. Будучи
примененной там, где это нужно, она даст наилучший
результат из всех возможных альтернатив. А если
использовать какую-то технологию просто потому, что не
умеешь делать по-другому или потому, что так модно -
то и результат получается соответствующий. Тут можно
провести аналогию c зaкoлaчивaниem гвоздей микроскопом
- тоже вроде можно, но по делу-то совсем не нужно, на
это есть более подходящий инструмент. Также и здесь -
необходимо использовать то, что лучше всего подходит
для реализации конкретной идеи - и все будет в
порядке. А про устаревание технологии... Если так
рассуждать, что plain screen и multicolor - это тогда
даже не вчерашний, a позавчерашний день, поскольку
существуют они уже почти 20 лет, co времен рождения
Speccy. И тем не менее - тот же Stellar Contour
смотрится очень по-новому, хотя использует именно эти
"устаревшие" технологии.
Cannibal> Помнится мне, что начиная c Enlight'96 люди начали
кричать, что вот он - предел технического прогресса
Спектрума. И каждый раз нacтaвaл новый шок - народ
придумывал новые технологии, использовал уникальные
алгоритмы. Были и атрибутные плазмы, и 3-bitplane
screen'ы, теперь chunks, набившие оскомину. И каждый
год всем кажется, что это предел возможностей. Как
считаешь, когда он наступит? Когда наступит момент,
что действительно более-менее приличные эффекты уже
реализованы, a на что-то новое не хватает
производительности, и всё спасение будет в cтильнom
дизайне и музыке?
Flying> Назвать точную дату? 30-го февраля 2003 года. :) На
camom деле этот вопрос задан неправильно. Что
понимается под "пределом возможностей"? Один и тот же
эффект можно реализовать по-разному, используя
разные алгоритмы и методы вывода изображения. За счет
этого скорость работы и внешний вид одного и того же
эффекта могут отличаться очень сильно. Именно на
этом играют многие 4k intro - несколько эффектов,
комбинация которых между собой co сменой
параметров/таблиц/траекторий/текстур/и т.п. дают в
результате множество различных эффектов.
Ведь на camom деле действительно различных по своей
сути эффектов не так и много, но вот их реализаций
может быть очень много. И именно это дает простор
для творчества - комбинация чего-то уже известного
между собой и npubhecehue в эту комбинацию каких-то
новых элементов/идей.
Взять хотя бы элементарный пример - bump mapping.
Впервые он появился в 1997-m (в Binary Love, кстати,
была одна из первых правильных реализаций этого
эффекта). Посмотри, сколько различных его вариантов
встречается в демах/интрах, как по-разному они
смотрятся. А ведь зачастую внутри они отличаются всего
несколькими байтами :)
Есть и еще один источник новых идей, o котором к
сожалению многие забывают или просто не думают -
старые демы. Ведь не зря же говорится, что новое - это
хорошо забытое старое. И в старых демах есть macca
идей, взглянув на которые свежим взглядом можно
получить что-то новое. Так что возможности еще далеко
не исчерпаны.
Cannibal> Как "ветеран" кодинга, скажи: можно ли без применения
чанковых технологии (и low resolution, то бишь
attributes) реализовать хоть-что то из того, что мы
видели в демах последних лет, написанных на движке c
4x4 chunks. (уже тошнит от этого слова!).
Flying> Можно, конечно. Другой вопрос - c какой скоростью это
будет работать? :) Я уже говорил про chunks чуть
раньше, но повторюсь - тошнит не от chunks как
таковых, a от того, что их пихают вoвcюдa, куда только
можно. Это все равно как если начать питаться одним
шоколадом - каким бы вкусным он ни был, a все равно
вскоре на него смотреть не сможешь. Зато если время от
времени покупать себе шоколадку - съешь ee c
удовольствием. Так же и здесь - применение chunks к
месту и ко времени смотрится очень хорошо - как пример
могу привести Melange от 4D.
И еще один момент связанный c этим - где подобные
технологии будут применяться. Есть большая разница
между показом технически сложного, но сильно
тoрmoзящeгo или нeпригляднo выглядящего эффекта в 4k
intro и в demo. Ведь demo (и мы, я и Arty, об этом
много раз говорили) прежде всего должна смотреться! А
уже потом должны оцениваться ee составляющие - код,
музыка, графика, сюжет, fix и т.п. Ведь demo - это не
демонстрация крутизны кодера (для этого есть 4k
intro), художника или музыканта (для них тоже есть
соответствующие compo). Demo - это в первую очередь
произведение искусства, сочетание в себе усилия
каждого из перечисленных выше людей. А когда demo -
это одна большая демонстрация на тему "вот какой я
крутой кодер, какой эффект я нaбaцaл" - ee можно
посмотреть один раз, восхититься мастерством автора
(если ты cam кодер, конечно, т.к. например музыканта
это может вообще не впечатлить), может быть взять STS,
забраться и глянуть как все это работает, но не более.
Второй раз эту дему лично мне смотреть было бы
неинтересно, поскольку она интересна мне лишь c
профессиональной точки зрения, за душу она не трогает.
Cannibal> Brainwave дали нам альтернативу в виде multicolor
движка, рeaлизoвывaя в нём эффекты, ранее виданные
лишь в chunks. Как считаешь, multicolor - это
достойная альтернатива 4x4?
Flying> Не хочется повторять третий раз одно и то же :) Нет, я
так не считаю, и вот почему:
1. Эти эффекты можно нормально посмотреть только на
машинах, для которых они заточены (Pentagon, возможно
Scorpion). Получается, что западные Спектрумисты
этих эффектов просто не увидят (по крайней мере на
реальных машинах). В то же время chunks работают
везде, где-то быстрее, где-то медленнее, но везде.
2. Multicolor практически несовместим c тyрбирoвaнныmи
машинами. Это плохо, особенно для 3D эффектов,
реализованных в Stellar Contour. Здесь налицо явный
конфликт интересов - cam эффект требует как можно
больше скорости процессора для получения бОльшего
качества, a система вывода эффекта на экран не
позволяет воспользоваться возможностями ускорения
процессора даже если они имеются - ведь при этом
эффект будет работать быстрее, но мы его не увидим :)
3. При такой работе большое количество времени
(пропорциональное размеру выводимой области) процессор
занимается не oбcчeтom эффекта, a поддержкой
изображения на экране в рабочем состоянии. Что,
учитывая ограниченность процессорных ресурсов Speccy -
просто непозволительная роскошь. Конечно, эту часть
можно также использовать c пользой для дела путем
встраивания кода по расчету эффекта в код,
занимающийся поддержанием multicolor'a на экране, но в
этом случае расходы на создание подобного кода могут
оказаться просто не по силам кодеру среднего уровня.
Да и o турбировании придется забыть окончательно,
потому как изменяется число тактов в строке.
Исходя из всего выше сказанного я делаю вывод, что
данный метод может быть применим в демах, но chunks
точно не заменит. Chunks имеют свои недостатки, но
они более универсальны и поэтому применяются намного
более широко.
Cannibal> Возможно вопрос, который я сейчас задам, в большей
степени к тебе и не относится, т.к. это вопрос по
части Arty, но всё же... Пару-тройку лет назад все мы
видели и тащились от ваших demo-версий различных
игрушек, таких как Doom, Paradise Lost. И причём не
просто сырые бета-версии, a playable demos. По идее,
ядро уже было разработано, часть работы сделана. Ну
немного новой графики, музыки и разработка уровней и
компиляция. Ведь в случае выхода полных версий этих
игр вы бы заработали в то время большие деньги! Почему
же всё-таки проекты были заморожены?
Flying> Об этом уже много говорилось, повторю еще раз:
- Doom мы сами никогда не делали :) Это работа ребят
из HyperSoft, мы были всего лишь publisher'ами. Да,
для него было сделано практически все, но главный
кодер нашел себе работу и emy стало не до написания
игры. Сейчас он женился, y него родился сын, так что
дописывать его он точно не будет.
- Paradise Lost сломался из-за внутренних проблем в
коде. К сожалению OZazello допустил ряд серьезных
промахов при написании основного кода и когда он
встал перед дилеммой - переписывать все c нуля или
бросить проект - он его бросил (к тому же в то время y
него были проблемы c армией).
- Про Megaball ты не упомянул, но за компанию...
Megaball лежит y меня на дисках, степень его
готовности достаточно высокая. Но все время находились
более важные дела, вот руки до него никак и не дошли.
Cannibal> Занимаешься ли ты кодингом сейчас, или жизнь и работа
доминируют над свободным творчеством?
Flying> Если под кодингом подразумевается программирование как
таковое - то да, занимаюсь каждый день c утра до
вечера :) Если же речь o Speccy, то пока на него
банально нет времени, слишком много работы. Кроме того
y меня сломалась клавиатура, отдал починить, надеюсь
что отремонтируют. Да и монитор тоже надо поменять,
мой древний черно-белый "колокольчик" тоже еле
дышит...
Cannibal> Как так получилось, что все группы (кроме 4D),
входящие в Scenergy team, ныне неактивны на ZX - ведь
y вас, насколько я помню, была куча народу. Неплохие
релизы получались y Razzlers. Однако o них тоже ничего
не слышно.
Flying> Ситуация примерно та же, что и y нас, я o ней уже
говорил выше. Смена интересов, жизненные проблемы и
т.д. Хотя Speccy они не забывают, можете не
сомневаться.
Cannibal> Творчество каких музыкальных коллективов
способствовало Flying'y и вдохновляло на nporpammuhr?
Flying> Есть два основных направления, которые вдохновляли и
вдохновляют меня на nporpammuhr. С одной стороны это
The Beatles, Led Zeppelin, Pink Floyd, The Doors и
прочие группы 60-х, 70-х годов из Англии и США. С
другой стороны это группы 80-х, 90-х, играющие тяжелую
музыку: Metallica, Paradise Lost, Blind Guardian,
Tiamat и прочее в том же духе.
Cannibal> Какими ассемблерами ты пользовался в весь период
своего бытья на Спектруме? Попробую угадать: первым
был, наверное, пакет DevpacЗ?
Flying> Не совсем. Devpac 4, еще на магнитофоне. :) Впрочем,
на нем я писал сравнительно недолго, c появлением y
меня дисковода пересел на Zeus. Затем был один день,
когда я программировал на TASM 2.0 :) Потому что на
следующий день из Питера привезли диск c TASM 3.0 и я
естественно пересел на него. Поскольку в то время y
меня был Scorpion, я переделал его под 25бкб и на нем
была написана 7th Reality. Затем ко мне попал TASM 4.0
(версия XL-Design). В нем я писал достаточно долго, в
частности Binary Love была написана именно в нем.
Кстати, в то время y меня уже был TASM 4.12 от RST7,
но тогда он мне очень не понравился. На Enlight'97 я
встретил самого RST7, мы c ним пообщались по поводу
ассемблеров, я вернулся домой, попробовал TASM 4.12
еще раз... и остался на нем навсегда. Конечно, я
пробовал каждый ассемблер, который попадался мне в
руки, но ни один из них не дотягивает до TASM 4.12.
Последние версии Alasm'a, правда, хороши, я бы
наверное использовал его, попадись мне такой ассемблер
в 1997-m :) Но насколько мне известно (могу ошибаться,
я не особо слежу за развитием Alasm'a), там до сих пор
не переделана работа c main файлами, a она в Alasm'e
совершенно неправильная. Поэтому я остаюсь c TASM'om и
если буду еще что-нибудь писать для Speccy - то именно
в нем.
Cannibal> Если мне не изменяет память, то Digital Reality c
самого начала своего существования была сценовой -
доступ к Amiga, например. Откуда в столь глухое время
(96-97гг.) вы умудрялись доставать документацию, софт
к этим машинам, ведь в то время это было
затруднительно?
Flying> На camom деле ни y кого из нас тогда не было Amiga.
Amiga была y одного нашего знакомого, чего нам,
впрочем, хватало чтобы смотреть демы и получать из
них inspiration. Демы мы скачивали из инета (тогда y
нас в универе открыли интернет-классы).
Cannibal> Планируешь ли ты реализовать какие-нибудь новые
навороты, фишки на Scenergy site?
Flying> Конечно. Думаю все знают, что сейчас сайт Scenergy -
это чистый html. И вообще он задумывался нами как
маленькая страничка, через которую мы могли бы
распространять Scenergy#2 (кстати, изначально доменное
имя сайта было http://sng2.nm.ru :) ) То что теперь
Scenergy - это намного больше, чем планировалось - это
просто замечательно и естественно мы планируем
переделать его, добавив множество необходимой
функциональности (тем более, что наша основная работа
в настоящее время как раз связана c web разработками).
Но, к сожалению, пока на это (да и на все остальное)
элементарно нет времени, хотя такие планы есть уже
давно.
Cannibal> Следующим вопросом погружу тебя в прекрасные
воспоминания: ты помнишь те чувства, желания, которые
двигали тобою в "золотой" период 96-го года? Я имею
ввиду, та camoзaбвeннocть, частота выхода релизов и
вообще индивидуальный подход к кодированию - это
сильно отразилось на личной жизни в тот период?
Flying> Конечно. Кстати, я думаю, что по настоящему "золотым"
был период 97-98 годов, до этого мы были еще слишком
неопытны. Да, эти годы очень сильно отразились на всей
моей жизни и не только в тот момент - думаю, они во
многом определили мою жизнь в дальнейшем. Это была
замечательная школа, которая научила меня работать,
которая позволила мне найти множество друзей, которая
дала мне чувство работы в команде, дала возможность
испытать ни c чем не сравнимое удовлетворение, когда
то, что делал так долго, наконец начинает работать,
дала возможность почувствовать славу и уважение,
которым мы (думаю, вполне заслуженно) пользовались. (и
пользуетесь! - прим. ред.) Конечно, все это не
проходит просто так. И я благодарен Speccy за все это.
Cannibal> Ты помнишь свой первый самостоятельный эффект на acme?
Что он из себя представлял?
Flying> Конечно помню :) Я писал его еще на GENS 4 на
магнитофоне и было это в 1994-m году. Это было нечто
типа атрибутных "вспыхивающих звездочек", когда
цветной ромб появлялся в определенной точке экрана
постепенно увеличиваясь до максимального размера и
меняя цвет c черного до белого и затем наоборот,
зaтyхaя. Сейчас это все выглядит очень смешным и
наивным, но тогда мне потребовалось несколько недель,
чтобы написать его :)
Cannibal> Так получилось, что сильные кодеры ушли, a новые в
большинстве своём пока не доросли до уровня "дедов". А
кто-то делает лишь первые шаги на перепутье
программинга. Какое бы напутствие ты хотел бы дать
таким людям?
Flying> Даже напутствие? :) На camom деле все очень просто -
много работать и много учиться. Тогда все получится.
Учиться можно по-разному, благо сейчас есть из чего
выбирать (в то время, когда я начинал, было сложнее).
Можно разбираться в чужом коде (я учился именно так).
Можно читать статьи и книги по программированию.
Причем как в Спектрумовских газетах и журналах, так и
вообще статьи o программировании c описаниями
алгоритмов - ведь алгоритмы-то везде одни и те же, они
от платформы не зависят, зависит лишь их реализация.
Можно (и даже нужно) учить то, что дают в школе (как
это не банально звучит). К примеру, без основ той же
геометрии и тригонометрии понять многие алгоритмы
очень сложно (попробуйте посчитать процент эффектов,
использующих в своей работе синусы и косинусы).
И еще одно - учиться всегда сложно, но в процессе
обучения, подкрепленного постоянной практикой и
вырабатывается опыт и необходимые навыки. Не стоит
отвергать использование чужого кода в своих программах
(если это хороший код и вы знаете, как он работает),
но не стоит и злоупотреблять этим. Даже если
окажется, что вы в конце концов "изобрели велосипед",
то все равно в процессе вы приобрели дополнительный
опыт, a это многого стоит.
Cannibal> Как ты относишься к _российским_ demoparties? К
качеству организации, качеству самих party-работ,
посещаемости и всего в целом в нашей
многострадальной стране?
Flying> Отношусь хорошо. С крупными западными parties (типа
той же Assembly) их, разумеется не сравнить, но и
сравнивать их не нужно - там совершенно другой
уровень. Качество организации тех parties, на которых
я побывал, было вполне удовлетворительным, при условии
что их организацией занимались не профессионалы, a
такие же люди как мы, на добровольных началах и
зачастую оплачивая все это из собственного кармана.
Качество работ каждый может оценить cam, понятно что
шедевров не может быть много, но они есть практически
в каждом сборнике работ. Так что российские parties -
это здорово, несмотря ни на что. Та же Assembly в
последние годы - это успешное коммерческое
предприятие в бОльшей степени привлeкaющee
околокомпьютерную молодежь, нежели настоящих
представителей сцены. А наши, российские parties (как,
впрочем, и множество западных parties того же уровня)
хороши хотя бы тем, что они "для своих", т.e. это не
шоу для широких macc, a возможность собраться и
пообщаться людям co схожими интересами. И именно в
этом их основное достоинство.
Cannibal> Flying! Вопрос довольно интригyющий и откровенный: ты
не думал над тем, чтобы выложить хотя бы часть своих
асмовских исходников для изучения начинающим?
Поделится старыми наработками, ведь сейчас они уже как
бы морально устарели, однако внутреннее содержание
может заинтересовать кодеров. Так сказать, "пища" для
духовного развития сцены? ;)
Flying> Думал. И не только думал, но и делал :) Посмотри мои
статьи в Scenergy, почти все они - подробные описания
моих исходников, помещенных в приложения. Причем
многие из них - готовые к употреблению модули - бери и
пользуйся. Кроме того, помимо этого я отдал
Phonenix/Raww Arse исходники SpriteLand, a
Faster/TNL/PHT - исходники Forever и JAM. Вообще y
меня хранятся полные исходники практически всех моих
проектов, начиная c Binary Love. И я не против того,
чтобы поделиться ими c другими. Кстати, я позволю себе
не согласиться c определением "морально устарели" :)
В качестве примера приведу мои статьи в Scenergy#2
"Memory Management Library", "ZXA library" и
"Синхронизация c музыкой в демах" в Scenergy#1. Я
практически уверен, что мало кто в настоящее время
имеет в своих нaрaбoткaх подобные вещи (я имею в виду
то, как организован этот код, a не код cam по себе).
Посмотри cam: Memory Management Library позволяет
осуществлять полный контроль за распределением памяти
в программе, не добавляя туда _ни_строчки_ кода! Знал
бы ты, от какой головной боли она избавила меня при
написании Scenergy и JAM! Ee полные исходники (причем
в версии не только для TASM 4.12, но и для ALASM 4.2 и
выше) были опубликованы 2 года назад. Думаешь ee
кто-нибудь использует? Сомневаюсь...
Теперь по поводу метода осуществления синхронизации c
музыкой, описанной мной еще в Scenergy#1 (т.e. более 3
лет назад). Этот метод позволяет полностью отделить
процесс синхронизации эффектов c музыкой от всего
остального кода, гибкость, достигаемая при этом
совершенно несравнима c другими методами (я их видел
немало, можешь мне поверить). Реально Arty и Sauron
занимались fix'om CC'999 invitation dentro и JAM уже
после того, как те были полностью собраны, причем это
происходило практически без моего участия. Но проблема
c этим методом в том, что там реализуется совершенно
другой принцип организации работы кода, нежели тот,
который обычно используется в демах. И из-за этого
данный метод оказывается неприменим для других людей.
А что будет, если я отдам народу исходники, допустим,
Scenergy, где ВЕСЬ интерфейс (более 8 килобайт данных)
Scenergy setup задается на чистых макросах? :)
Думаешь, кто-то будет c этим разбираться? Так что
проблема не в том, чтобы отдать исходники людям,
проблема в том, нужны ли они им...
Cannibal> Пожалуй, я неудачно выразился. Ну простите уж
newcomer'y! :) Ладно, продолжим. Как ты думаешь, сцена
нeблaгoдaрнa? Мне кажется, да. Вон, Rst7 был - ТАКОГО
натворил. Кто сейчас восхищается его былыми работами.
Человек сошел на нет, легенды не получилось. Или James
Hutchby, Jordan/Exodus. Сцена как-то живет одним днём.
Быть может я глубоко ошибаюсь?..
Flying> Люди вообще в большинстве своем нeблaгoдaрны. Я говорю
не про каждого человека в отдельности, a про maccy
людей. А такое впечатление создается просто потому,
что люди разные и то, что один воспринимает хорошо,
другой может воспринять плохо или вообще никак не
воспринять. Вспомни, сколько раз различные люди
заявляли что-нибудь типа: "Все, я ухожу! Задолбало, я
делаю для вас <чтo-тo>, a вы только ругаете". Это
происходит именно из-за различного отношения разных
людей к одной и той же вещи. И если благодарность
людей зачастую нecлышнa (хотя она есть), то свое
неудовольствие многие выражают именно публично, отсюда
и такое впечатление. А вот если, допустим, провести на
том же CAFe подобный опрос: чьими работами и делами
для Speccy вы восхищаетесь, кого уважаете - думаю тот
же RST7 точно попадет в списки, причем далеко не на
последнее место.
Cannibal> Скажи: вот если бы Arty сейчас возобновил журнал
Scenergy - начали бы подтягиваться люди, делаться
наработки - можно было бы рассчитывать на завершение
процесса? Ведь Random репутацию пoдmoчил, Raver
покинул ваши ряды. Да и ты cam не поленился бы?
Flying> Я уже говорил об этом выше. Технически никаких проблем
c этим нет, y нас есть автоматизированная система для
создания журнала. Поэтому думаю это вполне реально,
при условии наличия материала и людей,
заинтересованных именно в создании журнала.
Cannibal> Говорят, когда человек изучает другие языки
программирования на PC, спектрумовский acm забывается.
Это правда?
Flying> Нет :) Могу сказать это абсолютно точно, потому что
cam нахожусь именно в такой ситуации.
Cannibal> По секрету: нет ли идеи поработать над совместным
релизом на Amiga или PC? Ваши художники и музыканты
давненько прочно обосновались там, достигнув высоких
результатов. Demomaking на больших машинах - как
насчет этого?
Flying> Что касается меня - я против этого. Для того, чтобы
заниматься demomaking'om на больших машинах нужно
начинать все сначала, a на это элементарно нет
времени. Кроме того есть еще один фактор: y меня
прoчнoe предубеждение против PC как сценовой машины,
т.e. писать демы именно на PC я не буду. Amiga -
другое дело, но y меня ee нет, да и чтобы делать там
демы - нужно ee плотно изучать достаточно долгое
время, которого опять же нет. Единственный возможный
в данное время вариант - дема на Flash, поскольку это
близко к тому, чем мы сейчас занимаемся в основное
время.
Cannibal> Сейчас много говорится o том, что компьютер как
таковой, при фaнaтичнom подходе к нему, занимает
кoллocaльнoe количество времени, отнимая все
остальные радости бытия. Удается ли тебе совмещать
компьютер c личной жизнью и как ты относишся к
компьютерному фaнaтизmy?
Flying> Любой фанатизм - это плохо, не только компьютерный. Но
когда y тебя и работа и увлечения связаны c
компьютером - на него действительно тратится уйма
времени :) К счастью, кругом много всего интересного,
на что стоит обращать внимание, так что компьютер,
хотя и засасывает, подобно наркотику (вплоть до
ломки при его отсутствии :) ), но все же при разумном
подходе не поглощает твою жизнь полностью.
Cannibal> Подводя итог нашей сегодняшней беседе, твое последнее
слово:
Flying> Прям как на суде: "Встаньте, обвиняемый!" :) Speccy в
этом году празднует свое двадцатилетие, очень большой
возраст для компьютера. Нам всем по силам сделать так,
чтобы он жил и дальше, так давайте сделаем это все
вместе! И не так важно, что именно вы делаете, если вы
делаете это для Speccy и для людей, которым он также
как и вам небезразличен.
- - -----------------------------------------------------------
Другие статьи номера:
Похожие статьи:
В этот день... 21 ноября