I know OpenGL and DirectX have built-in functionality to create and utilize Mip-Maps for texturing. Does anyone have any information on how Mip-Maps determine which level to utilize? So as the image gets further away from the camera in the world it switches to a smaller version of the texture. What algorithm does it use to know when to switch up or down in size.
I have searched Google and Google scholar for information but with no luck. I found a paper titled "MIP-Map Level Selection for Texture Mapping" although it seems to spend most of the time discussing minification and filtering methods not selection of texture. I may have all the information I need right in front of me but lack the knowledge to understand and implement.
If someone could please point me in the right direction. Thank you.