Mức: nâng cao. Những trang này không cần cho một game chạy được. Đọc khi game đã có và bạn muốn đẹp hơn, nhanh hơn, nhiều nội dung hơn, hoặc muốn hiểu engine bên trong. Mỗi trang độc lập, đọc theo nhu cầu.
Phạm vi: Vẽ ảnh và shader, Shader nâng cao: ảnh phụ, mảng uniform, ánh sáng và Hậu kỳ (post-processing) là 2D. Đồ họa 3D là 3D, trang riêng cho toàn bộ njin_3d.h (camera phối cảnh, hình khối, SDF, model, ánh sáng có bóng đổ, instancing). Sinh bản đồ tự động và Công cụ debug: njin_inspector dùng chung cho cả hai.
Đồ họa
| Trang | Bạn được gì |
| Vẽ ảnh và shader | Texture, atlas, shader, instancing (hàng nghìn hình bằng một lệnh vẽ), sửa ảnh và shader khi game đang chạy |
| Đồ họa 3D | Camera phối cảnh, hình SDF mịn, model glTF, ánh sáng có bóng đổ, hạt 3D, instancing, chọn vật bằng tia, gizmo |
| Thế giới ngoài trời 3D | Địa hình có va chạm, cỏ, đá và cây rải theo luật, hồ và biển có sóng, vật nổi, bầu trời theo giờ, mưa, tuyết, sương |
| Hiệu ứng màn hình 3D | Góc tường tối đi (SSAO), sàn bóng phản chiếu, vết đạn và sơn dán lên mọi bề mặt (decal), mờ chuyển động, tia nắng, lóa ống kính |
| Video | Phát video có tiếng: cutscene toàn màn hình, màn hình TV trong thế giới 3D |
| Chỉ vẽ phần camera thấy: instance theo ô | Chỉ vẽ phần camera thấy của hàng chục nghìn instance, hình mịn ở gần và hình ít mặt ở xa |
| Ánh sáng 2D (PBR) | Ánh sáng 2D dựa trên vật lý (PBR): đèn điểm, nón, hướng; bóng đổ mềm từ vật chắn hình bất kỳ; normal map, vật liệu MRA, phát sáng, tonemap; bóng từng pixel theo bài của mattdesl |
| Shader nâng cao: ảnh phụ, mảng uniform, ánh sáng | Shader đọc thêm ảnh (bảng màu, nhiễu), nhận mảng uniform (đèn), chạy trên cả khung hình, nhiều lượt vẽ nối nhau |
| Hậu kỳ (post-processing) | Hiệu ứng toàn màn hình: bloom, CRT, vignette, blur |
Muốn tự viết shader thì học trước ba bài shader trong Kiến thức nền: học trước khi làm game (bài 10 đến 12).
Di chuyển
| Trang | Bạn được gì |
| Tìm đường 3D và đám đông | Quái tự tìm đường quanh tường, lên dốc, qua khe trong màn 3D, đi thành đám đông không đâm vào nhau |
| Đường cong (spline) | Camera chạy trên ray, bục di chuyển, lối tuần tra dọc đường cong mượt, đi đều theo khoảng cách |
Nội dung
| Trang | Bạn được gì |
| Sinh bản đồ tự động | Tự sinh bản đồ bằng nhiễu, luật, bo góc và Wave Function Collapse |
Script
| Trang | Bạn được gì |
| Script Lua | Viết luật chơi và hành vi của entity bằng Lua, sửa file khi game đang chạy, gọi hàm qua lại giữa C++ và Lua |
Công cụ
Muốn hiểu engine bên trong thì xem Kiến trúc bên trong ở Phụ lục.