optozorax
4.6K subscribers
383 photos
60 videos
10 files
299 links
По деловым предложениям: optozorax.work@gmail.com.

Связь с админом через личку канала (кнопка в канале слева снизу).

Ютуб: https://www.youtube.com/@optozorax

Бусти: https://boosty.to/optozorax
Патреон: https://www.patreon.com

Сайт: optozorax.github.io
Download Telegram
Настало время сделать публичной часть моей программы Portal Lab.

Если вы хотите попробовать ту часть моей программы, которая не содержит порталы, то я опубликовал её с возможностью открыть в браузере:

https://optozorax.github.io/optolab_wasm/

В будущем я опубликую весь этот код в open source и назову эту программу OptoLab, потому что она никак не связана с порталами.

Множество сцен там - это адаптации чужих шейдеров с shadertoy.com к максимальной интерактивности: возможность двигать камеру, менять все параметры, двигать точки на экране, делать кодогенерацию, делать анимации, рендерить их и так далее!

Например, текущая открывающая сцена - это визуализация комплексных функций. Я адаптировал чужой шейдер, где все настройки хранились в коде. Так же там можно написать собственную функцию в пользовательском интерфейсе, и это получается такой красивый сверхбыстрый desmos для комплексных функций.

Так же я адаптировал туда свою визуализацию 120-cell. Она сделана очень интересно:
* Сначала все вершины и рёбра высчитывается программой на скриптовом языке
* Затем эти вершины и рёбра записываются в текстуры 1200x1 и 600x1
* Далее эти текстуры подаются в шейдер
* Там эти вершины проецируются из 4D в 3D согласно настройке 4D камеры (тоже отдельный компонент, который шлётся как 5x5 матрица!)
* Далее это всё рисуется рейтрейсингом согласно 3D камере (отдельный компонент матрицы)

В любом другом визуализаторе шейдеров практически невозможна такая композиция из коробки!

Если вы делали свои шейдеры на shadertoy и хотите портировать их на Portal Lab - то открывайте меню "Edit scene" - и пробуйте! Пока не вся документация написана, так что если нужна помощь - пишите. Я могу добавить вашу сцену в программу.
47🔥9614👍10🤔4❤‍🔥2🥰2🙏1💘1
Forwarded from Сиолошная
Запуск Artemis II ровно через полчаса тут: https://www.youtube.com/watch?v=Tf_UjBMIzNo

За 10-дневную миссию космонавты облетят Луну, а человечество поставит новый рекорд в удалённости человека от Земли (пока будут за Луной).
🔥618👍5🕊3💩2🆒2😐1💘1
Завтра в 19:00 МСК будет стрим!

Буду симулировать/визуализировать ВАШИ вопросы про порталы в Portal Lab или Portal Explorer, насколько это будет возможно с текущими мощностями моих программ без долгой модификации исходного кода.

Если у вас уже есть идеи что показать - пишите их тут: https://qstream.unasanu.xyz/s/ab49b6424c . Там же голосуйте за чужие идеи! Буду выбирать сначала самые популярные запросы.

https://www.youtube.com/watch?v=p1ETDYwEklA
🔥36👍87🥰1🤗1🆒1
optozorax
Завтра в 19:00 МСК будет стрим! Буду симулировать/визуализировать ВАШИ вопросы про порталы в Portal Lab или Portal Explorer, насколько это будет возможно с текущими мощностями моих программ без долгой модификации исходного кода. Если у вас уже есть идеи…
Блин, стрим под конец обрубился, у меня интернет умер 😭 я вообще без понятия что происходит.

Сорри что так получилось не удалось нормально закончить :(

Спасибо всем кто пришёл и кто донатил, было весело!

Ну а запись будет, она наверное будет доступна по этой ссылке.

UPD: стрим обработался, но из-за того что я его немного подредактировал, чат потерялся(
👍45😭1810🔥2🕊1👀1💘1
С помощью LLM я пишу 99% кода и 0% сценария к видео. Почему так?

Дело не в том что у LLM есть стадия дообучения по написанию кода (Reinforcement Learning), а для текстов такого нет, или что нужно подождать более мощную модель. Нет, дело совершенно в другом.

В первую очередь мои видео - это сложносвязный набор из визуала и речи (слава богу музыки ещё нету). В сценарии я пишу только речь, а визуал храню в своей голове (или пишу в скобках, если там что-то, что я точно забуду). Предположим LLM напишет какой-то текст или даже визуализации в скобках. Откуда ей знать как выглядит что-то в моей программе? Она ей никогда не пользовалась, а даже если кто-то обучит мультимодальную сверх-модель на моих видео, я всегда делаю видео о чём-то новом, она не сможет знать что я там исследовал и что хочу показать.

Заранее делать анимации и показывать их модели тоже не выйдет - откуда мне знать что визуализировать в точности, до того как я написал сценарий? И очень часто бывает что потребность в новых визуализациях возникает на этапе написания сценария - я тупо не знал что мне это нужно до того пока не начал писать определённое предложение, и не понял что тут дыра.

Ну ладно, давайте отметём необходимость визуала. Что остаётся? Контекст: история развития проекта, как я это исследовал, как это работает, что интересного заметил в процессе, как это связано со всем другим. Всё это снова хранится в моей голове, и теоретически, этот контекст возможно передать нейросети, но его написание намного более трудоёмко, чем написание сценария, поэтому тут нейронки снова бесполезны.

Следующий фактор - это объяснение людям. Да, нейронки могут что-то объяснять, в интернете написано много объяснений, на которых они обучены, но у них нет интерактивного опыта объяснения чего-то одному человеку или множеству людей. Я же когда показываю свои порталы отдельным людям, то получаю фидбэк того что они поняли или нет по конкретно моим проектам, для которых я делаю видео. И особенно важно - я читаю каждый комментарий, и знаю что людям понятно и интересно, и это тоже влияет на мои сценарии. Тут я скорее не верю в нейронку из-за того что знаю как устроен её процесс обучения.

Ну и последнее - мой стиль. У меня есть своя философия по поводу того что и как нужно объяснять. Как это соотносится с ограничением и подходом к созданию анимаций в моей программе. Ну и просто мне хочется чтобы сценарий звучал так как нравится мне, и был написан моими словами.

Итого получается что сценарий моих видео - это невероятно сжатый (по меркам токенов) и миллион раз осмысленный продукт обработки большого количества информации именно одним человеком, со всем необходимым контекстом, подходом и стилем. Поэтому его написание нельзя делегировать LLM, к сожалению, даже в мелких деталях.

Но я активно использую LLM для критики моего сценария, выдаю его множеству разных моделей для максимально разностороннего предварительного фидбэка, и принимаю только ту критику, которая звучит адекватно.

UPD: всё что я сказал в этом посте относится к КАЖДОМУ предложению. Поэтому нельзя сказать "напиши главу про то-то с порталами", потому что для написания этой главы нужен весь этот контекст. Промт для написания будет длиннее самого этого абзаца.

UPD2: И ещё подумал - а что если надиктовать всё что можно голосом в неорганизованном хаосе и затем попросить нейронку это организовать? Может как первоначальный скелет сценария или в принципе как сценарий. О таком я не думал и не пробовал. Наверное от этого может быть смысл, но опять же, я пока не доверяю нейронкам что они в этом справятся хорошо, потому что у них нет опыта какой есть у людей в этом плане. Для кода у них этот опыт есть.

Надеюсь для всех это и так было очевидно. Пишу это скорее для тех кто считает что раз я пишу 99% кода нейронками, значит и сценарий и всё остальное за меня уже делают нейронки.
1💘4922👍16🔥8🥰4😁3🤔2💩1🥴1
Минцифры просит российские площади детектить когда пользователи используют VPN и блокировать такое использование. Особенно меня интересует детекция VPN на платформе Android.

Возможно ли спастись от факта детекта VPN с помощью раздельного туннелирования, клонирования системы или Shelter из Android 15?

Ответ: НЕТ.

Я (chatgpt с поиском) нашёл предположительно слитую методичку и описанные в ней методы детектирования VPN с помощью стандартных системных функций ОС Android и попросил Codex навайбкодить такое приложение. Так же я реализовал в нём косвенные проверки, которые делает мессенджер MAX из другой статьи про его реверс-инжиниринг. Все ссылки лежат в репозитории с исходным кодом приложения, там же лежит и APK: https://github.com/optozorax/detect_vpn

Тесты:
* Когда VPN включён, приложение детектит включённый VPN, очевидно. (скриншот 1)
* Я поместил это приложение в раздельное туннелирование в настройках VPN. Меньше проверок стало проходить, но факт VPN всё ещё детектится. Насчёт того чтобы понять какой у вас VPN или какой его IP адрес - это я не знаю насколько возможно. (скриншот 2)
* Самое грустное - я включил System Cloner (стандартная штука на моём телефоне ещё с Android 12, не уверен что у всех такое есть) и клонировал всю систему, и оставил включённым VPN в основной системе, и перешёл во вторую систему. Во второй системе в трее не показывается что VPN включён, и в браузере ничего не работает, но приложение всё ещё детектит его, как будто для него включено раздельное туннелирование. (такая же картина как на скриншоте 2)
* VPN выключен, все проверки красные, кроме референса работы интернета. (скриншот 3)
* UPD: подписчик с Android 15 протестировал Shelter (private space), и там тоже детектится факт VPN, как на скриншоте 2 :(.

Какой итог? Если не хотите чтобы кто-то на вашем телефоне на Android детектил что у вас есть VPN, то либо удаляйте все российские приложения, либо используйте второй телефон. Но раздельное туннелирование хотя бы не будет выдавать айпишник вашего VPN, а то вроде есть ещё просьба чтобы приложения высылали айпишники новых VPN для их оперативной блокировки.
👍76🤬31😢158🤣5🤔4😭4💩2🔥1🌚1🆒1
Onigiri
А вот и видео https://www.youtube.com/watch?v=QTeKWITUj50
ой, а кто это второй на превьюшке 🤔

(это я)

там же вы кстати увидите зачем пригодилась анимация выше
79🤯10🥰6👍3
Как вайбкодинг помог мне в обычной жизни

Значит хотел я сыграть в It takes two с девушкой на компьютере. Я ожидал что там можно играть вдвоём с одной клавиатуры, в моём детстве кооперативные игры так и работали. Но оказывается единственный вариант - клавиатура и мышь + джойстик. А его у меня нет.

Но зато у меня есть пульт для управления микродроном, Radiomaster TX12. На нём есть несколько кнопочек и тумблеров, но играть прям с него нельзя, потому что нет управления как на контроллере. И настроить в игре это нереально, ибо пульт отправляет совсем другие данные на компьютер.

Сначала решил "ну наверняка же есть софт чтобы отремапить, давай найду его!". Нашёл парочку проектов под названием UCR и x360ce, оба проекта уже давно заброшены и работают через одно место. Установить их сложно, в Readme их нормально не написано какие зависимости для них надо ставить, это зарыто где-то на вики и очень криво. Далее не понятно как тестировать, нет нормального софта чтобы открыл и сразу увидеть сколько у тебя устройств и что нажато на джойстике. Нашёл что-то в стиме, а оно нифига не работает и вообще там есть платная версия с DLC чтобы показывать больше данных 🤡.

Очень много матерился когда в этом всём разбирался, не работало нифига и не получалось поремапить и проверить результаты работы. Особенно порадовало как в репозитории x360ce в ридмишке написано "DO NOT ASK FOR HELP IN INSTALLATION OR CONFIGURATION!!!". То есть вы балбесы не написали весь список из миллиона зависимостей что надо скачать для вашей программы в ридмишке, и ещё запрещаете об этом спрашивать? Гениально. Нельзя было одну программу сделать, в которую всё зашито, для удобства людей?

Тогда я забил и решил что быстро навайбкожу это, приключение на 20 минут, что может пойти не так?

Запускаю Codex (прям приложение на винде, не CLI под WSL), и говорю: прям щас у меня подключён джойстик, надо его ремапить в виртуальный xbox 360 геймпад, давай там используй виртуальный драйвер ViGEmBus, сам скачай и установи его и пиши на C# (перед этим спросил гугляющую GPT о том как лучше это организовать и что использовать), отремапь две клавиши таким-то образом, начнём с теста.

Он начинает запускать команды, писать код, разбираться во всём, проверять свои скрипты на текущем джойстике, и оч быстро выдал готовый скрипт. Я его запускаю, но ни через какие визуализаторы джойстика его не вижу. Тогда говорю: накодь визуализатор всех текущих джойстиков. Он накодил, далее я выдал пару сообщений фидбэка и в итоге это приложение получилось идеальным.

И две кнопки что он отремапил работают и теперь реально создаётся xbox 360 джойстик!

Теперь уже смотря на эту визуализацию и смотря на управление в It takes two записал промт о том как отремапить весь остальной джойстик. Но там возникла одна сложность. На этом пульте всего 2 реальные кнопки, а на джойстике любом минимум 4. Зато есть 4 трёхпозиционных тумблера. И я придумал такую вещь что когда тумблер в среднем положении - то клавиша нажата, а когда в нижнем или верхнем, то клавиша отжата. Таким образом нажать клавишу можно просто переключив тумблер в другое направление, оч удобно. И описал кодексу это запрограммировать и у него получилось с первого раза.

В итоге хорошо поиграли и всё норм работало, и да, приключение реально получилось на 20 минут, и всё пошло как надо, я обманул ваши ожидания ранее!

И вот что я думаю. Когда я пытался пользоваться приложениями для ремапинга с визуальным интерфейсом, которые написали люди, у которых вроде как были пользователи, было абсолютно невозможно ими пользоваться. Либо они не работали, либо установка была идиотской и непонятной, либо я уверен на 90%, в них невозможно было бы заремапить мою удобную логику с трёхпозиционным тумблером!

А тут нейронка написала код, проверила что устройство создаётся что всё работает, и МНЕ не пришлось страдать, только давать ей инструкции. Понадобилось использовать лишь драйвер для виртуальных джойстиков ViGEmBus, написанный и отлаженный людьми, а обвязку вокруг него быстро накидала нейронка и я даже в код не смотрел.
🔥8316🥰11😨11👍3💩3❤‍🔥2🌭1🤣1
Я считаю что нейронки демократизируют компьютеры ещё больше

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

Например, моя программа Portal Lab может компилироваться под чёртов Android! И она там работает! Я не разбираюсь в Android, я не знаю какой у него API к языку Rust, и упаси господи, я не знаю И НЕ ХОЧУ ЗНАТЬ как установить весь тулчейн для этого Android на свой компьютер. Мне в своё время хватило установки NVIDIA драйверов на Linux (кто знает - тот поймёт). Но нейронка знает и я ей как-то выдал "а ну сделай чтоб моя программа компилировалась под Android и выдай мне apk и установи всё что для этого нужно". Далее через какое-то время отправки фидбэка по поводу неработающих фич, нейронка довела сборку под Android до работающего состояния. Я там выступал только в роли мясной прокладки между компьютером и телефоном, которая ставит этот apk на андроид, и говорит с какой ошибкой программа упала или что там не работает. Очень скоро нейронки смогут сами быть в роли такий прокладки и сами кликать по телефону, по компьютеру и проверять что прога работает. Тогда хватит только одного промта, а далее нейронка сама будет итерироваться и всё проверять.

Стал бы я это делать эту Android-версию своими руками? Ни за что! Это просто была моя прихоть, которую с нейронкой стало в десятки раз проще и быстрее реализовать. Может быть это будет очень полезно тому у кого нет компьютера, но есть телефон или планшет на Android. Или можно даже нативно запускать это на шлеме Oculus (я это проверял и тоже отправлял нейронку фиксить под него, лол).

Или вот моя программируемая клавиатура, про которую я написал огромнейшую статью (https://optozorax.github.io/p/my-keyboard-layout/). Это всё удовольствие доступно только для программистов, кто может модифицировать исходный код раскладки, кто может прошить себе клавиатуру. Потому что визуального интерфейса для QMK нет, а то что есть (VIA) - слабое говно.

А теперь с нейронками любой не-программист может сказать нейронке "я подключил эту клаву, давай-ка найди QMK или что там и прошей её, вот она подключена". И далее может сказать "я хочу чтобы в расладке такая-то кнопка была там-то и слои были устроены так", и нейронка напишет. Или сказать "вот тебе статья раскладки оптозоракса, вот исходный код его раскладки, давай-ка добавь мне вот эту фичу из его статьи". И всё это будет работать, потому что это не rocket science, нейронки обучены делать задачи именно такого уровня сложности.

Или на каком-нибудь Linux обнаружили вы какую-то проблему, типо звук не работает, и отправили нейронку гуглить и разбираться в этой проблеме чтобы она там какие-то конфиги поправила или установила секретные драйвера чтобы это пофиксить, и теперь Linux не будет таким страданием для обычных людей и для программистов.

В общем мне кажется будущее компьютеров и софта с нейронками очень светлое и демократичное, дальше будет только лучше, удобней и интересней. Обычные люди смогут манипулировать компьютерами так, как не могут манипулировать даже лучшие программисты сейчас.

Ну и конечно весь ландшафт софта изменится, станет куда более востребованным какой-то фундаментальный софт (типо того драйвера ViGEmBus), а вот всякая тривиальная обвязка вокруг него (типо интерфейса ремапинга контроллера поверх этого драйвера) станет не такой важной, её кто угодно может под себя навайбкодить.
🔥66💩22👍12🆒119🤡6🥰3😢3🤮3❤‍🔥2🌭2
Я просто скинул каракули, которые делаю для одной анимации, не ожидая что нейронка хоть что-то в них поймёт, а она поняла и НАШЛА ОШИБКУ!!!!!!! ЭТО ВЕРНО!!! АААААААААААААААААААААААААААА
387🔥35🤯25🤣10👍4💩3🥰1
В твиттере меня призвали просимулировать этот вопрос.

Вот вам парочка симуляций с разными порталами. Для случая что показали в твиттере ничего не случится. А вот для другого случая... Уже зависит от вашей гибкости и кривизны портала, не дай бог у вас кость широкая.

Заметьте как при прохождении через портал объект отскакивает назад - портал тут не при чём, его отталкивают его собственные атомы, потому что портал меняет пространство, и атомы на выходе становятся ближе, а значит отталкивают друг друга.

А вообще в этих симуляциях очень много тех возможностей моего физического движка, которые я раньше не показывал. Через одно видео про это всё будет отдельное видео. Насладимся уничтожением объектов по полной.
2🔥15916🤔10👍8🤯5😭4🥰1🫡1
This media is not supported in your browser
VIEW IN TELEGRAM
Я в своем познании настолько преисполнился, что я как будто бы уже сто триллионов миллиардов лет проживаю на триллионах и триллионах таких же планет, как эта Земля, мне этот мир абсолютно понятен, и я здесь ищу только одного - покоя, умиротворения и вот этой гармонии, от слияния с бесконечно вечным, от созерцания великого фрактального подобия и от вот этого замечательного всеединства существа, бесконечно вечного, куда ни посмотри, хоть вглубь - бесконечно малое, хоть ввысь - бесконечное большое, понимаешь?
8😁108🍾21❤‍🔥13👍6🔥64🥰3🐳2🤨2💩1💯1