2D Amortized Noise Performance Evaluator
A Program to Evaluate the Performance of Amortized Noise
|
This project measures the performance of amortized Perlin noise and old-school Perlin noise. It will prompt the user via stdin/stdout for the number of repeats, the smallest and largest texture sizes (which must be a power of 2), and the size delta. The input values are checked for errors. If they pass, the app will measure the average CPU times for generating textures of size s, s+d, s+2d,..., S, where s is the smallest size, S is the largest size, and d is the size delta.
Experiment 1: Time finite (classical, old school) Perlin noise against finite amortized noise and infinite amortized noise. The results are reported to the console and saved in TimeDataAmortized.txt as a tab-separated text file for easy copy-and-paste into Microsoft(R) Excel(TM). The sizes are listed in reverse order, which is convenient for me but inconvenient for you unless you are familiar with the Sort button on the Data pane in Excel(TM).
Experiment 2: Time finite (classical, old school) Perlin noise against infinite Perlin noise and infinite smooth Perlin noise. Be very careful not to set the number of repeats too high for this experiment because infinite and infinite smooth Perlin noise are both very, very slow. This is, in fact, the point of the paper (infinite amortized noise is fast when compared to this). The results are reported to the console and saved in TimeDataPerlin.txt as a tab-separated text file for easy copy-and-paste into Microsoft(R) Excel(TM). The sizes are once again listed in reverse order (see above).
Increasing the number of repeats will increase the quality of the data but also increase the running time. The number of repeats specified by the user is used for the largest texture size only. Experiments on smaller texture sizes automatically scale the number of repeats so that the run-time is about the same for all texture sizes. This maximizes data quality without, hopefully, annoying you too much. The actual number of repeats is reported in the text files mentioned above.
For more details on amortized noise, see Ian Parberry, "Amortized Noise", Journal of Computer Graphics Techniques, Vol. ?, No. ?, pp. ?, To Appear.