Kapan kita harus menggunakan masing-masing?
jadi dalam hal game hampir semuanya dirender. gui seperti campuran render dan draw untuk saat ini
Rendering atau sintesis gambar adalah proses otomatis menghasilkan gambar fotorealistik atau non-fotorealistik dari model 2D atau 3D (atau model yang secara kolektif bisa disebut file adegan) melalui program komputer.
Gambarlah untuk hal-hal sederhana (persegi panjang, lingkaran, tombol; teks sedikit di tepi karena tidak sepele).
Render untuk hal/model kompleks (item, blok, entitas).
Tapi kemudian pertanyaannya adalah apa yang kita anggap "sederhana"? Apakah langit dirender atau digambar? Apakah PathfindingDebugRenderer menggambar atau merender jalur? Apakah sebuah kotak digambar atau dirender (saat ini kami memiliki drawBox
, yang memanggil renderQuad
!)? Apakah teks dirender atau digambar?
Saya akan mengatakan untuk semua yang Anda sebutkan itu harus render
(terlepas dari PathfindingDebugRenderer
karena saya tidak tahu apa itu).
Saya menggunakan render
dan draw
secara bergantian sebagai sinonim. Biasanya render
adalah untuk proses yang lebih terlibat sementara draw adalah tepi tumpul.
Di tempat-tempat saya telah menggunakan render
untuk metode yang menghadap publik dan draw
untuk metode util internal/pendukung/penggunaan umum juga.
Mungkin render
untuk barang dunia & 3D dan draw
untuk barang layar & 2D akan baik-baik saja?
Setuju, gambar untuk 2d dan render untuk 3d. misalnya drawTexturedRect (mojang menyebutnya blit, operasi 2d, sebelumnya) adalah 2d, dan renderEntity adalah 3d.
IMO draw adalah hal dasar dan rendering adalah saat Anda menyatukan banyak draw. Misalnya, Anda menggambar garis, atau menggambar tekstur, atau menggambar teks. Tapi Anda membuat model.
Bagaimana dengan sepotong teks? haruskah itu menggambar atau membuat string?
Imo fitur yang membedakan untuk 2d dan 3d adalah transformasi matriks. Jika tidak ada transformasi yang terlibat dalam satu langkah, saya akan menyebut langkah itu dan komponennya "draw"; jika ada transformasi, saya akan menyebutnya "render".
Misalnya, jika kita menggambar string yang merupakan nama entitas, kita menyebutnya menggambar nama. Tetapi jika kita pergi ke tingkat atas dan melihat bagaimana nama tersebut dipengaruhi oleh transformasi entitas atau diblokir, kita menyebutnya merender pelat nama.
saya setuju