NavigationRegion3D
Експериментальний: This class may be changed or removed in future versions.
Успадковує: Node3D < Node < Object
Для трафаретизації можна використовувати трафаретний 3D регіон, який NavigationAgent3D.
Опис
Ви можете використовувати для трафаретизації.
Два регіони можуть бути підключені один до одного, якщо вони діляться схожим краєм. Ви можете встановити мінімальну відстань між двома вершинами, необхідні для підключення двох країв за допомогою NavigationServer3D.map_set_connection_margin().
Примітка: Навігаційні сітки перекриття двох регіонів недостатньо для підключення двох регіонів. Вони повинні поділитися схожим краєм.
Вартість вступу в цей регіон з іншого регіону може бути контрольована з значенням enter_cost.
Примітка: Ця вартість не додається до вартості шляху, коли позиція старту вже всередині цієї області.
Вартість дорожніх дистанцій в цьому регіоні може бути контрольована з мультиплеєром travel_cost.
Примітка: Цей вузол кешує зміни до його властивостей, тому якщо ви вносите зміни в основну область RID в NavigationServer3D, вони не будуть відображені в цих властивостей вузла.
Посібники
Властивості
|
||
|
||
|
||
|
||
|
Методи
void |
bake_navigation_mesh(on_thread: bool = true) |
get_bounds() const |
|
get_navigation_layer_value(layer_number: int) const |
|
get_navigation_map() const |
|
get_region_rid() const |
|
get_rid() const |
|
is_baking() const |
|
void |
set_navigation_layer_value(layer_number: int, value: bool) |
void |
set_navigation_map(navigation_map: RID) |
Сигнали
bake_finished() 🔗
Визначається, коли виконана робота навігаційної сітки.
navigation_mesh_changed() 🔗
При зміні NavigationMesh.
Описи властивостей
Визначає, якщо ввімкнено NavigationRegion3D або вимкнено.
При навігаційній сітці даного регіону з інших регіонів навігаційній сітці додається значення enter_cost для визначення найкоротшого шляху.
У бітфілді визначено всі навігаційні шари регіону. Ці навігаційні шари можна перевірити при запитуванні шляху з NavigationServer3D.map_get_path().
NavigationMesh navigation_mesh 🔗
void set_navigation_mesh(value: NavigationMesh)
NavigationMesh get_navigation_mesh()
NavigationMesh ресурс для використання.
При навігаційній сітці трафаретні переїзди в цій області навігаційними сіточками, що пролітають дистанції, багатоплізовані з travel_cost для визначення найкоротшого шляху.
bool use_edge_connections = true 🔗
Якщо увімкнено навігаційну область буде використовувати крайові з'єднання з іншими навігаційними регіонами в безпосередній близькості від навігаційної карти краю.
Описи методів
void bake_navigation_mesh(on_thread: bool = true) 🔗
NavigationMesh. Якщо on_thread встановлюється до true (default), випікання проводиться на окремій нитки. Випічка на окремій нитки корисна тим, що навігація випікання не дешева операція. Коли він завершений, він автоматично встановлює новий NavigationMesh. Будь ласка, зверніть увагу, що випікання на окрему нитку може бути дуже повільним, якщо геометрія виходить з сіточок, як асинхронний доступ до кожної сітки передбачає важку синхронізацію. Крім того, будь ласка, зверніть увагу, що випікання на окрему нитку автоматично відключається на операційні системи, які не можуть використовувати нитки (наприклад, Web з вимкненими нитками).
Повертає вирівняну по осі обмежувальну рамку для трансформованої навігаційної сітки області.
bool get_navigation_layer_value(layer_number: int) const 🔗
Повертає, чи увімкнено вказаний шар бітової маски navigation_layers, залежно від значення layer_number від 1 до 32.
RID get_navigation_map() const 🔗
Повернення поточного навігаційної карти RID, що використовується цим регіоном.
Застаріло: Use get_rid() instead.
Повернення RID цієї області на NavigationServer3D.
Повернення RID цієї області на NavigationServer3D. Комбінований з NavigationServer3D.map_get_closest_point_owner() може бути використаний для ідентифікації NavigationRerion3D в найближчий до точки на з'єднану навігацію карти.
Повертаємо true, коли NavigationMesh випікається на фоновій нитки.
void set_navigation_layer_value(layer_number: int, value: bool) 🔗
На основі значення параметра value вмикає або вимикає вказаний шар у бітовій масці navigation_layers, маючи значення layer_number від 1 до 32.
void set_navigation_map(navigation_map: RID) 🔗
Встановлює RID навігаційної карти цього регіону. За замовчуванням область автоматично приєднується до карти навігації за замовчуванням World3D, щоб ця функція була обов'язковою для перенадання карти за замовчуванням.