Carpenter's Blocks

Carpenter's Blocks

24M Downloads

Missing Corner Slopes

ZeekDaGeek opened this issue ยท 2 comments

commented

Mod version: 3.3.7

For whatever reason there seems to be a missing corner slope. When you attempt to make a corner on a roof or a floor you can get this slope:
http://zeekdageek.tv/ss/lIxH3.png
http://zeekdageek.tv/ss/FzeGM.png
This is the corner that fills the whole surface of the face it's against.

When you attempt to do it on a wall it's impossible to do...
http://zeekdageek.tv/ss/j8OnF.png

I know you can join the two with an interior slope but it doesn't achieve the intended effect.
http://zeekdageek.tv/ss/eWi6G.png

I rebuilt it on the floor here to show what is intended:
http://zeekdageek.tv/ss/P1rfD.png

commented

Not all shapes are covered in every direction. Slopes take a great deal of time to create, and I wish I had a better system for making the process simpler. The primary orientations are up and down only.

commented

This has the smell of something that would benefit from being done procedurally. I'm not familiar with 1.7.10 rendering (and only barely familiar with 1.8) but can you hand-craft the initial variations (which you have already done) and then apply rotations necessary to generate all the different variations of the tile automagically?

I don't know how accessible the tile mesh is in 1.7.10, but if you can get at the vertexes, that should be pretty easy to implement. Make a list of your matrix transformations and which orientation they correspond with, and just churn out the transformed versions. Do this during the preload phase obvs.

Or if it can't be done inside Minecraft, do it outside minecraft - have your "make new geometry files" script mass produce the java code too so you can just cut-paste it into Minecraft. If you find a bug, you just fix it in your script. If you're using Wavefront OBJs as your original format, this should be pretty easy - they're a plain text file that's just a list of vertexes, really.

I've done this before, very painfully, because a program I was using didn't have good scripting at the time. Generated a bajillion little script files because it couldn't take arguments at execution :P