Quote from drkwv
I thought it was z-axis, well anyway. It could be used to render objects in perspective (i mean they will change its view depending what angle you look on it) without creating objects itself, but using pregenerated textures instead (which by itself is different for each block, but i think can be slowly recalculated through time in background without spending too much resources). But the problem i doubt is that while POM can be greatly used to render objects below you, i don't know is there a trick to use it for rendering objects above (cause as for me they have significant differences). Also I don't know is there a way to include one POM texture as part of other texture without recalculating full blocks instead, which can speedup background rendering dramatically (if possible). I was never involved in java/graphics programming and can't answer on this questions by myself. But still trying to imagine how far rendering can be actually made in the best way.
Hey Drkwy... You've peaked my curiosity. Props for that!
Sooo.. I'm not positive that I'm understanding POM or simple parallax mapping properly. But if I am, I'll try to sum it up in my own words..
In order to add more depth to a 3d model, the textures on the face of the model are given a height map value and the renderer gets given an algorithm to take the viewing angle and the height map and actually draw the texture in 3d! Pretty cool. Not to mention adding self occlusion (occlusion = not rendering surfaces that are out of view) and self shadowing!
You 'could' apply this to minecraft CC by rendering flat surfaces, running along the ground level (y = 0), outside the view distance area. Then applying POM enabled textures to the surfaces, with the colors of the texture being a capture of the surface of the chunks and the height value being copied from the height map.
Did that make sense? I think it would be amazing!
Only thing is, if I understood this properly, the issue would be with drawing overhangs (because of the 2d height map) and having any shadows on these distant lands...
I was only able to find one example of someone playing with this and I can't where the technique is being used...
Links here:
http://people.cs.uct.ac.za/~jcrause/defter/details.php#parallax
1
net/Minecraft, on the other hand, I had to overwrite both to make loading work correctly, and in order to enable/disable CoordsInfo. You can probably overwrite it, you will probably just freeze for the first several seconds every time you load a world.
@nadine: You're looking into CC. Cool. :biggrin.gif:
1. Did you type "Ymod" or "YMod"? The file is case-sensitive, though really, it probably shouldn't be... (improvement time). Maybe I'll write a GUI for the tool later today.
2. Your map is 512 tall, right? If it isn't, you need to type in "YMod1024" or "YMod256" instead of just "YMod".
3. I think this is what the first line of the bat file should look like:
@David Gilmour: What version of CC were you using? Sometime yesterday, I fixed a MetaData save-format conversion bug. If you downloaded CC or the conversion tool before that, I suggest you re-download.
@MineCrak:
1. Actually, Nadine, is Sea-level on your world at y=16? I'm not sure whether it is supposed to be or not. If it is, there actually isn't a bug. If it isn't supposed to be, there is a bug.
2. Well, there are a few things I could do, but I suspect I will write code to make the chunks fully update lighting on load, at least for conversions to CC.
1
The tool is a bit buggy (map height displacement as you can see in the pic, for instance, not to mention that I'm pretty sure that not all of that wool used to be white), please report any bugs you find to me.
I'll have to wait until tomorrow to add automatic YMod conversion and bugfixes. Sorry.
EDIT: maybe I'll get further than I thought today. I just added MetaData conversion to both autoconvert and the conversion tool (and posted conv. tool update). The question is whether I will manage to release the autoconvert fix today.
EDIT2: just added another tiny update to the conversion tool, which will only be noticable once I update the Mod.
EDIT3: except that the tiny update makes saves the conversion tool converts to CC format incompatible with the un-updated Mod... and it's getting very late... I probably will have to wait on Mod update until tomorrow...
EDIT4: (next morning) Mod updated. :biggrin.gif:
1
1
1. Use InvEdit on your level.dat file to remove the Map from your inventory.
2. Delete the contents of the "<YourSave>/Data" folder. This is where map data is stored and deleting it and the map might fix your world.
@thegsgs: I'm not sure, but probably not.
PROGRESS:
1. I fixed the metadata conversion bug. Now I'll start working on the populate tree generation bug.
2. I disabled a Y < 0 cave generator algorithm I had been testing. The algorithm seemed to work, but it generated so much lava, that the framerate dropped!
3. I'm 90% certain I fixed the tree generation bug. (I'm not entirely sure that too many trees aren't generating!)
4. I fixed the map crash bug. Maps display is now a bit glitchy, with far-off areas sometimes rendering as stone when they shouldn't, but maps do mostly work.
5. Release!
1
Also, "a tear in the space-time continuum". LOL! Hilarious way to put it! Even more hilarious that Vanilla Minecraft has code in place to prevent such a thing.
1
4
Working in reverse order:
Thanks for the links :smile.gif:
I haven't yet built in automatic ymod conversion; what format exactly does ymod use? For instance, for a really tall map, the heightmap couldn't be saved as a byte array - a byte is 0-255, way too small for a 1024 block tall map. I'll research it and build a conversion tool (or build it in to my mod), but if you could give me ymod save format specifications, or a link to them, that would save me some time.
So, basically, it isn't yet possible to convert between ymod and cubic chunks saves, but it will be soon.
About my mod: hmm, what do you want to know?
Cubic Chunks stores worlds in ChunkCubes: an array of 16x16x16 blocks, an ArrayList of Entities, another ArrayList of TileEntities, and a handful of flags for whether the ChunkCube's terrain is generated, etc. The HeightMap is still stored in Chunks (which now have an array of 255 ChunkCubes, instead of the various arrays and similar that they used to have), but HeightMap is now an array of shorts instead of bytes. I use a rather complicated array hack to turn the short array into a byte array for saving (does anyone know any better way? a way to use C++ reinterpret_cast in Java, for instance?).
Cubic Chunks could theoretically create infinitely tall worlds (though HeightMaps would have to be altered to go beyond 65536 blocks), I would just need to expand the ChunkCube array. However, after weeks of testing Cubic Chunks, I still haven't reached the upper / lower limits of the world, so it will probably be a while before I bother to expand the world that far.
Cubic Chunks's terrain generator needs some work: it isn't height aware (no y>128 mountains), and the winding caves only go down to bedrock (I'm currently working on that). On the other hand, deep ChunkCube generation does include SandStone deposits (which sometimes contain iron, gold, diamond, etc.)(which also explain my SandStoneConversion mod), not to mention all of the normal deposits. Nether chunk generation really needs some work - the upper limit bedrock still exists, whereas the lower bedrock auto-converts to SmoothStone, giving you access to infinite ChunkCubes (completely filled with boring Netherrack). I asked NetBlitzer (see the bottom of my sig) to write CubicChunks an improved terrain generator, perhaps he will agree. If not, I will just keep working on improving it.
Cubic Chunks leaves unmodified air ChunkCubes unsaved to decrease map size.
Cubic Chunks should be compatible with most other mods, as it is based on Minecraft with ModLoader. If a mod modifies any class with "Chunk" in it, it probably won't work with Cubic Chunks. If it doesn't, it probably will work with Cubic Chunks.
I will continue updating and improving Cubic Chunks for all of the foreseeable future.
Also, my mod has only been around a month or so, which is probably how you missed it.
Thanks again for the publicity. I'm hoping to get a licensing deal with Mojang someday.
2
On the other hand, if you don't feel like it, don't feel bad, but please don't blame me for suggesting it.