KREMEN Реклама
KREMEN Реклама

Нейросеть пишет мне аддоны для Blender. Это оказалось сложнее, чем я думал⁠⁠

Skyworker
Идет загрузка
Загрузка
07.02.2025
4416
6
Личные дневники

Подпишитесь на автора

Подпишитесь на автора, если вам нравятся его публикации. Тогда вы будете получать уведомления о его новых статьях.

Отписаться от уведомлений вы всегда сможете в профиле автора.

16

Не имея опыта создания модов, аддонов, и прочего софта, я решил попробовать написать скрипт по созданию шестерней в Blender.

Нейросеть пишет мне аддоны для Blender. Это оказалось сложнее, чем я думал⁠⁠Написал запрос. Через 30 секунд она выдала результат. Я скопировал его в Blender, запустил, и он выдал мне вот это:

Нейросеть пишет мне аддоны для Blender. Это оказалось сложнее, чем я думал⁠⁠После нескольких часов ковыряния с этим кодом я пообщался со своим давним другом, который настоящий программист, а не как я. И вот он подкинул идею. Он предположил что я столкнулся с такой проблемой как «Задача коммивояжёра».

Простыми словами:

Представьте, что вы продавец (коммивояжер), который должен посетить несколько городов. Ваша цель — найти самый короткий маршрут, чтобы:

Начать путь из одного города.

Посетить каждый город ровно один раз.

Вернуться в начальный город.

Важно: нужно выбрать такой маршрут, чтобы пройти минимальное расстояние.

Так вот эта задача оказалась нейросетке не по зубам. Кстати я использовал qwenlm и deepseek. Обе облажались. Считается что машина не может решить эту задачу за адекватное количество времени, потому что с ростом числа точек сложность растёт по экспоненте. Зато есть метод аппроксимации, по которому робот может дать приблизительный ответ, и это займёт гораздо меньше времени. Наверное сетка этим и воспользовалась. Если я не прав — поправьте в комментариях.

Тогда я стал действовать иначе:

Нашёл открытый код, скормил его нейронке, и дал указания работать по нему. Геометрия улучшилась. Но она рисовала две половинки зуба, и два радиуса. Для каждого зуба. Представляете какое месиво получалось? Естественно соединить это она уже не могла.

После я стал давать команды последовательно. Заставил почистить лишние вершины, соединить ближайшие, заполнить весь контур одним n-гоном, выполнить процедуру «экструд». И выполнить булеву операцию, для создания отверстия.

После нескольких десятков итераций, я получил рабочий код. Это всё ещё было быстрее, чем если бы я учился делать это руками.

Нейросеть пишет мне аддоны для Blender. Это оказалось сложнее, чем я думал⁠⁠Далее я добавил делительную окружность. Это та, по которой шестерни соприкасаются. Мы же тут про 3д печать. Верно?

И оформил пользовательский интерфейс:

Нейросеть пишет мне аддоны для Blender. Это оказалось сложнее, чем я думал⁠⁠Нейросеть пишет мне аддоны для Blender. Это оказалось сложнее, чем я думал⁠⁠Затем упаковал всё это в один файл, и сделал его аддоном. Для этого тоже нужно кое-что дописать в код.

Теперь аддон можно устанавливать, удалять, и включать, выключать.

Сетка получилась приемлемая. Хотя работать с ней и не очень удобно.

Нейросеть пишет мне аддоны для Blender. Это оказалось сложнее, чем я думал⁠⁠В общем, метод рабочий. Но нужно иметь представление о том, как этим всем пользоваться. Иначе результата не добиться.

Записал ролик, где демонстрирую её работу:

https://youtu.be/JMePXRoz9CE?si=SLSWaYdiOFEBzeM_

(Вставить его не получается, админ, помоги!)

Для тех, у кого Ютуб не работает — вот тут я продублировал в телеге

Если есть интересные идеи для аддонов, или методы реализации — пишите. Может получится реализовать что-то полезное.

Всем бобра!

Подпишитесь на автора

Подпишитесь на автора, если вам нравятся его публикации. Тогда вы будете получать уведомления о его новых статьях.

Отписаться от уведомлений вы всегда сможете в профиле автора.

16
Комментарии к статье