Live data from Hacker News

Interpolation Tricks

sol.gfxile.net

11–18 of 18 posts

Re: Interpolation Tricks

#13
post #2

Imagine you are watching the ball, but instead of traveling along a line, it is tracing a circle- however you are viewing it from the one-dimensional angle. Is that smoothstep, or would that be a different equation? They look similar to my naked eye.

The reason smoothstep looks similar to a sinusoid is because it is a polynomial approximation. I remember Dan Perlin discussing it in his (book|paper|website), but googling around doesn't seem to show anything that I remember. For Perlin Noise, a sinusoid was the highest-quality interpolation because it was continuous everywhere, even at the endpoints. Smooth-step is discontinuous at the endpoints, but it is close en…

Minor correction: Ken Perlin - http://mrl.nyu.edu/~perlin/

Re: Interpolation Tricks

#14
post #10

Earlier quoted context omitted.

I'd like to add that the reason we use windowed sinc is because we're lazy and it works well. There are techniques for making better FIR filters, e.g., Parks-McClellan/Remez for small filters or other techniques for larger ones. Also, there is no inherent difference between upsampling and downsampling. Lowering the pitch of an audio sample is no harder than raising it, and in both cases you make the same tradeoff whe…

I'm referring more specifically to mipmaps. They let you cheat when downsampling.

Well, yes and no. Mipmaps just make the process faster for a given level of quality by making the resampling ratios closer to 1.0. The closer the ratio gets to 1.0, the fewer filter coefficients you need.

The same thing is done in audio. If you want to upsample 64x, you can do it faster by upsampling 8x twice. Since the signal given to the second upsampler is already bandlimited, the filter can have a much longer falloff and use fewer coefficients.

This is exactly why you want to use a nice filter create the mipmapms but it's okay to use a simple bilinear filter for the final render.

(So what I'm saying is that you can also use mipmaps for upsampling, but nobody likes the storage requirements.)

Re: Interpolation Tricks

#15
post #2

Imagine you are watching the ball, but instead of traveling along a line, it is tracing a circle- however you are viewing it from the one-dimensional angle. Is that smoothstep, or would that be a different equation? They look similar to my naked eye.

The reason smoothstep looks similar to a sinusoid is because it is a polynomial approximation. I remember Dan Perlin discussing it in his (book|paper|website), but googling around doesn't seem to show anything that I remember. For Perlin Noise, a sinusoid was the highest-quality interpolation because it was continuous everywhere, even at the endpoints. Smooth-step is discontinuous at the endpoints, but it is close en…

Do you mean "smooth everywhere"? The Weierstrauss function is continuous everywhere, but you wouldn't use it for interpolation:

http://en.wikipedia.org/wiki/Weierstrass_function

Re: Interpolation Tricks

#16

Earlier quoted context omitted.

The reason smoothstep looks similar to a sinusoid is because it is a polynomial approximation. I remember Dan Perlin discussing it in his (book|paper|website), but googling around doesn't seem to show anything that I remember. For Perlin Noise, a sinusoid was the highest-quality interpolation because it was continuous everywhere, even at the endpoints. Smooth-step is discontinuous at the endpoints, but it is close en…

Minor correction: Ken Perlin - http://mrl.nyu.edu/~perlin/

Thank you!

Re: Interpolation Tricks

#17

Earlier quoted context omitted.

The reason smoothstep looks similar to a sinusoid is because it is a polynomial approximation. I remember Dan Perlin discussing it in his (book|paper|website), but googling around doesn't seem to show anything that I remember. For Perlin Noise, a sinusoid was the highest-quality interpolation because it was continuous everywhere, even at the endpoints. Smooth-step is discontinuous at the endpoints, but it is close en…

Do you mean "smooth everywhere"? The Weierstrauss function is continuous everywhere, but you wouldn't use it for interpolation: http://en.wikipedia.org/wiki/Weierstrass_function

Yes, thank you. After reading a bit more, smoothness is what I'm looking for. One of the _derivatives_ of the smoothstep is discontinuous at the endpoint.

Re: Interpolation Tricks

#18
post #2

Imagine you are watching the ball, but instead of traveling along a line, it is tracing a circle- however you are viewing it from the one-dimensional angle. Is that smoothstep, or would that be a different equation? They look similar to my naked eye.

The reason smoothstep looks similar to a sinusoid is because it is a polynomial approximation. I remember Dan Perlin discussing it in his (book|paper|website), but googling around doesn't seem to show anything that I remember. For Perlin Noise, a sinusoid was the highest-quality interpolation because it was continuous everywhere, even at the endpoints. Smooth-step is discontinuous at the endpoints, but it is close en…

I wouldn't call smoothstep an approximation to a sinusoid - both are sigmoidal, but that's about it. This smoothstep in particular is just a natural cubic spline interpolator, arguably the simplest sigmoidal interpolating function.
Post reply on HN