|
399 / 308 / 104
Регистрация: 07.05.2017
Сообщений: 2,201
|
|
Механическая головоломка17.12.2025, 19:18. Показов 693. Ответов 6
Други, к примеру есть три кольца. внешнее и пара внутренних. каждое по отдельности будет вращаться на определенный угол.
На каждом из них будет какой-то объект - символ. когда они сойдутся - задача решена. каким образом опытный программист (я себя таковым пока не считаю. только учусь ) сохранит решенный вариант и будет сравнивать с текущим после каждого поворота колец? я конечно могу костыльнуть с помощью триггеров или рейкаста, но интересно как можно решить это "изящно". например используя состояния (states) головоломки, или что - то еще по круче...Добавлено через 1 минуту примеры кода приветствуются ну прям о-о-о-чень! )))
0
|
|
| 17.12.2025, 19:18 | |
|
Ответы с готовыми решениями:
6
Полная механическая энергия спутника стационарная линейная механическая система с одной степенью свободы |
| 17.12.2025, 21:00 | |||||||||||||||||||||
Сообщение было отмечено Gammister как решение
Решение
Gammister,
пара уточнений: дверь как в скайриме? если на всех кругах углы между символами одинаковы, и символы всегда в одном порядке. в крипте вращаете круги при помощи метода встроенного в юнити public static Quaternion RotateTowards(Quaternion from, Quaternion to, float maxDegreesDelta); тыкая в круги мышкой OnMouseDown или RaicastHit Каждое кольцо можно представить как объект с ключевыми свойствами: Текущий угол поворота
"Решенный" вариант — это комбинация углов поворота колец, при которой символы совпадают. Можно сохранить эту комбинацию в отдельной структуре, например:
Хранить текущие углы колец в массиве. Сравнивать их с углами из SolvedState.
1
|
|||||||||||||||||||||
|
399 / 308 / 104
Регистрация: 07.05.2017
Сообщений: 2,201
|
||
| 19.12.2025, 16:16 [ТС] | ||
![]() а я вот еще обмысливаю вариант с триггером. вход в триггер прибавляет int на 1, а выход отнимает. и если все три объекта зашли в этот вытянутый (что бы все три объекта влазили в него, если совпадение нужно по одной линии) триггер, то проверяем поле на тройку и вуаля! механику поворота опускаем. и триггеры можно ставить в замысловатые сочетания, меняя задачу головоломок в разных вариациях. без массивов и углов поворота. как думаете? такой вариант похоже проще, и позволяем модифицировать головоломки без вмешательство в код. но надежен ли?..
0
|
||
| 28.12.2025, 15:07 | ||
|
Мой подход в том виде, в котором я его реализовал, будет работать, даже если на сцене всё сломается и останется только пустышка с её трансформом и моим скриптом. ваш подход требует миллиарда проверок, подгона с точностью до пикселя (в некоторых моментах) и кучи тестов, после каждого изменения положения объекта рядом и т.д. PS: я заметил, что вы часто используете аналоговый подход в решениях задачи. То есть пытаетесь перенести законы реального мира в виртуальный. Это не правильно. Вам надо оцифровать решение!!! Лишь эмитировать состояния, а не реализовывать их. Сравнить углы, пусть и в массиве, гораздо легче, чем реализовывать куче столкновений, коллайдеров и триггеров, напрягая железо физическим движком. И игрока кривой физикой. Такая разница подходов затрудняет ваше понимание процессов и ломает (в некоторых местах) погружение в игру.
0
|
||
|
399 / 308 / 104
Регистрация: 07.05.2017
Сообщений: 2,201
|
|
| 29.12.2025, 18:36 [ТС] | |
|
в принципе в большинстве согласен. спасибо !
Добавлено через 55 минут вопрос по общей структуре кода и архитектуре, если таких головоломок будет много и не обязательно на поворотах, а например на смещениях по типу пятнашек (тему паттернов и проектирования я только изучаю и пытаюсь понять. все таки в прошлом я совсем не программист). стоит ли внедрять такие штуки как интерфейсы? что бы реализовать метод Move в элементах таких задачек не задумываясь, что там будет происходить? поворот или перемещение... то есть, если задуматься об общем подходе, то какой паттерн тут уместен? или комбинация подходов. и уместна ли тут архитектура, как таковая вообще? ![]() заранее благодарю! Добавлено через 1 час 32 минуты механики игры, это ведь низкоуровневый слой? с какого момента нужно увязывать в некую структуру или архитектуру?
0
|
|
| 29.12.2025, 22:23 | ||
|
Например я часто комбинирую ООП и Композицию, принципы SOLID, разные паттерны. Тут главное не следовать только паттернам, это может испортить проект. подробнее это рассматривает блогер Яковлев Илья Да и в принципе погуглите "Архитектура кода". Это нереально огромная тема. Тут всего не раскажешь.
1
|
||
|
399 / 308 / 104
Регистрация: 07.05.2017
Сообщений: 2,201
|
||
| 30.12.2025, 13:16 [ТС] | ||
|
что такое слои (верхние, средние, нижние и т.д)? и где находятся их "границы"? как их разделять? например... можно ли считать скрипты, не наследующие монобех и не участвующие непосредственно в механиках отдельным слоем?
0
|
||
| 30.12.2025, 13:16 | |
|
Помогаю со студенческими работами здесь
7
Механическая поломка принтера - мигают все индикаторы и горит индикатор отсутствия бумаги
Механическая блокировка usb flash от записи POV - Persistence Of Vision - механическая развёртка Механическая модель молекулы, состоящей из грузиков и пружин Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Изучаю kubernetes
lagorue 13.01.2026
А пригодятся-ли мне знания kubernetes в России?
|
Сукцессия микоризы: основная теория в виде двух уравнений.
anaschu 11.01.2026
https:/ / rutube. ru/ video/ 7a537f578d808e67a3c6fd818a44a5c4/
|
WordPad для Windows 11
Jel 10.01.2026
WordPad для Windows 11
— это приложение, которое восстанавливает классический текстовый редактор WordPad в операционной системе Windows 11. После того как Microsoft исключила WordPad из. . .
|
Classic Notepad for Windows 11
Jel 10.01.2026
Old Classic Notepad for Windows 11
Приложение для Windows 11, позволяющее пользователям вернуть классическую версию текстового редактора «Блокнот» из Windows 10. Программа предоставляет более. . .
|
|
Почему дизайн решает?
Neotwalker 09.01.2026
В современном мире, где конкуренция за внимание потребителя достигла пика, дизайн становится мощным инструментом для успеха бренда. Это не просто красивый внешний вид продукта или сайта — это. . .
|
Модель микоризы: классовый агентный подход 3
anaschu 06.01.2026
aa0a7f55b50dd51c5ec569d2d10c54f6/
O1rJuneU_ls
https:/ / vkvideo. ru/ video-115721503_456239114
|
Owen Logic: О недопустимости использования связки «аналоговый ПИД» + RegKZR
ФедосеевПавел 06.01.2026
Owen Logic: О недопустимости использования связки «аналоговый ПИД» + RegKZR
ВВЕДЕНИЕ
Введу сокращения:
аналоговый ПИД — ПИД регулятор с управляющим выходом в виде числа в диапазоне от 0% до. . .
|
Модель микоризы: классовый агентный подход 2
anaschu 06.01.2026
репозиторий https:/ / github. com/ shumilovas/ fungi
ветка по-частям.
коммит Create переделка под биомассу. txt
вход sc, но sm считается внутри мицелия. кстати, обьем тоже должен там считаться. . . .
|