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::water3d_desc Struct Tham chiếu

Cách dựng một mặt nước (water3d_create()). Tiếp...

#include <njin_world3d.h>

Các thuộc tính Public

f32 level = 0.0f
 Độ cao mặt nước yên, mét.
vec2 center {0.0f, 0.0f}
 Tâm hồ trên mặt xz.
vec2 size {0.0f, 0.0f}
 Kích thước hồ theo x và z, mét; {0, 0} là biển.
water3d_wave waves [water3d_wave_max]
 Các con sóng. Mặc định ba sóng nhẹ cho mặt hồ có gió.
i32 wave_count = 3
 Số sóng dùng, 0..njin::water3d_wave_max.
rgba shallow_color {0.10f, 0.42f, 0.45f, 1.0f}
 Màu chỗ nông.
rgba deep_color {0.02f, 0.09f, 0.16f, 1.0f}
 Màu chỗ sâu.
f32 depth_fade = 6.0f
 Sâu bấy nhiêu mét thì gần như là deep_color.
f32 clarity = 1.5f
 Nông hơn bấy nhiêu mét thì nhìn xuyên thấy đáy.
rgba foam_color {0.95f, 0.97f, 1.0f, 1.0f}
 Màu bọt.
f32 foam_width = 0.5f
 Bọt ở bờ trong độ sâu này, mét. 0 là không có.
f32 crest_foam = 0.35f
 Bọt trên đỉnh sóng cao, 0..1.
f32 ripples = 0.35f
 Gợn lăn tăn nhỏ trên mặt sóng, 0..1.
f32 specular = 1.0f
 Độ mạnh của nắng lấp lánh.
f32 shininess = 300.0f
 Độ nhọn của nắng lấp lánh.
terrain3d_handle terrain {}
 Địa hình làm đáy và bờ.
f32 detail = 1.0f
 Độ dày lưới, nhân với mặc định. Lớn thì sóng mịn hơn ở xa, tốn hơn.

Mô tả chi tiết

Cách dựng một mặt nước (water3d_create()).

size khác 0 là một hồ hình chữ nhật tâm center. size bằng 0 là biển trải tới chân trời: lưới đi theo camera, dày ở gần và thưa ở xa.

Màu nước theo độ sâu (từ shallow_color tới deep_color), trong suốt chỗ nông, có bọt ở bờ và trên đỉnh sóng. Mặt nước phản chiếu bầu trời (của draw_sky3d() nếu có trong lần vẽ, không thì theo màu sương và ánh sáng nền), nắng lấp lánh và nhận bóng đổ. Độ sâu và bờ tính theo terrain: không có địa hình thì nước coi như sâu đều và không có bờ.

Thông tin về Member Data

◆ waves

water3d_wave njin::water3d_desc::waves[water3d_wave_max]
Giá trị khởi tạo:
{{{1.0f, 0.3f}, 9.0f, 0.18f, 1.0f},
{{0.6f, -0.8f}, 5.5f, 0.14f, 1.0f},
{{-0.4f, 1.0f}, 3.1f, 0.10f, 1.0f}}

Các con sóng. Mặc định ba sóng nhẹ cho mặt hồ có gió.