Space Engineers: Программируем Экскаватор #2. Стрела на 5 роторах.
ฝัง
- เผยแพร่เมื่อ 13 ม.ค. 2025
- Продолжаем писать скрипт управления манипулятором на шарнирах. Сегодня нужно решение для 2х роторов перенести на стрелу на 5 роторах. 1 - горизонтальный в основании и 4 - в стреле.
Если все будет получаться, то сделаем ЧПУ-точилку с таким манипулятором. Для этого приделаем скрипт, написанный сегодня, к скрипту, читающему G-код и раздающему команды на движение инструмента.
==========================
Для желающих отправить сообщение на стрим и поддержать канал и его аффтора:
www.donational...
===========================
Моя группа в дискорде:
/ discord
Заходите, там много общения по поводу космических инженеров и программирования.
===========================
Конфигурация компьютера:
Материнская плата: ASUS PRIME Z390-P
Процессор: Intel Core i7-9700KF
Видеокарта: ASUS DUAL GeForce RTX 2060 SUPER 1470MHz PCI-E 3.0 8192MB 14000MHz
Оперативная память: 2х16 ГБ (т.е. 32 всего). Ballistix BLS2K16G4D32AEST
Твердотельный накопитель: 1Тб, Crucial CT1000P1SSD8
Жесткий диск: WD Blue WD20EZAZ, 2Тб, HDD, SATA III, 3.5"
===========================
Этот комп - подарок от подписчика.
Собран он тут: pulsepc.ru
Прикоооольно, это можно адаптировать как заправочный или любой другой транспортировочный рукав. Вот в падлу центровать огромную махину к базе или корабли рядом для соединения коннекторов. Рукавом метры довел спокойно)) и нервы сэкономил и время...))))
47:00 - про залитые водой модельки.
Просто в модельке иметь не только корпусные детали, но и кубики воздуха внутри корпуса. При отсутствии явного воздуха - заменить костылями из кубиков, проницаемых для юзера, но не для воды (но реакцию на пробоины так сложно реализовать).
52:18 - про майнинг.
"Высшим классом" хакерства было бы создать такие картинки и воксели, чтобы видяхе при их обсчёте пришлось бы косвенно решать какие-то криптозадачи. Результат снимать из всяких там насчитанных коллизий или с теней. ;)
Да ты пипец умник😂😂😂😂😂
33:10 "на C# надо постоянно перевыделять память"
Не надо.
Перевыделение - это если каждый раз создавать новые объекты для каждого расчёта. На самом же деле есть варианты:
1. Хранение произвольного количества записей данных в однократно выделяемом массиве(или списке), с адресацией по индексу в массиве (а не ссылкой на отдельный объект). При переменном количестве таких объектов - просто оставлять неиспользуемые элементы в массиве "на вырост".
2. struct(valuetype) вместо ref-классов, и работа по значению. Это и для хранения в массиве полезно (доступ не косвенный, убран лишний переход по ссылке), и при передаче параметров в вычисления и обратно нет аллокации новых объектов.
Если тут требуется наследование, то обойти ненаследуемость структур через интерфейсы, а тормознутость обращения через интерфейс -- через узкоспециализированные генерики с where.
Даже если надо состыковать с библиотечными ф-ями, не умеющими в valuetype, то тоже есть варианты костылей.
3. Можно вообще поменять алгоритм. Жидкость моделировать можно разными способами, втч и алгоритмами, не требующими переменной структуры данных. Например, разбить всё на фиксированную сетку объёмов, а группы объектов для локального расчёта взаимодействий не создавать явно, а получать играми с индексами.
Да в общем-то и динамическое пересоздание объектов и далее сборка мусора в C# не особо тяжелые, если объекты не сложные. В случае, когда выделяется большое количество объектов подряд и потом они все одновременно удаляются (что нередко при расчётах) -- целый блок памяти просто целиком освобождается, без дополнительных действий. Чтобы это хорошо работало, надо следить за порядком выделения объектов - избегать создания вразнобой локальных и долгоживущих объектов.
А когда будет исходный код?
Если бы мне это видео показали в школе я бы лучше учился)
Появилась внезапно идея сделать на основе такого манипулятора 3D принтер кораблей.
Доброго времени суток, а возможно ли сделать стрелу М-образной. Спасибо за понятные объяснения.
А можно все таки как то скрип отдельно от поделки? GIT там или что... А то DLC есть не все, и требуемого для этого чертежа как раз нет. Не могу собрать, не могу прочитать скрипт и программного блока 🤦♂
А как роторы такую тяжелую стрелу поднимают ? У меня с нагрузкой в 15 тонн с рычагом в 20 блоков ротор у основания башни не справляется и опускает стрелу даже в почти вертикальном положении этой секции (20ти блочной), поэтому ставлю противовес на рычаге, а как тут такая большущая стрела спокойно висит на одном роторе ?
накрутить надо ему силы на максимум
там есть крутилочки в панели управления блоком
@@RenescoRocketman спасибо большое, как-то не разглядел видимо, проверю. Спасибо большое что делаешь этот канал, он просто невероятный как и сама игра)
Если бы когда я учился в школе я знал бы об этом канале и посмотрел бы что там за проект в альфе такой про корабли из кубиков, наверное совсем другими бы вещами сейчас занимался )
@@RenescoRocketman Проверил, дело не совсем в том что роторы я не выкрутил, а в том что я вместо шарниров их использовал, у роторов мощность в 80 раз примерно меньше)
Народ подскажите почему у меня нету кнопки редактировать код в программируемом блоке? У стримера есть, у меня нету. Нужно отдельный сервак свой ставить или что я делаю не так?
Отбой. В настройках мира есть опция "внутриигровые скрипты".
Хочу такойже.
вот бы такое заварит. и управление как там (мышкой )
ASTRONEER
th-cam.com/video/iuBv18YQjjI/w-d-xo.html
Жалко, что пропустил(
ты посмотрел АСТРАНЕЙРО ?
th-cam.com/video/iuBv18YQjjI/w-d-xo.html