njin
Engine 2D gọn nhẹ để tự tay làm game theo ý mình. Vibe coding cũng ổn luôn
Loading...
Searching...
No Matches
njin::nav3d_agent_desc Struct Tham chiếu

Một tác tử đi trên navmesh cùng các tác tử khác: tự tìm đường, tránh nhau, tách nhau ra khi đứng sát. Tiếp...

#include <njin_nav3d.h>

Các thuộc tính Public

vec3 position {}
 Chỗ đặt (được kéo về navmesh).
f32 radius = 0.4f
 Bán kính, mét.
f32 height = 1.8f
 Chiều cao, mét.
f32 max_speed = 3.5f
 Tốc độ tối đa, mét mỗi giây.
f32 max_accel = 10.0f
 Gia tốc tối đa, mét mỗi giây bình phương.
f32 separation = 2.0f
 Độ mạnh của việc tách khỏi tác tử bên cạnh. 0 là tắt.
bool avoid = true
 Né tác tử khác trên đường đi.
f32 arrive_distance = 0.0f
 Tới cách đích bấy nhiêu mét là đã đến (nav3d_agent_arrived()). 0 là bằng radius.
character3d_handle character {}
 Nhân vật (njin_physics3d.h) do tác tử này lái: mỗi frame vận tốc của tác tử thành vận tốc ngang của nhân vật (character3d_set_velocity(); engine tự cho nó rơi theo physics3d_gravity() khi không đứng trên sàn), và chỗ nhân vật thật sự đến (bị đẩy, va chạm) thành chỗ của tác tử.
i32 filter = 0
 Số bộ lọc (navmesh3d_set_filter()) tác tử tìm đường theo, 0..15.

Mô tả chi tiết

Một tác tử đi trên navmesh cùng các tác tử khác: tự tìm đường, tránh nhau, tách nhau ra khi đứng sát.

Thông tin về Member Data

◆ character

character3d_handle njin::nav3d_agent_desc::character {}

Nhân vật (njin_physics3d.h) do tác tử này lái: mỗi frame vận tốc của tác tử thành vận tốc ngang của nhân vật (character3d_set_velocity(); engine tự cho nó rơi theo physics3d_gravity() khi không đứng trên sàn), và chỗ nhân vật thật sự đến (bị đẩy, va chạm) thành chỗ của tác tử.

Game đừng đặt vận tốc cho nhân vật này nữa. Không hợp lệ là tác tử tự đi, không có va chạm vật lý.