По случаю нового года решил создать репозитории с исходниками некотрых моих проэктов. Вообще я обычно не люблю создавать репо так как они мне мешают, кроме собственно кода надо придумывать и писать ещё какие-то там сообщения к коммитам, а если изменения ввремя не коммитить они превращаются в какой-то комок какого-то нечта которое хрен разберёшь, а ещё не дай бог что-то недопилено... вобщем жопа одним словом. Но разработка представленных проэктов у меня давно вышла из активной фазы (читай сдохла), поэтому я думаю репозитории сильно не помешают уже.
И так, первый проэкт это Super Puper Mega Editor. Задумывался как визуальный редактор сталкерского спауна через universal ACDC который поддеживал бы сразу все билды в одной программе. Написан на Objective-C, но не том который использовала корпорация Apple, а немного на другой версии, которая поддерживается компилятором Portable Object Compiler. Для сборки сего, в личших традициях меня, потребуется не один а сразу четыре компилятора, мало того что Portable Object Compiler требует для своей работы вижуал студию т.к. компилирует не сразу в машинный код, а в код на чистом C который потом компилируется другим компилятором, так ещё в этом проэкте есть две библиотеки собираемые GCC (через Dev-Cpp) и FreePascal.
Разработка сдохла т.к. у меня были слишком радужные воспомнания universal ACDC и выяснилось что он тоже нуждается в доработке напильником, а я не пишу на перле и учить его мне оказалось слишком лень ради этого.
Второй проект это rgeomview, программа для просмотра уровней и моделей от игры The Hobbit. Проект не такой бардачный как предыдущий, написан на чистом C и собирается целиком в Dev-Cpp. Теоретически из него можно было бы сделать редактор, но с хоббитом всё несколько сложнее чем было например с метром и сталкером и упростить до безобразия архитектуру не получится, плюс некоторые форматы не исследованы (например коллизия), так что недостаток усердия с моей стороны послужил причиной затухания разработки, но штука всё-ровно прикольная.
Ну и наконец третий проэкт, это вообще трешатина из трешатины https://bitbucket.org/cat-modera/snowflakes/src/master/
По сути тут два совершенно разных проекта выросло в одной папке на одной базе. Во первых это игра про пони в лабиринте, во вторых это генератор лайтмапов из шадовмапов. Первое при этом лучше чем второе, но обо всём по порядку. Во первых тут используется два графичеких апи, Direct3D 7 и OpenGL разных версий, с возможностью переключения. Про игру мне сказать особо нечего, ну там надо собрать 20 кристаллов в случайно созданном лабиринте, и есть даже мультилпеер зачем-то, хотя всё сделано чисто на UDP протоколе и наверно будет нормально работать только в локальной сети, но игра покрайне мере работает, хотя мне что-то в ней всё время не нравилось и я её так и не выпустил. Пару билдов игры кстати доступно в разделе загрузок.
Генератор лайтмапов тоже штука достаточно интересная, я давно ещё думал почему в сталкере тени на R2 рендере считаются каждый кадр в большом разрешении, а для R1 рендера наш любимый компилер xrLC считает тени в низком разрешении по несколько дней. Так вот возникает вопрос, можно ли тени для R2 (шадовмаппинг) переделать в тени для R1 (лайтмапинг)? Да, впринципе можно. Но довести до ума эту идею у меня так и не получилось, потому что не смотря на гораздо большую скорость рассчёта и гораздо большее качество вылезло так же много всяких нежелательных глюков, которые мне не хватило опыта исправить, хотя я думаю это всё-таки было возможно.
Вот к примеру скриншот того какие лайтмапы получаются для мультиплееерного АТП:
Тут хеми+солнце+статические источники. И это всё было рассчитано всего за 12 секунд!
Так же вот несколько старых скриншотов того какие лайтмапы у меня получались для подземелья агропрома:
Эти лайтмапы были рассчитаны в гораздо более высоком разрешении чем стандартные (4096х4096 против 1024х1024), и их создание заняло всего 1 минуту времени. В общем потенциал у данной технологии определённо есть, но раскрывать его некому...
На этом пока всё. Может как-нибудь позже я ещё что-нибудь интересное в своих закромах откопаю, гегеге.