As you know, Notch is tinkering around with height limit but has recently received an email (check his blog) that said changing it would cause CPU and Disk I/O problems (Your fps would be zero and memory would be eaten up), this is my idea on how to solve said memory problems.
I will try to keep this short and to the point.
I suggest that, to cope with the memory issues, we allow the render distance to change the chunk amount that is loaded at a time. As many of you know, a "chunk" is a 16x16x128 block that generates at one time. With the height limit change (if there will be one), the chunks will probably be 16x16x256. This would effectively double the CPU usage of your computer as well as generating a lot of useless space. The height limit change is basically ONLY intended builders and more epic natural formations, but with that being the only 2 uses (huge mountains also being very rare), the chunks are generating ~45-50% of just air blocks. There are buggy mods that generate as 16x16x16 but as Notch's blog said:
The bug list is as long as my arm, and it doesn’t actually rescale any of the terrain-generation features, so you don’t get neat things like this: http://moogle-tech.com/bce/gorge.png
I digress, let me get back on topic. I suggest that the initial generations of chunks is in the 16x16x256 scale, BUT the render distance can change the chunks size. For example, "Far" would generate 16x16x256, "Normal" 16x16x128, "Short" 16x16x64, and "tiny" 16x16x32. The distance viewed would stay the same. I do not know how this would be coded or the difficulty of doing so, but that is my suggestion.
TL; DR: Render distance now affects the size of chunks to cope with memory problems of a 256 height limit. Chunks are initially generated in full scale to allow for amazing natural structures (See why smaller chunks would affect this in quote)
Render distance already encompasses height so unfortunately your fix is moot. The problem isn't in the GPU rather CPU. rendered or not the whole chunk has to be handled by the CPU to ensure proper management of light/gravity/redstone/mobs etc etc.
Im assuming the chunks are handled in a 2d array dividing the chunk into two separate chunks split by a height would make the array into a 3rd dimension, most likely leading to a rewrite of the core workings of the engine. Which you never do in beta.
Just because you cannot see about the render doesn't mean it isn't being generated. This fix keeps the distance viewed the same, but chunks you can see are completely changed in dimensions. They are initially generated as a whole, full, chunk.
I see what you are saying but i don't think it changes the difference. If you have a redstone contraption that starts 500 chunks away and continues to the chunk you are on (500 chunks away) it will still work.
Light on the other hand may be a problem, but i think that also doesn't make a difference. if the sun is a 15 degree angle, that changes all chunks to a mob-killing light, it doesn't need to touch the sky limit to light correctly. Also, the light isn't uniform throughout the chunk. 1 torch changes it.
I do think there is some sort of fatal problem with my idea or this would have already been implemented in some way or form. As it would save lots of CPU usage.
What I'm more getting at is that chunks are currently a 2d arrangement ( an X and a Z axis) if you start splitting the chunks by the y axis you are creating a 3d arrangements of chunks which will require a completely different way of handling them. A lot of system run off chunk management ( I would assume), changing how that works in beta is a complete suicidal move in terms of development.
I think now would be a good time to switch to 3d arrangement of chunks with him redoing the biome code generation and changing some terrian feature code. He is already messing with the code in creative we had insane build heights it was great. exploring giant mountains would also be cool
I will try to keep this short and to the point.
I suggest that, to cope with the memory issues, we allow the render distance to change the chunk amount that is loaded at a time. As many of you know, a "chunk" is a 16x16x128 block that generates at one time. With the height limit change (if there will be one), the chunks will probably be 16x16x256. This would effectively double the CPU usage of your computer as well as generating a lot of useless space. The height limit change is basically ONLY intended builders and more epic natural formations, but with that being the only 2 uses (huge mountains also being very rare), the chunks are generating ~45-50% of just air blocks. There are buggy mods that generate as 16x16x16 but as Notch's blog said:
I digress, let me get back on topic. I suggest that the initial generations of chunks is in the 16x16x256 scale, BUT the render distance can change the chunks size. For example, "Far" would generate 16x16x256, "Normal" 16x16x128, "Short" 16x16x64, and "tiny" 16x16x32. The distance viewed would stay the same. I do not know how this would be coded or the difficulty of doing so, but that is my suggestion.
TL; DR: Render distance now affects the size of chunks to cope with memory problems of a 256 height limit. Chunks are initially generated in full scale to allow for amazing natural structures (See why smaller chunks would affect this in quote)
Im assuming the chunks are handled in a 2d array dividing the chunk into two separate chunks split by a height would make the array into a 3rd dimension, most likely leading to a rewrite of the core workings of the engine. Which you never do in beta.
I see what you are saying but i don't think it changes the difference. If you have a redstone contraption that starts 500 chunks away and continues to the chunk you are on (500 chunks away) it will still work.
Light on the other hand may be a problem, but i think that also doesn't make a difference. if the sun is a 15 degree angle, that changes all chunks to a mob-killing light, it doesn't need to touch the sky limit to light correctly. Also, the light isn't uniform throughout the chunk. 1 torch changes it.
I do think there is some sort of fatal problem with my idea or this would have already been implemented in some way or form. As it would save lots of CPU usage.
-
View User Profile
-
View Posts
-
Send Message
Curse Premium