• G#

NavMesh.SetAreaCost

Sarankan perubahan

Success!

Terima kasih untuk membantu kami meningkatkan kualitas Dokumentasi Unity. Meskipun kami tidak dapat menerima semua pengajuan, kami membaca setiap perubahan yang disarankan dari pengguna kami dan akan melakukan pembaruan di mana berlaku.

Close

Penjelasan gagal

Untuk beberapa alasan perubahan yang disarankan Anda tidak dapat diajukan. Silahkan <a>try lagi</a> dalam beberapa menit. Dan terima kasih untuk mengambil waktu untuk membantu kami meningkatkan kualitas Dokumentasi Unity.

Close

Cancel

Declaration

publik static void SetAreaCost(int areaIndex, float cost);

Parameters

areaIndex Indeks daerah untuk diatur.
cost Biaya baru.

Description

Menetapkan biaya untuk menemukan jalur atas geometri tipe daerah di semua agen.

Ini akan menggantikan biaya area kustom pada semua agen, dan menetapkan biaya default untuk agen baru yang diciptakan setelah memanggil fungsi. Biaya harus lebih besar dari 1,0.

Anda dapat menggunakan NavMesh.GetAreaDariName untuk menemukan indeks daerah berdasarkan nama tipe daerah NavMesh.

// ToggleWaterCost
using UnityEngine;
using UnityEngine.AI;

public class ToggleWaterCost : MonoBehaviour { void Update() { if (Input.anyKeyDown) { // Make the water area 10x more costly to traverse. NavMesh.SetAreaCost(NavMesh.GetAreaFromName("water"), 10.0f); } } }

Lihat Juga: Area dan Biaya untuk mempelajari cara menggunakan berbagai jenis Area.