Дядя Миша писал: Но по крайней мере после портирования ксаш-мода у меня больше нет никаких масштабных задумок по портированию кода. Тут уж дело за вами.
Вот это не очень понял.
__________________
У котёнка мокрый нос и гладенькая шерсть, у него забавный хвост и быстрых лапок шесть. Две задних, две средних и две передних лапы, такая многоножка получилася у папы.
Он ученый — папа мой — зверушек изучает, гуляет по помойкам, ловит крыс и чаек. Две крысы белокрылые и чайки две унылые покрытые пупырчатою кожей лягушат без пёрышек тоскуют и ускакать спешат.
А ещё есть муравей большой размером с гуся он пугает всех зверей, и я его боюся, когда он ковыляет на лапках на своих.
И в двери ударяет, и начинает стих: Я — муравей, воды налей! Не меньше ведра, напиться мне пора!
FiEctro мало ли ещё старых игр, которые потенциально можно перенести на новый Ксаш? Но я ничего такого не планирую. Муторное это дело. Хотя и вполне реальное.
Добавлено 23-09-2024 в 11:08:
Вы наверное уже и не помните, но всё что я делаю сейчас, я пытался сделать ещё в 2007-м. Тогда у меня не было своего скриптового языка, я попытался использовать расширенный QC от FTE. И портировать на него игровой код из халфовских дллок. Естественно работы там предстояло не в пример больше, а многое было попросту невозможно реализовать. Тогда я отказался от этой затеи и вернулся обратно к обычным библиотекам, а потом Ксер говорит - а смысл очередного несовместимого движка. Лучше сделай его совместимым с халфой. Так на свет появился Xash3D который мы все знаем и любим. Но от своих первоначальных планов я разумеется не отказался.
Дядя Миша писал: мало ли ещё старых игр, которые потенциально можно перенести на новый Ксаш?
А зачем когда есть эмуляторы под эти игры?
Цитата:
Дядя Миша писал: а потом Ксер говорит - а смысл очередного несовместимого движка.
И сам сделал ни с чем не совместимую волатилу
__________________
У котёнка мокрый нос и гладенькая шерсть, у него забавный хвост и быстрых лапок шесть. Две задних, две средних и две передних лапы, такая многоножка получилася у папы.
Он ученый — папа мой — зверушек изучает, гуляет по помойкам, ловит крыс и чаек. Две крысы белокрылые и чайки две унылые покрытые пупырчатою кожей лягушат без пёрышек тоскуют и ускакать спешат.
А ещё есть муравей большой размером с гуся он пугает всех зверей, и я его боюся, когда он ковыляет на лапках на своих.
И в двери ударяет, и начинает стих: Я — муравей, воды налей! Не меньше ведра, напиться мне пора!
Дядя Миша писал: А зачем Doom на зубочистках запускают? Вот и я не знаю.
Это конечно да, но кто играет в эти порты? Очевидно - никто.
__________________
У котёнка мокрый нос и гладенькая шерсть, у него забавный хвост и быстрых лапок шесть. Две задних, две средних и две передних лапы, такая многоножка получилася у папы.
Он ученый — папа мой — зверушек изучает, гуляет по помойкам, ловит крыс и чаек. Две крысы белокрылые и чайки две унылые покрытые пупырчатою кожей лягушат без пёрышек тоскуют и ускакать спешат.
А ещё есть муравей большой размером с гуся он пугает всех зверей, и я его боюся, когда он ковыляет на лапках на своих.
И в двери ударяет, и начинает стих: Я — муравей, воды налей! Не меньше ведра, напиться мне пора!
Портирование игрового кода ксаш-мода на Shot - это очень серьезный стресс-тест для последнего. Исходники весят три мегабайта.
1.3 мегабайта - это монстры и пушки. Остальное - бакэнд и энтити ксашмода. Вот их-то я портирую в первую очередь. То есть должна корректно заработать вся физика, зеркала, порталы, мониторы, лазеры там всякие. Физики твердых тел и машинок ещё нет, её только предстоит написать. Коллизия есть, но нужен солвер.
Дядя Миша
Расскажи хоть в чём особенность портирования заключается? Если шота эмулирует весь С++ код, то что ещё нужно менять?
__________________
У котёнка мокрый нос и гладенькая шерсть, у него забавный хвост и быстрых лапок шесть. Две задних, две средних и две передних лапы, такая многоножка получилася у папы.
Он ученый — папа мой — зверушек изучает, гуляет по помойкам, ловит крыс и чаек. Две крысы белокрылые и чайки две унылые покрытые пупырчатою кожей лягушат без пёрышек тоскуют и ускакать спешат.
А ещё есть муравей большой размером с гуся он пугает всех зверей, и я его боюся, когда он ковыляет на лапках на своих.
И в двери ударяет, и начинает стих: Я — муравей, воды налей! Не меньше ведра, напиться мне пора!
Что нужно менять? Имена переменных, ну это так уже, по желанию. В старом ксаше я использовал венгерку, а теперь отказался от нее.
Так же надо прописывать свойства кое-где. Ну и другие мелкие особенности, завязанные на механизмамх самого движка. К примеру у меня есть быстрый поиск объекта по содержимому строки у одного из членов класса. Из-за этого строковым полям нельзя напрямую присваивать новые значения, только через особую функцию Set*. Но это мелочи конечно. Особых отличий нет, поэтому я спокойно могу портировать за день до сто килобайт кода, например. Это с верификацией.
Собственно из намеченного перенёс практически всё. Остался effects.cpp, это где лучи, лазеры, спрайты всякие, пузырьки вообщем.
И начнётся масштабная рекурсивная отладка, которая затрагивает практически весь движок, т.к. где-то что-то мне предстоит добавить в ядро, где-то в компилятор, где-то прописать скриптовой файлик с эффектами, нуитд. Зеркала опять же, порталы там всякие. Архитектура рендера под них заточена, но сами рекурсивные проходы ещё не написаны.
Возможно кое-что поменяется в управлении самими порталами.
Далеко не всё теперь можно будет задавать через спаунфлаги в энтите, придётся выбирать другой материал, например для чернобелого монитора.
Но я думаю это некритично.
Добавлено 25-09-2024 в 19:37:
Собственно, когда все эффекты и фишки из ксаш-мода начнут оживать - порадую вас свежими скриншотами.
Добавлено 25-09-2024 в 19:39:
Скриншот с грасс_теста был сделан ещё до начала переноса всех энтить, вот как раз-таки потому, что он их и не требовал.
Дядя Миша писал: Собственно из намеченного перенёс практически всё. Остался effects.cpp, это где лучи, лазеры, спрайты всякие, пузырьки вообщем.
И начнётся масштабная рекурсивная отладка, которая затрагивает практически весь движок, т.к. где-то что-то мне предстоит добавить в ядро, где-то в компилятор, где-то прописать скриптовой файлик с эффектами, нуитд. Зеркала опять же, порталы там всякие. Архитектура рендера под них заточена, но сами рекурсивные проходы ещё не написаны.
Возможно кое-что поменяется в управлении самими порталами.
Далеко не всё теперь можно будет задавать через спаунфлаги в энтите, придётся выбирать другой материал, например для чернобелого монитора.
Но я думаю это некритично.
Добавлено 25-09-2024 в 19:37:
Собственно, когда все эффекты и фишки из ксаш-мода начнут оживать - порадую вас свежими скриншотами.
Добавлено 25-09-2024 в 19:39:
Скриншот с грасс_теста был сделан ещё до начала переноса всех энтить, вот как раз-таки потому, что он их и не требовал.
Супер ) Демку бы пощупать, побегать )
__________________
Kiss my ass if you don't like my Ford!
------------------------------------------ Game Area51 Update 1
First Person Shooter Released Jul 24, 2017
The game is a 3d shooter with the elements of the quest.
Дядя Миша писал: И начнётся масштабная рекурсивная отладка, которая затрагивает практически весь движок
Расскажи пожалуйста как ты вообще всё отлаживаешь имея из внешних инструментов только блокнот? Ну и как я понял ещё средствами движка что то выводишь.
В гейм мейкере кстати был Error report довольно удобный если игра ломалась.
Возможно что то подобное и в ксаше сделать? Или просто в лог писать?
__________________
У котёнка мокрый нос и гладенькая шерсть, у него забавный хвост и быстрых лапок шесть. Две задних, две средних и две передних лапы, такая многоножка получилася у папы.
Он ученый — папа мой — зверушек изучает, гуляет по помойкам, ловит крыс и чаек. Две крысы белокрылые и чайки две унылые покрытые пупырчатою кожей лягушат без пёрышек тоскуют и ускакать спешат.
А ещё есть муравей большой размером с гуся он пугает всех зверей, и я его боюся, когда он ковыляет на лапках на своих.
И в двери ударяет, и начинает стих: Я — муравей, воды налей! Не меньше ведра, напиться мне пора!
FiEctro писал: Расскажи пожалуйста как ты вообще всё отлаживаешь имея из внешних инструментов только блокнот?
Почему только блокнот? Ну студия-то падает на ошибке, можно стек посмотреть. Как правило этого вполне достаточно.
Цитата:
FiEctro писал: Возможно что то подобное и в ксаше сделать? Или просто в лог писать?
В ксаше когда Shot с ошибкой падает - он тоже выводит содержимое стека и имя файла (номер строчки) где произошёл вылет. И это в лог пишется, да.
Я конечно могу это оформить в виде диалог-бокса, но лог ИМХО удобнее.
Дядя Миша писал: Я конечно могу это оформить в виде диалог-бокса, но лог ИМХО удобнее.
Как отдельная опция было бы не плохо
__________________
У котёнка мокрый нос и гладенькая шерсть, у него забавный хвост и быстрых лапок шесть. Две задних, две средних и две передних лапы, такая многоножка получилася у папы.
Он ученый — папа мой — зверушек изучает, гуляет по помойкам, ловит крыс и чаек. Две крысы белокрылые и чайки две унылые покрытые пупырчатою кожей лягушат без пёрышек тоскуют и ускакать спешат.
А ещё есть муравей большой размером с гуся он пугает всех зверей, и я его боюся, когда он ковыляет на лапках на своих.
И в двери ударяет, и начинает стих: Я — муравей, воды налей! Не меньше ведра, напиться мне пора!