<<<предыдущий список следующий>>>

Это - копия документа, находившегося на http://dz.ru. Авторские права, если не указано иначе, принадлежат Дмитрию Завалишину и/или Евгении Завалишиной. Все изменения, внесенные мной, находятся в этой рамочке.Пожалуйста, прочитайте disclaimer.


25 февраля

Наконец, после трёх лет ожидания, это произошло. Практически вышла игра по имени Daikatana. Игра знаменитого Ромеро. Человека, породившего (в соавторстве, впрочем) жанр "стрелялки" (first person shooter). Человека, который создал Wolf 3D, Doom, Quake...

Игра, которой сопутствовали неудачи одна за одной.

Ромеро ушёл из id software после того, как был сделан Quake. Причиной ухода, судя по всему, было отсутствие взаимопонимания в коллективе - Ромеро, фактически, был недоволен тем, что в Quake получилось смешение стилей - часть уровней в одном дизайне (научно-фантастическом), часть в другом (древне-рыцарском), часть - в третьем (толком и не опишешь). Трудно сказать, что там произошло. Возможно, изначально планировалось сделать каждый эпизод игры в своём стиле, но, как бы то ни было, в результате вышла мешанина. Не знаю, достаточный ли это повод для ухода из собственной фирмы, или нет, но Ромеро ушёл, сказав на прощанье, что тут, в id, дизайнеров не любят и он будет делать игры сам.

Кстати сказать, следующая игра, Quake II, была сделана "как завещал великий Ромеро" - её выдержали в едином стиле. Но было поздно. :-) Ромеро уже ушёл.

Он основал Ion Storm. Основал с тем, чтобы строить игры, ставя во главу угла дизайн, а не сиюминутные потребности. Он объявил о создании суперигры Daikatana, которая будет круче всех на свете и сел её делать. Параллельно, впрочем, запустив в производство ещё три игры. Параллельно в Ion Storm-е случились разборки, кого-то обвинили в кидалове, пол-команды Ромеро уволилось, происходило что-то странное... А Ромеро делал Дэйкатану.

Делал, делал... Делал, делал... появился Valve, написал Half Life, понюхал, выбросил. А Ромеро делал Дэйкатану. Valve переписал Half Life, вышел с ним на рынок, убил всех нафиг... а Ромеро делал Дэйкатану. Id объявил конец эры сюжетов и выпустил Q3Arena. А Ромеро делал Дэйкатану.

И вот - игра готова. И, в принципе, никто не сомневается в том, что она будет хороша. Но... ждали чуда, а его, кажется, не случилось. Просто вышел ещё один first person shooter. Нет, красивый, безусловно - особенно в древнегреческом эпизоде (см. кадр слева.)

Впрочем, конечно, я забегаю вперёд. Посмотрим. Глядишь, может оно и впрямь чудо... Три года Ромеро пилил эту гирю. Золотая ли?

Реклама
   

Надежная защита и твердая платформа для Вашего бизнеса -- Microsoft Windows 2000 уже в России!

 

   

Метеорологи и Фантом.

   
From: Druid
Subject: (none)

Hello Дмитрий,

Для начала ссылочка. Это ответы Бьярна Страуструпа на 10 вопросов. Занимательно и поучительно. ;)

Теперь на тему выпускка от 24.02

1. Я согласен с Вашим мнением о том что не надо запрещать в "плоском" языке функции и библиотеки. Функции -- удобство программирования. А насчет библиотек, возражение


поскольку я сейчас подумал и пришел к выводу, что не могу себе представить такой вычислительной задачи, в которой был бы один-единстваенный цикл на триллион итераций. Такие вещи всегда вложенные, а если и нет - то их можно вложить :-) А раз вложить - тогда внешние циклы реализуются базовым языком. Эффективность при этом практически не страдает.


мне кажется несколько эээ... бледным, причем не только в данном контексте.

2. Работа с памятью. У меня есть смутные ощущения, что проблемы могут возникнуть. В том же фотошопе приходится работать с фрагментами данных сравнимыми с размером оперативной памяти. Наверняка есть еще более плохие в этом смысле задачи. Вспоминаются, например, метеорологи, обрабатывавшие 10-метровые файлы на ОЗУ в 1-2 метра. А ввода-вывода у нас нет.

Good luck! /AKA Druid

 

Начну с метеорологов. Если вкратце - мне чужды их проблемы. Не потому, что я не понимаю, что им надо, а ровно наоборот, потому, что я понимаю: метеорологам нужна под их задачу машина целиком, причём довольно специфическая (см. графу price:). Эта задача - из тех, что требуют под себя выделенного решения - как в плане хардвера, так и в плане ОС. Нет причин думать о таких задачах при разработке общецелевой ОС - потому как нет причин применять с ними общецелевую ОС.

Фотошоп - ближе. Проблем с ним в фантоме нет, если говорить о памяти.

Ввод-вывод. Гм. Это - Фантом. Там файлов нет. Нет и проблем с ними. :-) Вы обрабатываете объект. Три он метра или триста тридцать три - не важно. Если он в физическую память не лезет - при работе с ним будет происходить пейджинг. Если пейджинг идёт слишком бурно, выключите машину, добейте памяти, включите машину. Программа продолжит выполняться в новом объёме памяти.

Есть определённые проблемы с вводом-выводом в одной специфической ситуации. Когда устройство, с которым мы общаемся не представимо как память и ввод-вывод нужно произвесть из "необъектного" кода. Или когда объектному коду нужен массовый доступ к объектам. Вопрос это концептуальный - вовсе не факт, что такие потребности реально будут возникать. Именно об этом говорит Максим в параграфе про циклы.

Имеется в виду, что его расширение Фантома ориентировано на выполнение компактных кусков кода, ориентированных на вычисления и требующих ограниченного количества аргументов. Размер их (физический) значения не имеет - главное, чтобы было заранее известно, какие данные нужны этому коду, потому как не хочется давать ему выхода "в мир" и тем усложнять себе жизнь.

По этому поводу байка.

Была в России такая машина - Искра 226. Персоналка нашего производства. Содрали её с какого-то Ванга, и ориентирована она была под Бейсик.

Машина была потрясающая. Гарвардской архитектуры (то есть записать в память команд как-то было можно, но как именно - я раскопать в те годы не смог), процессор собран на рассыпухе (то есть никаких микропроцессоров - всё вручную), ломалась жутко и из-за того, что работала только в режиме интерпретации тормозила нещадно. По оценкам изготовителя производительность в бейсике была в 500 раз ниже, чем в ассемблере. Этого, кстати, не так легко достичь: по 500 команд ассемблера на команду бейсика - очень раздолбайское программирование.

Ну так вот. Тормозила нещадно, а работать-то надо. Времена советские, выйти и купить писюк - нельзя. Не продают-с.

Так наш ушлый народ нашёл решение. Вы, наверное, в этом и не сомневались, да? :-) Но какое!!

В состав многих Искр входил "Блок Интерфейсный Функциональный" (БИФ) последовательного порта. Любой электронщик, немного разбирающийся в компьютерах сразу представит себе печатную платку в пол-квадратного дециметра с парой микросхем на ней - собственно портом и мелкой обвязкой. Так?

Ну так у Искры было иначе. Модуль последовательного порта был на двух платах общей площадью где-то с хороший "мазербоард" нынешнего писюка и включал в себя микропроцессор КР580ВМ80 (см. Intel 8080), 64 Кб ОЗУ (у самой Искры Бейсику было доступно столько же!) и какую-то ещё мелочь. Да - ну и сам порт, конечно.

Им, портом, почти никто и не интересовался. Тогда даже BBS и ФИДО не было, не говоря уж об Интернете. Зато прикреплённый к порту процессор весьма ценился. Те, кто похитрее плевали на Бейсик, всё писали на ассемблере 8080 или на Си и исполняли программы на процессоре модуля последовательного порта. А Бейсик использовали только с горя. То есть для ввода-вывода.

Изображение Искры 226 взято из музея истории отечественной вычислительной техники.

Возможно, кто-либо из читателей ещё помнит бум начала 90-х, связанный с понятием "экспертная система". Я ищу человека, способного проконсультировать меня в этой области. Если вы владеете темой и можете потратить час-два - напишите мне, пожалуйста.