𝐑𝐨𝐨𝐭𝐓𝐨𝐨𝐥 𝐁𝐥𝐨𝐠
194 subscribers
561 photos
48 videos
5 files
59 links
ニャン
Download Telegram
Примеры работы с PSE SDK

Завершая и замораживая Portal Solver Editor SDK, не могу не поделиться первыми примерами работы с ним

Объясню кратко каждый шаг:
1) Создаем команду на создание элемента, и выбираем ему класс "дверь"
2) Каждый элемент имеет по 8 32-битных регистров для данных. Их спецификация расписана в PSE > Concept > Elements. В данном случае в регистре "1" находится цвет двери при активации. Туда мы записываем красный цвет
3) И затем отправляем команду чтобы установиться State = 1. Что такое State? Главная нить судьбы, связующая между элементами. Например я нажал на кнопку -> кнопка сгенерировала событие с State = 1 -> Дверь приняла этот State и открылась. Все просто. И хоть State является 8 битным числом, большинство элементов интерпретируют свою активацию при State не равном нулю, то есть, та же условная дверь откроется при State != 0

В посте также прикреплю вырезки из спецификации SDK (в которой большинство вещей уже прописаны мною)

На этом все я думаю? Не знаю, держите v flower на удачу
💘4
This media is not supported in your browser
VIEW IN TELEGRAM
💘3
PSE SDK - Что такое State и почему это "нить судьбы"

Давайте начистоту: В Portal: Solver есть куча элементов, и они должны постоянно общаться друг с другом: игрок нажал на кнопку - дверь открылась, активировал солвер-кнопку - дропнули кубик. И чтобы жестко не завязывать каждый элемент друг с другом, была разработана универсальная единая сущность: State (состояние)

State - это, в кой то степени, универсальный язык, на котором разговаривают все элементы в игре. В игре (и в редакторе) он как провод от одного элемента к другому. И по этому проводу бегает всего-навсего одно маленькое число типа int8 (8-битное целое число, то есть байт)

Но, большинство элементов бинарны по своей природе, то есть, имеют лишь 2 состояние (открыт/закрыт) - и тогда было создано одно простое правило: Для таких элементов активность будет считаться при State не равном 0. А источники (кнопки) наоборот, отправляют State равной 1 при активации, и 0 при деактивации

Вот такой мини-Kismet из UE3 получился
Надеюсь стало понятнее, ха
❤1🔥1🤩1
This media is not supported in your browser
VIEW IN TELEGRAM
💘1
This media is not supported in your browser
VIEW IN TELEGRAM
Двухфакторная аутентификация
💯1
Шла разработка Portal: Solver
❤1👀1
От идеи до отчаяния 4 запроса
😁2❤1
Бля как же ахуенно спустя долгое время выйти на улицу. Такой графон, такое погружение....

Real Engine is so cool
❤3🔥1
Короче сегодня утром попался этот мем, и пока был в магазине, решил навайбкодить его с телефона

Глядите что получилось, ахаха

https://roottool0.github.io/pointerle/index.html
🔥2
This media is not supported in your browser
VIEW IN TELEGRAM
💘1
В общем сидел, кодил, слушал музыку моего любимого продюсера nasoni, и тут случайно заметил в базе данных vocaDB, что у него есть второй трек, которого не было ни в YT, ни в NN (японский YT)

Ну и естественно как нормальный адекватный, 100% не больной на голову, кодер - пошел искать трек на краях интернета у чёрта на куличиках...

И пришлось просто собирал трек по крупицам байтов:
- Текст из неофициального хостинга nicolog, который сохранил описание песни с ее тяжелым (мрачным) текстом + небольшую миниатюру, что дало мне надежду на поиски
- На китайском Bilibili, пройдя великий китайский фаервол, кое как нашел последнего бота что успел перезалить этот трек, и затем используя свой мозг на 100%, вытащил оттуда 2 потока .m4s, содержащие в себе аудио и видео песни. Недолго думая перевел их в .mp3 и .mp4

Итогом мы имеем: Официально спасенная Lost Media моего любимого продюсера + мой первый Reprint на ютубе: тык

И отвечая наперед: нет, nasoni выкладывает свои треки только на YT и NN. Никаких 3-х платформ не было
❤1🔥1🍓1
Yo, гайс

Я наконец-таки поймал bug
❤3🔥1