Je travaille sur le bruit perlin de génération 3d. La bibliothèque C # Math semble exagérée pour ce dont j'ai besoin car la plupart de ses fonctions utilisent la double percision. J'utilise Math.Sin () à plusieurs endroits pour générer du bruit. Quelqu'un connaît-il une fonction sinus plus rapide?
xna
c#
mathematics
user2709
la source
la source
Quelle est la plage de valeurs d'entrée pour votre fonction sin () ? Pour ce que vous l'utilisez, il semble qu'ils soient limités, ce qui signifie que vous pouvez pré-calculer les valeurs . Par exemple, si vous arrondissez les valeurs d'entrée au degré le plus proche, vous n'avez que 360 valeurs possibles - il suffit de les pré-calculer et de les stocker dans une table.
Si vous avez besoin d'un peu plus de valeurs, disons à une décimale près, vous pouvez interpoler à partir du tableau - je ne connais pas le bruit perlin , mais le mot "bruit" semble indiquer qu'il ne nécessite pas une grande précision. :) (Vous pouvez également créer un tableau plus grand, 3600 entrées ne sont pas beaucoup d'espace).
la source
Vous voudrez peut-être lire ceci aussi, il a des approximations sinus et cosinus rapides
la source