I’m having trouble figuring out the math to rotate faces on a sphere. Here is an image of where I’m at so far (faces placed around sphere and rotated on the y-axis correctly:
I’m trying to figure out how I need to rotate the x and z axis and can’t seem to figure it out. If I do the same process as I did above I get this:
You can see that only one strip of the sphere is rotated correctly whereas everything else starts to get all wonky.
The code I have for the y axis is:
var xProgress = (i%this.resX/this.resX); var pi2 = Math.PI*2; tmp.rotation.y = xProgress*-pi2+(Math.PI * 0.5);
the x axis is:
var row = Math.floor(i/this.resY); var yProgress = (row/this.resY); tmp.rotation.x = yProgress*-Math.PI+(Math.PI*0.5);
I know part of the reason that it’s not working is that i’m affecting the rotation of rows instead of columns, but I feel that i’m missing something fundamental here. There should be a way to calculate the rotation based on x,y,z of the sphere…
Any ideas? Thanks!