Литмир - Электронная Библиотека
Содержание  
A
A

Но если пока так, то на самом деле, моя новая работа откровенно выглядит некоей халтуркой, хотя, как я понимаю, это только первый этап. И он, с моей точки зрения, пока выглядел так – простейшая 2Д графика для отображениея подробной карты. Плюс – ландшафт и боевые части. С последующим наращиванием функционала проги по запросам военных…

При первичной разработке я не стал заморачиваться на по настоящему серьёзных вещах типа переноса карты земной поверхности в 3Д (как в Google Earth и подобных системах), обошедшись аналогом яндекс/гугл карт из окна броузера. Правда делал всё в более всего привычном мне standalone-варианте. Реализацию начал на той же самой кроссплатформенной геймдевелоперской либе, что и использовал для своих инди-игр. Знакомый и хорошо изученный инструмент для реализации. Впрочем, максимально изолировав в исходниках основную логику проекта от работы с данной специфической либой, которая будет актуальна только пока живы этих два компа. Но об сём поясню чуть позже…

В случае будущего расширения проекта, если что, можно будет сконвертировать все введённые данные при смене системы координат на полноценную трёхмерную имитацию земной поверхности – как для карты с населёнными пунктами и прочим рельефом, так и для базы данных с координатами боевых частей и прочего.

Списки населённых пунктов, «юнитов» и их содержимого представляли собой поначалу простейшие базы данных в виде текстовых файлов, информацию в которой с символами разделителями в дальнейшем могла быть легко пополняться и редактироваться в обычном текстовом редакторе из FAR-а и т. п. подручных средств.

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

Или я это совсем далеко забегаю вперёд?

Подумав, пометил в to-do list возможность масштабирования (в максимальном масштабе вплоть до 1*1 км? Ладно, подлежит обсуждению – как заказчики пожелают…) и заложил сразу в структуры данных по «юнитам» возможность наполнение их штатов, расформирование и прочая, и прочая… Пометил возможность учёта типа территорий и прочих свойств, моделирующих рельеф.

С началом войны 8-й отдел стал получать свою копию сводок генштаба о положении на фронте, которая шла по высшему комсоставу РККА и верхушке ЦК, а троица «инициативников» начала осваивать работу в понемногу обраставшем новыми фичами «вьюере-прогнозере» обстановки на линии боевых действий. Имевшего, среди прочего, возможность накладки/сравнения положения дел на фронте «тогда и сейчас». Как в виде карт, так и сравнения потенциалов юнитов. Ну насколько имелись данные по врагу для этого раза. БД для программы кстати, стали пополняться очень быстро. Пленных немцев, служивших основным источником подробной информации в «этот раз» было больше. И уже с июля в 8-м отделе каждую неделю, несмотря на всю свою занятость, появлялся кто-то из «группы Мерецкова». В основном это был сам Шапошников, нагрузка со штабной работой на которого, судя по его утомлённому виду, легла огромная.

Маршала, очевидно, прельстила возможность всего парой кликов рассматривать положение на линии фронта и за пределами фронтовой полосы в динамике, за выбранные по его желанию временные периоды и по отселектированным по разным параметрам набору юнитов, местностей, уровню подчинённости и т. п.

Разумеется, ход мыслей главного, пожалуй, штабиста страны, мне был неведом, а освоив работу с программой, он бывало почти по часу-два изучал ежедневно наполнявшуюся новыми данными программу. Молча появлялся, работал и также уезжал обратно в Генштаб. Его попытку, почти что требование забрать компьютер с программой туда (вместе с пополнявшей базы данных проги Лежнёвой), пришлось пресекать самому Берии, при мне кратко перечислившему маршалу задачи, которые возложены на железо из 21 века.

Тот лишь вздохнул. Увы, компов было всего два. И именно сейчас, они были нужнее всего. Объём расчётных задач от Иоффе возрастал с каждым днём. Шура-Бура и Ляпунов, в связи с необходимостью были переведены на «полные ставки» со своих прежних работу сюда, в 8-й отдел ГУГБ.

* * *
19-20 июня 1941. Попаданец и К.

Впрочем, многозадачность и почти беспредельные для 41 года ресурсы компов позволяли многое. Точнее использовать всё это время компы не только для «важнейших государственных задач»(TM), но и для развлечений немногих избранных. А начавшаяся работа над прототипом прогностического ПО снова разожгла мою страсть и породила мысли о том, что вот уже почти год не программирую игр, но ныне можно даже здесь, в сороковых, совместить личный интерес (хоть в простейшей и убогой форме) с «интересами советского государства»:-)

Через день, узнавший о моём новом задании Шура-Бура, между прочим, видевший ранее только мельком компьютерные игры, понаблюдал за подготовкой дизайн-документа на прогностическое ПО, отметил совсем новое, не виданное ранее за неактуальностью (в текущий исторический момент) в преподнесённых ему и Ляпунову урокам направление – высокоскоростную графику и не выдержал. Он стал настойчиво выспрашивать о подробностях. Как-то незаметно мы перескочили на историю электронных развлечений. А вечером, после официального завершения работы в 18.00, я, оставшись в отделе, устроил в архиве, где был десктоп и рабочее место местных прогеров, мастер-класс. Ему и присоединившемуся Ляпунову. Правда была и парочка зрителей из числа сотрудников отдела, до сего момента занимавшихся своими делами.

– Так… коллеги… это я к Вам, товарищи программисты СССР номер 2 и 3, в первую очередь обращаюсь, сейчас у Вас, говоря языком моего времени, будет мастер-класс. Ваше обучение программированию, как неоднократно подчёркивалось, было весьма однобоко и узконаправленно. Сами понимаете насчёт целей, стоящих сейчас перед нами. Вводные данные, алгоритм, данные на выходе, проблемы взаимодействия с потребителями вашего профильного расчётного ПО через руки товарища Иоффе и всё такое… сто раз уже обсуждали. Сугубо расчётные потребности. Короче, пора исправлять этот недостаток, тем более реальная и интересная задача нарисовалась. А пока… просто чтобы знали, «как и чем я там жил»… да и сам соскучился. Хотя бы так развлекусь…

* * *

За четыре часа я соорудил им небольшую аркадку с помощью Lazarus, GIMP и Castle Game Engine.

Как это выглядело?

По быстрому накидал в графическом редакторе стильных в своей простоте спрайтов, сохранённых в png формате с альфа-каналом – «челопутик», «хавающие челопутика шарики», «золотишко», «брызги кровищи»

С лёту придумал простейшую структуру уровня и путём копипаста и минимальных исправлений соорудил в текстовом редакторе уровень на пару десятков локаций.

Схватил стандартный стартовый каркас своих прежних игр с внутриигровым таймером, пообтрубал куски кода для поддержки кроссплатформенности и прочим неактуальными в данный (да и вообще в этом мире? Навроде внутриигровых покупок через интернет… только «хехе» грустноватое выходит, товарищи…), отписал операцию инициализацию уровня и его загрузки, процедуры и функции примитивной игровой логики, хотя и с простейшей, но вполне приятно выглядящей «силой тяжести», контроль столкновений спрайтов, отписал реакции по обработку клавиатурных нажатий и прочие известные разработчикам игр обязательные вещи.

Заработало практически сразу, потратил десять минут на отладку-проверку и… вуаля!

Насладитесь, товарищи первые советские программисты и зрители, игрой в первую компьютерную игру СССР… на инопланетн… уф-ф, иновременной железячной платформе! Конечно, подобное быстрое действо было возможно не только потому, что я программист из 21 века с софтом и компами от туда же, но и потому, что именно геймдевелопер с приличным опытом…

Люди (эти двое и двое работавших в архиве сержантов, залипших на происходящее), вроде бы уже видели разножанровые шедевры из 21 века, на порядки превосходившие сляпанный по быстрому пример. Но тут… на их глазах я сотворил за ничтожное время маленькое электронное чудо последних мирных дней довоенного СССР.

1032
{"b":"904641","o":1}