Saya mencoba membuat bola quad berdasarkan artikel , yang menunjukkan hasil seperti ini:
Saya dapat membuat kubus dengan benar:
Tetapi ketika saya mengonversi semua poin sesuai dengan rumus ini (dari halaman yang ditautkan di atas):
x = x * sqrtf(1.0 - (y*y/2.0) - (z*z/2.0) + (y*y*z*z/3.0));
y = y * sqrtf(1.0 - (z*z/2.0) - (x*x/2.0) + (z*z*x*x/3.0));
z = z * sqrtf(1.0 - (x*x/2.0) - (y*y/2.0) + (x*x*y*y/3.0));
Sphere saya terlihat seperti ini:
Seperti yang Anda lihat, tepi kubus masih mencuat terlalu jauh. Kubus berkisar dari -1
hingga +1
semua sumbu, seperti kata artikel itu.
ada yang tahu apa yang salah?
1
Apakah implementasi Anda mengandung masalah "x = x ..." atau hanya ada di sini?
—
snake5
Alat bantu visual yang fantastis. Terima kasih sudah memasukkan itu.
—
doppelgreener
Untuk menjawab pertanyaan dalam judul, Anda bisa menormalkan simpul kubus untuk membuatnya menjadi bola. Distribusi simpul mungkin akan berbeda dari metode tertaut.
—
msell