Cheb's Game Engine

Планы, идеология, архитектура и т.п.

Модератор: Модераторы

Re: Cheb's Game Engine

Сообщение Alex2013 » 07.11.2019 21:59:26

Кстати, память на моём любимом ноуте, самом быстром из моих компов, недалеко ушла: PC3-10600.

У мну самая быстрая DDR3‑1600 и я в принципе ей доволен ... с учетом прочего железа это даже немного с запасом получается.
Зы
А что касается прочего так я убедился при работе с реальными заказчиками не в коем случае не стоит строить проект так что до самого финала показать нечего.(Да даже проекты "для души" куда интереснее вести если каждый мелкий этап сопровождается чем-то что зримо работает *... иногда это требует написания специальной дополнительной "платформы-стенда" но в принципе и он себя оправдывает :idea: )
ЗЫ
*(вчера например(не прими за "рекламу" ) прикрутил в окно "цифровые эффекты" загрузку 3д-модели и ее предварительный "решетчатый показ" на "чистом софте" и пока это что-то вроде рутинного повторения пройденного (решетчатый "софт-рендер" в программе уже был... но в ещё более далеком от возможности практического использования виде). Да, эта "итерация иерихона" 100% ДАЛЕКО не последняя, однако, ее можно УВИДЕТЬ .)
Alex2013
долгожитель
 
Сообщения: 1570
Зарегистрирован: 03.04.2013 11:59:44

Re: Cheb's Game Engine

Сообщение Cheb » 08.11.2019 13:24:04

Да даже проекты "для души" куда интереснее вести если каждый мелкий этап сопровождается чем-то что зримо работает

Вот из-за этого у меня затык и вышел: дошёл до места, где надо дохрена пахать в стол, без видимых результатов. И встрял.

[цепочка ползущих муравьёв]

[берёт лупу]
Гы :lol:
Аватара пользователя
Cheb
энтузиаст
 
Сообщения: 753
Зарегистрирован: 06.06.2005 15:54:34

Re: Cheb's Game Engine

Сообщение Alex2013 » 08.11.2019 14:17:57

Cheb писал(а):[цепочка ползущих муравьёв]

Это я так "скромно хвастаюсь"... :wink: (Сегодня надеюсь и свой "типа ОпёнГл" туда же докрутить )

Вот из-за этого у меня затык и вышел: дошёл до места, где надо дохрена пахать в стол, без видимых результатов. И встрял.

Угу, знакомая ситуация... За примером ходить не нужно: по идее для получения нормальной "базы для экспериментов" мне нужно добавить "служебную логику"( нормальные внутренние переменные(а не "как сейчас"), ветвления, циклы и т.д.) А в дальнейшем и полноценные "быстрые скрипты" (бо РиалТайм точно ждать не будет... и "виртуальное время" как в 3д движках не спасет ) плюс "распараллелить" все что можно и добавить возможность управления потоками в набор "фильтров"
Но даже начинать такой глобальный "рефакторинг" изрядный лом ... так что "пилю потихоньку" что еще не доделано с предыдущей "большой стирки" и жду очередного "приступа вдохновения"... :roll:
Alex2013
долгожитель
 
Сообщения: 1570
Зарегистрирован: 03.04.2013 11:59:44

Re: Cheb's Game Engine

Сообщение Cheb » 10.11.2019 22:17:16

Пытался разобраться в структуре формата данных, представляющем из себя сраный недокументированный чёрный ящик с "говорящими" именами полей типа B_RecBTinds
Ну есте-е-ественно, эта абракадабра имела для меня кристально ясный смысл. Году этак 2008-м. :x
Искал-искал, где заполняются структуры данных нулевого (текущего) заголовка "для чтения". Нет такого места, хоть убейся.
Оказалось - при инициализации структуры данных "для записи" сливаются во временный TMemoryStream а потом весь заголовок читается оттуда и парсится, как обычный заголовок в любом файле, с параллельными преобразованиями и заполнением вторичных таблиц. При этом, названия структур "для записи" даже близко не напоминают названия того, что читается обратно.
Хожу теперь вокруг этой... кучи на цыпочках, стараясь не дышать в её сторону. Его не трогаешь - оно и не воняет. :x
Аватара пользователя
Cheb
энтузиаст
 
Сообщения: 753
Зарегистрирован: 06.06.2005 15:54:34

Re: Cheb's Game Engine

Сообщение Cheb » 15.11.2019 15:21:13

Проверил пылившийся уже года четыре труп.
Обнаружил, что труп - на самом деле не труп, но после каждого выключения жалуется на сбившиеся настройки BIOS.
С матюгами осознал, что он никогда и не умирал, а брикнулся из-за запоротых настроек биос от севшей батарейки - что вылечилось возвратом к заводским настройкам когда та сдохла окончательно.
Не подключая к сети:
- установил Windows XP SP1 с то-ли пиратского, то-ли корпоративного-с-работы диска (пойди, вспомни теперь)
- установил драйвера для радеона с OEM диска.
Приветствуем тестовую машину №1 для испытаний Чентры:
E5200 2.5GHz (2 ядра, сокет 775), 2 Gb DDR2-800, Radeon HD 2600 XT (0.25Gb) PCIe, Asus P5QL, Seagate 300 Gb, пишущий блюрей привод, 1.44'' дисковод, WinXP SP1 Pro (палёная) + наклейка от WinXP SP3 Home (лицензионный диск от которой я куда-то замылил).
..а также тестовую машину №2 для испытаний Чентры:
E2140 1.66GHz (2 ядра, сокет 775) , 1 Gb DDR2 (1 плашка), Gf 8400 GS (0.5Gb) PCIe 16x, Asus P5B SE, Seagate 140 Gb, DVD привод, WinXP Pro (лицуха).
Бывшая третья тестовая машина с одноядерным семпроном, AGP шиной и дуал-бутом в WinXP / Win 98 SE давно запихана куда-то на антресоли, поскольку для Чентры более не пригодна: для неё приходилось собирать отдельные бинарники с выключенным SSE2, поскольку Фри Паскаль не умеет генерировать рабочий код для SSE1: получившиеся бинарники всё равно крашатся без SSE2.

На Чентру времени сейчас почти нет, в основном вышаманиваю смысл криптических названий полей в структуре данных из фактов их применения и заменяю поиском по файлам на говорящие типа LocalNIndToActualTInd.
NInd - индекс в таблице имён, TInd - индекс в таблице типов, RInd - индекс в таблице классов и записей (свалены в общую кучу, поскольку и те и другие имеют поля).
Аватара пользователя
Cheb
энтузиаст
 
Сообщения: 753
Зарегистрирован: 06.06.2005 15:54:34

Re: Cheb's Game Engine

Сообщение Cheb » 16.11.2019 15:34:56

Пробую пересесть с Лазаруса на MseIDE... Вроде, во всём лучше, только неудобно отступы править через Ctrl+I / Ctrl+U, я уже привык к Tab / Shift + Tab.

Добавлено спустя 2 часа 40 минут 42 секунды:
Осознал, как я крут. Первый собственный компьютер - в 1995-м, а в 1997-м уже бегала моя игрушка с многопоточностью под MS-DOS. Два года всего. Причём, на год, примерно, меня задержала лютая нехватка информации: интернета тогда ещё не было.
А до того я имел возможность лишь изредка, у мамы на работе на 286-м (который ещё в сейфе стоял, и так, в сейфе, на нём и работали, выдвигая полочку для клавиатуры) или в универе на лабораторных, используя Искры 1030.11 не по назначению. И там, и там - Турбо Паскаль 5.5.
Последний раз редактировалось Cheb 18.11.2019 08:40:23, всего редактировалось 1 раз.
Аватара пользователя
Cheb
энтузиаст
 
Сообщения: 753
Зарегистрирован: 06.06.2005 15:54:34

Re: Cheb's Game Engine

Сообщение Mirage » 17.11.2019 15:45:07

Cheb писал(а):Что ж они забросили-то?.. Сколько сил вложено! Мне до подобной завершённости семь вёрст лесом.


TERRA-Engine изначально коммерческий движок, т.е. автор пытался его продавать. И проекты коммерческие на нем пилил. Возможно поэтому, этот движок и сейчас, пожалуй, самый завершенный из всех. Хотя вообще движков на паскале полным-полно. Думаю и сейчас активных навскидку с десяток назвать можно.
Но, мотивация штука не вечная, требует подпитки. Успеха у игр видимо особого не было. А для движка рынка понятно нет. Каждый свое пилит.
Mirage
энтузиаст
 
Сообщения: 858
Зарегистрирован: 06.05.2005 20:29:07
Откуда: Russia

Re: Cheb's Game Engine

Сообщение Cheb » 18.11.2019 10:11:42

Коммерческий?! :shock:
Madness! :x

Хотя, вон, мой любимый порно-метроидвания-платформер в 8-битном стиле, ████████, откомпилирован явно на Дельфи - скорей всего, какой-то фреймворк использовался, их в своё время мелькало. DelphiX, Undelphix и ещё какая-то мутота.

З.Ы. Смешной баг: хотя движок идёт из папки с юникодным именем, в лог имена файлов пишутся, как запоротый утф-8, а дебажная версия при этом ещё и непрерывно пищит. Чу! То не дремучий WriteLn(#7) вылез ли? Винда, сволочь, старательно эмулирует писи-спикер. Чёртова обратная совместимость с телеграфными аппаратами конца 19-го века :x

З.З.Ы. Решил сменить шрифт консоли. Вместо самодельного аналога курьера - закончил, наконец, перерисовывать в моноширинный один из пиксельных шрифтов, которые наваял в начале нулевых. Жёстко умял его в VGA лимиты: все буквы укладываются в 7х14 пикселов. При базовой толщине линии 2 пиксела, Ж, Ф, Ы, Ю потребовали классических же VGA извращений. Многие строчные были гораздо компактнее, после растягивания их до 7 пикселов пришлось подгонять по стилю, тупое растягивание давало не лучший результат. Также пришлось сделать T шириной 6 пикселов, иначе неравновесная палочка смотрелась коряво. Ф таки пришлось сделать корявой, иначе не лезла, а я не хочу, чтобы мой шрифт выглядел точно так же, как классический VGA.

Кстаааати, все помнят, какие компактные, вытянутые в высоту шрифты были в эпоху мониторов, совместимых с телевизором? Ну, БК-0010 там с его 512х256 или вообще Искра 1030.11 с CGA адаптером с его разрешением 640х200?.. В смысле, сам шрифт - формально квадратный, 8х8 (буква упихана в 7х7 чтобы не слипались), но за счёт соотношения сторон пиксела 0.42:1 на экране эти символы - оченно стройные и высокие. Ну, потом VGA те же 80х25 отображал уже не в 640х200, а вполне себе квадратном 640х480 и шрифты соответственно, стали 8х16, с хорошим, годным межстрочным интервалом.

Добавлено спустя 4 часа 4 минуты 4 секунды:
З.Ы. Вру. VGA-шные шрифты имели буквы шириной 8 пикселов, поскольку текстовый режим имел на деле разрешение 720x480. Буквы шириной 7до которых я сплющил своё поделиЁ - это, скорее, EGA.
Аватара пользователя
Cheb
энтузиаст
 
Сообщения: 753
Зарегистрирован: 06.06.2005 15:54:34

Re: Cheb's Game Engine

Сообщение Alex2013 » 19.11.2019 00:15:42

В драйвер KEYRUS были прошиты:
_08x08.fnt - внутренний фонт 8x8
_08x14.fnt - внутренний фонт 8x14
_08x16.fnt - внутренний фонт 8x16
08x08 был для текстовых режимов 80х50,
08x14 для EGA,
08x16 для VGA .
Alex2013
долгожитель
 
Сообщения: 1570
Зарегистрирован: 03.04.2013 11:59:44

Re: Cheb's Game Engine

Сообщение Cheb » 19.11.2019 19:33:15

Во. Я когда-то (не помню, когда) выдрал эти для примера (ЕМНИП, вывел WrielLn'ом в графическом режиме - и скриншотом то-ли из досбокса, то-ли когда у меня ещё Вынь98 была):
Изображение Изображение Изображение
Аватара пользователя
Cheb
энтузиаст
 
Сообщения: 753
Зарегистрирован: 06.06.2005 15:54:34

Re: Cheb's Game Engine

Сообщение Alex2013 » 19.11.2019 20:35:02

CGA 640х200?
Хм ! А действительно ! GRAPH3.TPU из Turbo Pascal 3.0
GraphColorMode 320 x 200 Цветной 4 цвета (+ что-то вроде палитры )
GraphMode 320 x 200 Черно-белый
HiRes 640 x 200 Черно-белый с "высоким разрешением"
Зы
Но это стандартные режимы, так народ изощрялся достаточно оригинально ... Например настраивая аппаратный сдвиг и масштабирование через управление разверткой монитора и делая (640 x 200)х4 (быстро переключая четыре страницы в видео памяти и смещая уменьшенную картинку при "обратном ходе луча" )
Зы Зы
За текстовый режим отвечал знакогенератор так что там за разрешение было не очень ясно ... Даже в EGA были доступны разные странные "текстовые разрешения" . (это досбокс но тем не менее режим с шрифтом 9х16(!) уже удивляет )
ИзображениеИзображение
Alex2013
долгожитель
 
Сообщения: 1570
Зарегистрирован: 03.04.2013 11:59:44

Пред.

Вернуться в Разработки на нашем сайте

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 1

Рейтинг@Mail.ru