Могу ли я в Unity изменить во время выполнения сетку ландшафта, созданную с помощью инструментов редактирования ландшафта, чтобы я мог "выкопать" яму?
Я новичок в Unity и хотел бы иметь возможность подражать идее `` вырыть '' яму в `` земле '' лопатой во время выполнения и слегка опустить ландшафт немного впереди моей камеры, а затем переместить эту выкопанную `` землю 'в кучу где-нибудь рядом с дырой.
Я создал ландшафт с помощью инструментов предварительного просмотра ландшафта и теперь хочу изменить его во время выполнения, как вы видите в этой части этого видео: https://youtu.be/l_2uGpjBMl4?t=2970
Я хочу иметь возможность немного "покопаться" в моем окружении, как лопата, проделывающая дыру в земле, и в этом состоянии я смогу сохраниться.
Затем я хочу иметь возможность переместить объем "копания", то есть "землю", в другое место на местности - буквально представьте себе, что происходит, когда вы копаете яму.
Если я хочу следить за видео этого парня, он генерирует свой ландшафт, и я не уверен, как применить его логику, потому что я, скорее всего, захочу снять raycast со своей камеры и там, где он пересекается с миром, а затем изменить "сетку" нарисованного мной ландшафта, а затем добавить "кучу" земли где-нибудь еще. Я не уверен насчет того, чтобы просто складывать груды земли, просто изменяя высоту местности, потому что должен быть объем, связанный с `` землей '', которую вы выкопали, так что это скорее объект, чем местность, если вы понимаю, что я имею в виду
Я понимаю, что это что-то вроде мозгового тупика, но я ищу направление и провел исследования, это вопросы, на которые я хотел бы получить ответ, я хочу, чтобы это было звуковой доской, если моя логика мышления находится на правильном пути, и если нет - могу ли я выбрать оптимальный курс для изучения некоторых методов достижения этой цели.
Большое спасибо
0 ответов
Вам нужно использовать Terrain.terrainData
который содержит GetHeights
и SetHeightsDelayLOD
методы. SetHeights
также доступен, но не так эффективен. Посмотрите в документации, как они работают!