Правила, действующие в этом форуме и всех его подфорумах:
1) Запрещена реклама в любых её проявлениях (сразу бан без предупреждения)! 2) Мат тоже не приветствуется на форуме, но иногда можно выразить свои чувства ( лучше заменяйте матные слова точками, пробелами, другими буквами)! 3) Категорически запрещается унижать, посылать, издеваться над участниками форума! Мы здесь все - одна большая и дружная семья! Поэтому за нарушение этого правила автоматически будем банить! 4) Разрешены ссылки на информацию, которые относятся к тому или иному разделу форума! 5) Ссылки не в тему будут удаляться и пользователь получит предупреждение или будет забанен! 6) Пользователям разрешено задавать любые вопросы относящиеся к теме, а мы все дружно ответим на эти вопросы. А также отвечать на вопросы и высказывать своё мнение. 7) Повторные темы, которые будут создаваться, будут удалены! Создавайте темы, удостоверившись, что такой темы нет на форуме! 8) Запрещён флуд во всех его проявлениях, сообщения не по теме, сообщения состоящие из одного или нескольких смайликов без текста, сообщения типа - Вах!, Рулез!, Круто! и т.п. Пользуйтесь пожалуйста кнопкой [EDIT], не плодите бессодержательные сообщения. 9) Использование смайликов разрешается не более 3-х подряд!
Почему 3DO? Как-то глянул на авито цены, поворчал, что устройство с такой скудной библиотекой игр да ещё и с убитым лазером стоит каких-то больных денег. Потом посмотрел спецификацию, стало любопытно, настолько ли всё плохо, решил попробовать и вот промежуточный результат )
Версия под 3DO базируется на коде GBA версии, для которой весь движок пришлось полностью переписать без использования floating-point арифметики и целочисленных делений (большинства). Местами GBA показывает лучшую производительность, чем 3DO, причём всю растеризацию берёт на себя CPU. Пока полноценно играбельны лишь первые 2 уровня + тренировка. Для остальных нужно переписать логику объектов и врагов, но там всё уже давно изучено вдоль и поперёк на основной ветке и проблем возникнуть не должно. Также нужно дописать инвентарь, главное меню и настройки.
Ну и оптимизация. После беглого дизассемблирования 3DO бинарника заметил кучу мест, где компилятор делает весьма тупые вещи и по сути работает как тупой транслятор... как вариант, как какой-то стадии развития порта попробую приспособить более современные компиляторы, в худшем случае перепишу самые тупые куски на ассемблер. Помимо низкоуровневых оптимизаций есть идеи по оптимизацию данных, т.к. 3DO читает half-word'ы за три инструкции с перерасходом регистров (в идеале нужно читать лишь 8 или 32 бита). Ещё стоит пересмотреть расчёт видимости полигонов и вершин. Сейчас все вершины комнаты передаются на трансформацию и уже после при построении полигонов определяется строится ли он на видимых вершинах, т.е. даже если смотреть в пол, все вершины комнаты всё равно будут проходить через трансформацию. Плюс я ещё не прощупал всех особенностей работы с DSP, DMA и фитч CEL. Наверняка, оттуда можно будет выжать что-нибудь интересное.
Про свободную камеру не совсем понимаю, сейчас по нажатию P камера отвязывается от Ларисы и может свободно перемещаться. В основной ветке всё аналогично, только требуется геймпад с двумя стиками для контроля.
Планирую портировать на всё до чего дотянусь, большинство девайсов из списка уже есть, так что это вопрос времени :)
Неожиданно для себя обнаружил, что 3DO портом разворошил муравейник фанатов яги, но порт под неё пока звучит как путь длинною в жизнь...
aspyd Основной удар наносят трансформации вершин, полигоны формируются уже на основе результата. На отрисовку передаются только те полигоны, что видны в кадре без учёта overdraw или неверно расставленных порталов между комнатами (баги оригинального левел дизайна). Backface полигоны на отрисовку не передаются. После пары забегов статистика такая: GYM - vertices: 1477 faces: 420 LEVEL1 - vertices: 1949 faces: 720 В идеальном мире кол-во вершин должно быть раза в 1.5 больше, чем полигонов. Когда полноценно доберусь до оптимизаций, то будут цифры по просадкам на CPU, CEL и сопроцессоре. Но сейчас, по ощущениям, CEL справляется на ура, об этом говорит то, что с увеличением дальности видимости перф особо не страдает в местах где нет открытых порталов в другие комнаты.
Смотрю, версия со вторым уровнем появилась. Пока на эмуляторе Freedo 1.9 бегаю. На каждом уровне у меня игра почему-то повисла. Возможно, дело в эмуляторе.
Добавлено спустя 3 минуты 21 секунду:
XProger писал(а):
Будет всё.
Это здорово. Вообще, необычный проект. Как-то непривычно даже.
_______________________________________
MUTHAFUCKASSSSCAN'TSTOPPPMEEEEEEEEEEE!!!!!!!!!!! Все мы живём в Царствии Небесном, просто слепы и не видим этого.
У меня, кстати, тоже было 1 зависание. Только не в этой версии, а в самой первой, которую убрали с форума. Но я не придал этому значения.
_______________________________________ Урча, пухлыми лапами кот вцепился в жидкую шевелюру конферансье и, дико взвыв, в два поворота сорвал голову с полной шеи. Две с половиной тысячи человек в театре вскрикнули как один.
Небольшой баг репорт на втором уровне... Вот эта летучая мышь как будто вросла в скалу. И лететь никуда не летит, и Лара на неё свои пистолеты не наводит. Стреляй, не стреляй, ей пофигу. Убил только когда впритык подошёл. Но если с другой стороны подойти (в начале уровня бежать налево), то с каких-то ракурсов Лара свои пистолеты наводит, можно пристрелить.
В этой комнате я как-то прыгнул вниз, и Лара приземлилась в такой позе. После приземления можно было только вращаться влево вправо. Через какое-то время после нажатий на ABC она пришла в норму
Ещё иногда во время толкания блока Лара может пройти сквозь него, а блок потом за ней сам толкается.
_______________________________________
MUTHAFUCKASSSSCAN'TSTOPPPMEEEEEEEEEEE!!!!!!!!!!! Все мы живём в Царствии Небесном, просто слепы и не видим этого.
Я так понимаю, физика в игре еще не настроена до конца. Сейчас в приоритете настройка производительности и доведения движка до ума, а потом уже будут устраняться эти мелки шероховатости.
_______________________________________ В детстве, 3DO открывала новый мир.
Смотрю, версия со вторым уровнем появилась. Пока на эмуляторе Freedo 1.9 бегаю. На каждом уровне у меня игра почему-то повисла.
ПАУК писал(а):
В эмуляторе "Феникс" тоже виснет.
Выложил бы debug.fz10.mes с FreeDO и состояния всего с Phoenix-то, раз на эмуляторах мучаешь... В "Phoenix 2.8 jag debug" - можно вообще полные дампы всего сделать, всех состояний. Быть может, разработчику это как-то поможет.
_______________________________________ Урча, пухлыми лапами кот вцепился в жидкую шевелюру конферансье и, дико взвыв, в два поворота сорвал голову с полной шеи. Две с половиной тысячи человек в театре вскрикнули как один.
Если бы дальность прорисовки чутка увеличить без ущерба производительности, ну или минус пару кадров допускается - вообще было бы супер! А так приятно наблюдать за картинкой, которая раскрывает потенциал консоли
_______________________________________ Нет судьбы, кроме той, что мы творим сами. Т2 (с)
А так приятно наблюдать за картинкой, которая раскрывает потенциал консоли
Н-ну, да! Игра на 3DO - действительно выглядит царски. Наверное, звёзды так сошлись для восприятия - я много смотрел видосов с GBA-версией, а там всё же разрешение... А в ПК-версию в 90-х я играл на чёрно-белом мониторе, у меня тогда только монохромный монитор был, который держал 800x600 - потолок. На PS1 - не играл, чёт не интересно было, да и не видел я в 90-х диска на пиратке. Так что, может, я просто впервые её вижу на большой, цветной ЭЛТ-трубе.))
_______________________________________ Урча, пухлыми лапами кот вцепился в жидкую шевелюру конферансье и, дико взвыв, в два поворота сорвал голову с полной шеи. Две с половиной тысячи человек в театре вскрикнули как один.
aspyd Короче наверстаешь "упущенное, " но уже на 3DO, а не на PS, PC. Я вот тоже не играл в нее и пробую ее только щас исключительно ради консоли, мне интересно как она справляется с таким графоном а так бы и не вспомнил эту игру, тк есть в наше время к (я с большим интересом читаю посты автора порта, как он технически описывает подробно сам этот сложный и трудоемкий процесс)куда интереснее для меня игры.
_______________________________________ Нет судьбы, кроме той, что мы творим сами. Т2 (с)
ПАУК, Да пока нового функционала не добавляется, декабрь решил полностью посвятить низкоуровневым оптимизациям. Переписал самые "жирные" функции на чистый ARM ассемблер, что дало более-менее стабильные 15 фпс в большинстве ситуаций. Есть способ выжать дополнительные ~5 FPS включив Super-Clipping, но по неизвестным пока причинам, он приводит к периодическим лагам и зависонам (был включен в первых версиях). Возможно, в ближайшие пару месяцев появится ODE и тогда я разгуляюсь по полной, а то уже 50+ болванок извёл, да и муторно это.
В OpenLara я стараюсь использовать оригинальный контент игры, который предоставляет сам игрок, чтобы не нарушать ничьих прав, но такой подход, очевидно, не прокатит для настолько слабой железки и одного конвертера явно недостаточно. Поэтому, в планах, сделать некоторую оптимизацию моделей, сгруппировать меши объектов, добавить LOD'ы для противников и т.д. Это попутно решит проблему с щелями между полигонов, т.к. программно эту особенность CEL не решить (текстуры разного разрешения на стыках). Ещё хотелось бы увеличить дистанцию отрисовки на 50%, не скатившись обратно в слайд-шоу )
Были планы использования звукового DSP не по назначению, а для трансформации геометрии. Но, как выяснилось, для него не существует компилятора. А я пока не настолько упорот, чтобы писать в машинных кодах. В любом случае, касаемо звука, планирую добавить панорамирование для симуляции объёмного звучания. Звук уже рендерится в оба канала (с одинаковой громкостью), поэтому особого удара по производительности это не даст, а эффект будет ощутимый.
Конкретно сейчас переношу на GBA некоторые подходы, что применил для 3DO. Затем планирую пофиксить баги с AI и навигацией, добавить инвентарь, главное меню и загрузочные экраны, всё это по плану должно соответствовать Alpha версии. Тогда же покажу играбельный GBA порт.
После начнётся долгий и муторный перенос (из основной ветки) игровой логики объектов и AI прочих противников, которые задействованы на остальных уровнях. Ещё необходимо что-то решить с оптимизацией размера этих уровней, т.к. некоторые из последних не вписываются в размеры памяти 3DO. Возможно, придётся подрезать качество некоторых звуков. Попутно, ребята из сообщества занимаются исследованием на тему конвертации видео в совсместимый с 3DO Cinepak формат, надеюсь, в перспективе использовать их наработки для добавления FMV.
В общем, всё идёт по плану. 3DO версия явно будет не самой красивой и производительной, но, надеюсь, раскроет и покажет всем возможности железки, что привлечёт новых разработчиков в сообщество. По крайней мере, игра будет играбельнее, чем Doom ;)
Вот видео последней версии, запущенной на реальной железке
Великолепно, потрясающе!!! Когда у меня появилась впервые консолька в 2001 я играл в Дум в рамке и в черно-белом режиме...если бы я тогда увидел то что щас вижу - у меня бы челюсть отвисла))
_______________________________________ Нет судьбы, кроме той, что мы творим сами. Т2 (с)
Попутно, ребята из сообщества занимаются исследованием на тему конвертации видео в совсместимый с 3DO Cinepak формат, надеюсь, в перспективе использовать их наработки для добавления FMV.
Да с созданием этих Stream-видосов несчастных — и мы можем помочь, для этого много ума не нужно. А почему именно Cinepack? Паршивое же качество он обеспечивает. Всё будет в мыле и разноцветных артефактах, а-ля «Америкен Лейзер Геймс» тм. ))
Может, лучше SANM? Если плеер сумеешь собрать и добавить в LaunchMe? Сжатие православным Pack Cel Data — таки предпочтительнее, чем говнявый Cinepack. ___________________ И потом из PC-версии там конвертить нечего — там видосы 300x120 пикселов, 15fps:
Вложение
TRMovie.PNG (2.55 КиБ) Просмотров: 705
Лучше с Sony PlayStation 1 брать — вот там уже что-то, 15fps тоже, зато 320x208 пикселов. И смотрятся отлично.
_______________________________________ Урча, пухлыми лапами кот вцепился в жидкую шевелюру конферансье и, дико взвыв, в два поворота сорвал голову с полной шеи. Две с половиной тысячи человек в театре вскрикнули как один.
Дальнейшая оптимизация слишком трудозатратна без ODE, поэтому переключился на другие платформы. Какие-то общие оптимизации для них находят отражение и в 3DO версии, но пока ничего существенного.
Что-то я старый стал, медленно соображающий и глупый.)) Может, имеет смысл оказать какой-то донейт на приобретение ODE, и тогда это, быть может, поможет ускорить релиз?
Как бы — да, писать болванки в таком деле — это такой процесс, шибко «многоболваночный»... Перевод игры-то их иной раз отжирает целую гору, где ничего не надо оптимизировать, а просто тестить.
Вложение
IMG_4474.JPG (1.01 МиБ) Просмотров: 283
Это у меня просто вторая шлифовка перевода Шерлока Холмса была, и вот столько вот болванок ушло — это все в мусор, примерно по 1 болванке на ресурс-файл.
_______________________________________ Урча, пухлыми лапами кот вцепился в жидкую шевелюру конферансье и, дико взвыв, в два поворота сорвал голову с полной шеи. Две с половиной тысячи человек в театре вскрикнули как один.
Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 1
Вы не можете начинать темы Вы не можете отвечать на сообщения Вы не можете редактировать свои сообщения Вы не можете удалять свои сообщения Вы не можете добавлять вложения