We all know that Minecraft's graphics are 16 bit, but that doesn't mean that the experience ought to be cheap or unpleasant. The current engine does not reduce the sampling rate for textures rendered at greater distances. What this means is if the player looks at distant blocks, a strange wavy pattern will become apparent. This is due to the engine trying to fit "ten pounds of stuff in a five pound bag". What the engine ought to do is adjust the sampling rate of textures based on its distance from the player.
What this would do is show distant blocks at lower levels of detail, all the way down to the end of the draw distance. It could be a simple formula:
Divide the draw distance into five parts. If the texture is in the part closest to the player, then render the texture using 16 bits. If the second part, then 8 bits, if the third then 4 bits, and so on and so forth.
This would clean up objects viewed at long distances and remove the need to manually set the sampling rate. It would also be quite cheap, requiring very little memory to perform. This would be a great addition to Minecraft; something simple that accomplishes a very large task.
This would be very useful. For slow computers this would mean less lag with regular/far render distance, and with faster computers this means extending the view distance hundreds of meters farther, quite possibly rendering several hundred chunks at once instead of just 81.
I'm not entirely sure that this would really do much for lag – the critical resource is memory and memory bandwidth.
Have you ever had lag and turned down the view distance, perhaps all the way to tiny, and that solved/helped the lag? It would be like that, except instead of making the world smaller it could make it larger.
We all know that Minecraft's graphics are 16 bit, but that doesn't mean that the experience ought to be cheap or unpleasant. The current engine does not reduce the sampling rate for textures rendered at greater distances. What this means is if the player looks at distant blocks, a strange wavy pattern will become apparent. This is due to the engine trying to fit "ten pounds of stuff in a five pound bag". What the engine ought to do is adjust the sampling rate of textures based on its distance from the player.
What this would do is show distant blocks at lower levels of detail, all the way down to the end of the draw distance. It could be a simple formula:
Divide the draw distance into five parts. If the texture is in the part closest to the player, then render the texture using 16 bits. If the second part, then 8 bits, if the third then 4 bits, and so on and so forth.
This would clean up objects viewed at long distances and remove the need to manually set the sampling rate. It would also be quite cheap, requiring very little memory to perform. This would be a great addition to Minecraft; something simple that accomplishes a very large task.
-Duxwing
If you need your mod showcased, my channel is the very best place: http://www.youtube.com/user/Pealanor?feature=mhee
Pipes
The Sun rises in the North!Now these points of data make a beautiful line...
I'm not entirely sure that this would really do much for lag – the critical resource is memory and memory bandwidth.
Have you ever had lag and turned down the view distance, perhaps all the way to tiny, and that solved/helped the lag? It would be like that, except instead of making the world smaller it could make it larger.
Pipes