Saya sedang mengerjakan noise 3D perlin generasi. Pustaka C # Math sepertinya membutuhkan banyak tenaga untuk apa yang saya butuhkan karena sebagian besar fungsinya menggunakan double percision. Saya menggunakan Math.Sin () di beberapa tempat untuk menghasilkan suara. Adakah yang tahu fungsi sinus yang lebih cepat?
xna
c#
mathematics
pengguna2709
sumber
sumber
Berapa kisaran nilai input untuk fungsi sin () Anda ? Untuk apa Anda menggunakannya, sepertinya mereka mungkin terbatas, yang berarti Anda dapat melakukan pre-compute nilai-nilainya . Misalnya, jika Anda mengumpulkan nilai input ke tingkat terdekat, maka Anda hanya memiliki 360 nilai yang mungkin - cukup pra-hitung dan simpan dalam tabel.
Jika Anda membutuhkan nilai yang sedikit lebih banyak, katakan ke satu tempat desimal, Anda dapat menginterpolasi dari tabel - Saya tidak terbiasa dengan perlin noise , tetapi kata "noise" tampaknya mengindikasikan bahwa ia tidak memerlukan akurasi yang tinggi. :) (Anda juga bisa membuat tabel yang lebih besar, 3600 entri tidak banyak ruang).
sumber
Anda mungkin ingin membaca ini juga, punya perkiraan sinus dan kosinus yang cepat
sumber