Наткнулся на ресурс HobbySupport, он иногда собирает проекты людей и проводит конкурс.
Ну, а чем я хуже, решил тоже поучавствовать.
В общем, если интересно посмотрите, там с десяток различных, интересных проектов, в том числе и мой rayCast.
Если что, под номером 7️⃣.
Голосование проходит тут:
https://t.me/hobbysupport
🎡 "Карусель, карусель... "
🧑💻 Вроде почти всё готово, и точки найдены в пространстве, и пересчитаны на экране, и линии ограничивающие сектора, но вот чего я не ожидал, что запнусь об растеризацию полигона.
Вроде задача то не сложная, в границах линий закрасить цветом, а вот не всё так просто. Делать миллион пповерок на факт нахождения внутри или снаружи это бред, это сразу мимо. Тем более зная координаты вершин. По вершинам, с лёту, тоже не получится. В общем сижу, думаю...
p.s. 😱 "Придумал же себе на безтолковку..."
[ VK-видео ][ YouTube ][ RuTube ]
🏠 [ Домой ] 🛠 [ Проекты ]
🌏 "Сейчас бы на пляж... "
🧑💻 Растеризацию поправил, пока знаю про две проблемы:
1. Не все полигоны захватываются, это видно по краям.
2. Точки, оказавшиеся за спиной, не правильно пересчитываются на экран.
Ну чтож, и не с таким справлялись.
p.s. 😅 "Да и пора бы на ESP это запускать..."
[ VK-видео ][ YouTube ][ RuTube ]
🏠 [ Домой ] 🛠 [ Проекты ]
🌏 "It's alive... "
🧑💻 Перенос движка поверхности с ПК на ESP32 похоже закончился успехом.
Плюсы - всё работает в 30фпс..
Минусы - дальность так себе,всего 20 клеток. При дальности в 25, уже фпс падает до 20,при 30 - 15. Ну чтож, не зря в Silent Hill придумали туман 😶🌫...
p.s. 🤔 "Чего-б такого этому всему теперь придумать..."
[ VK-видео ][ YouTube ][ RuTube ]
🏠 [ Домой ] 🛠 [ Проекты ]
☕️ "Утро начинается не с кофе..."
🧑💻 А началось с замеров времени на разные части кода, и вот что выяснилось...
Но, всё по порядку.
Весь алгоритм построения делится на несколько этапов:
1. Определение области обзора
2. Сбор вершин внутри области
3. Фильтрация от случайно продублированных
4. Сбор полигонов из вершин
5. Перенос вершин из декартовых координат в радиальные
6. Растеризация полигонов с учётом перекрытий
И вот по третьему пункту выявилась проблема, анализ и выброс лишних точек ( дублей ) занимает аж более 35мс. Поправить конечно это одно, и оно ускорилось в три раза до 12мс. Но мысль появилась другая, что проблема ещё раньше, в алгоритме сбора точек, что при сборе загребаются те что уже есть. Значить копать нужно ещё раньше...
p.s. 🤓 "Ну что-ж, 'наши руки не для скуки'..."
Попробовал сделать чат ->
Ссылка на чат 😝
[ ⏮️ ][ ⬆️ ][ ⏭️ ]
[ VK-видео ][ YouTube ][ RuTube ]
🏠 [ Домой ] 🛠 [ Проекты ]
Утро, как обычно доброе. Но не для ESP'шки 😂.
40 фпс, с запасом по таймингам, вот с этим уже можно работать...
Поправить пару глитчей, и можно пробовать 'травку засеять, да волны по воде погонять'.
А так, поле для фантазии, го тут можно...
И туман, и дождь, и снег...
Вроде есть мысди про 3Д домики, короче ещё есть куда копать...
[ ⏮️ ][ ⬆️ ][ ⏭️ ]
[ 💬 чат ]
[ VK-видео ][ YouTube ][ RuTube ]
🏠 [ Домой ] 🛠 [ Проекты ]
🌎 "Сею, сею, посеваю..."
🤩 Оказывается текстурирование полигона ещё та задачка, со своими танцами и бубном, но ничего, разберёмся...
🎮 Текстуры пока даже хуже чем на первой плойке.
⏳ Главное запас по времени ещё есть. Кадр рисуется 10-16мс, а это от 100 до 60 фпс.
p.s. 🤓 "Живём пока..."
[ ⏮️ ][ ⬆️ ][ ⏭️ ]
[ VK-видео ][ YouTube ][ RuTube ]
🏠 [ Домой ] 🛠 [ Проекты ][ 💬 чат ]
🌎 "Настроим резкость..."
🧑🎓 Чуть безтолковка не взорвалась, но вроде поправил наложение текстур на полигон. Чёрт ногу сломит с этими ( x, y), ( r, h), ( u, v).
🎮 Теперь текстуры очень схожи с первой плойкой.
⏳ А запас по времени ещё есть. Не сильно нагрузило систему
p.s. 🤓 "Попробовать blending, что-ли..."
[ ⏮️ ][ ⬆️ ][ ⏭️ ]
[ VK-видео ][ YouTube ][ RuTube ]
🏠 [ Домой ] 🛠 [ Проекты ][ 💬 чат ]
🏠 "Миша, это всё не то, давай по новой..."
🧑🎓 Я конечно добавил 3D объекты, это уже не столь сложно, но есть одно но...
🧮 Я неправильно сделал расчёт вершин оказавшихся за спиной, от того и глюки визуальные.
📐 А правильно их расчитывать как? А никак, их вообще не должно быть. Полигон, выходящий за границы видимости, должен обрезаться и генерировать новые вершины, из четырёх угольника превращаться в пяти, шести угольник и перестраивать составные треугольники. В общем, рано радоваться...
p.s. 🤓 "blending подождёт..."
[ ⏮️ ][ ⬆️ ][ ⏭️ ]
[ VK-видео ][ YouTube ][ RuTube ]
🏠 [ Домой ] 🛠 [ Проекты ][ 💬 чат ]
🗄 В архиве:
💻 - Прошивка для CYD3224S028
🎞 - Программа для фото
💻 - Симулятор на ПК
◼️ - 3D модель корпуса для печати
⚙️ Программа для прошивки ESP
[ ⬇️ ]
[ VK-видео ][ YouTube ][ RuTube ]
🏠 [ Домой ] 🛠 [ Проекты ][ 💬 чат ]
👍 "Ну и хватит на этом..."
😎 Этот проект можно продолжать вечно, но я наткнулся на новую нишу. Это ещё на шаг ближе к честному 3D. И как оказалось там много всего нового. Но даже разобравшись с текущим вариантом 3D ландшафта ещё рано браться за чистое виртуальное пространство.
😈 И следующим шагом будет добить ландшафты, и поиграться с секторным представлением 2.5 миров, как было сделано в Doom, DukeNukem и подобных играх.
💻 По этому план такой:
- Этот проект ставлю на стоп, выкладываю прошивки как есть, в принципе они приемлемые.
- Сажусь за пару роликов на простые темы
- Ардуина и кнопки. На уровне библиотеки, нажатия, события, зажатия, мультиклики и т.д.
- Ардуина и светодиоды, но не просто blink, а асинхронная работа светиков.
- И отпуск, нужно пожарить попу на морях.
А в сентябре снова в бой, сектора, BSP деревья, следующий шаг в псевдо 3D.
Так же мне мешает мысль и о других темах роликов:
- Продолжение rayCast
- Шум перлина
- Процедурная генерация
- Подключение TFT к Ардуино
- Графика ESP на TFT
- Воксельный движок
- Псевдо 3D поверхность
- Ну или накидайте своих вариантов, потом запущу голосование...
🗯 [ Скачать прошивку тут ]
p.s. 🧑💻 "А я сажусь за ролик про кнопки..."
[ ⏮️ ][ ⬆️ ][ ⏭️ ]
[ VK-видео ][ YouTube ][ RuTube ]
🏠 [ Домой ] 🛠 [ Проекты ][ 💬 чат ]
👍 "Голосование - итоги..."
Вот и закончилось голосование, теперь видны итоги и план действий.
💻 Большенству интересна тема графики на ESP32, значит туда и сделаю упор. Но с одним нюансом, чтобы рассказать про графику и как я её делал, всё таки эту самую графику нужно на чём-то показывать. То есть мне придётся поменять местами две темы. Хоть подключение к TFT к ESP и на втором месте, но логически сначала нужно подключить дисплей, а потом рисовать на нём.
Логическим продолжением после этого будет Воксельная графика. Псевдо 3D и процедурка идут вровень, но процедурку возьму первой, чтобы разбавить поверхности другой темой.
Ну и в остатке остаётся продолжение RayCasting и шум Перлина.
Вроде бы и определились, но ость ещё одно но: для воксельной графики уже нужны углы, корни и работа с uint16 как с дробным числом, эта тема будет после ESP графики.
По этому план такой:
- Кнопочки ( почти готово )
- Подключение TFT к Ардуино
- Графика ESP на TFT
- Бинарное представление углов, дробей, быстрый корень
- Воксельный движок
- Процедурная генерация
- Лампочки
- Псевдо 3D поверхность
- Продолжение rayCast
- Шум перлина
p.s. 🧑💻 "Заканчиваю ролик про кнопки..."
[ VK-видео ][ YouTube ][ RuTube ]
🏠 [ Домой ] 🛠 [ Проекты ][ 💬 чат ]
😎 "Минус пунктик..."
Первый ролик из серии "Arduino - Next level", типа обучалок Ардуине чуть более чем Вайб-кодер, готов.
Получилось немного скомнано, но и времени было в обрез. Главное эту мысль выкинул из головы.
🤔 Или освободил место для новой?...
🤓 В общем ролик тут:
🔥 [ YouTube ]
❤️ [ VK video ]
p.s. 🏖 "Всё, отпуск, моря, релакс..."
[ VK-видео ][ YouTube ][ RuTube ]
🏠 [ Домой ] 🛠 [ Проекты ][ 💬 чат ]
💦 "MetaBalls"
В общем моря закончились, начинаются трудовые будни. И сразу с корабля на бал, а точнее с отпуска в командировку. Так что, интересные занятия откладываются до октября.
Но, по мелочи, конечно же что-то будет.
💚Например технология меташаров, слияния как капли жидкости
🔥 Теперь можно и Лава-Лампу нормальную замутить...
🤓 И этот шортс тут:
🔥 [ YouTube ]
❤️ [ VK video ]
p.s. 💻 "Всё забыл пока в море купался..."
[ VK-видео ][ YouTube ][ RuTube ]
🏠 [ Домой ] 🛠 [ Проекты ][ 💬 чат ]
🟥 "г. Орёл спасибо за гостеприимство, но мне пора..."
Вот и закончилась командировка в город герой Орёл.
Пора возвращаться домой, к семье, работе и немного своим хотелкам. А ведь там ещё целый список по видосам лежит, уж запылился наверное, ну ничего, отпуск закончился, на учёбу съездил пора и за работу...
p.s. 🍂 "Вот и лето прошло..."
[ VK-видео ][ YouTube ][ RuTube ]
🏠 [ Домой ] 🛠 [ Проекты ][ 💬 чат ]
🛠 "Рукопоп"
Неожиданно и приятно, попасть в поле зрения одному из своих любимых блогеров. Тем более он начинает тему микроконтроллеров на базе СТМ32.
Пусть мне сейчас лень заниматься на столько профессиональным камнем, но вспомнить молодость и разнообразить кругозор очень даже стоит.
🎞 [ YouTube ]
📱 [ TG ]
p.s. 🪖 "Жду с нетерпением видоса..."
[ VK-видео ][ YouTube ][ RuTube ][ MAX ]
🏠 [ Домой ] 🛠 [ Проекты ][ 💬 чат ]