pedro, your problem has nothing to do with android. I think you may need a 3D refresher to solve it. Normals are not UVs. Your UVs will depend on how you want to map, but the easiest way to do it is to map from the sphere center out using angles, like this. Since GL has 2D texture coordinate 0,0 as upper left, you will want to define where upper left is on your sphere. I'd use straight up and center as a unit vector, or (0, 0, 1) if z is up in your world. If y is up, then (0,1,0) will be 0,0 in UVs.
so starting with that, you can calculate the UV of any point by getting the difference of angle of that starting angle and the new point. Remember that if they both come from the sphere center, you'll have complete 2PI radian coverage on both axis... so naturally dividing the resulting angle by 2PI will give you a UV number between 0 and 1. The process is like this (assuming z=up) For each point: // for U just look at the sphere from overhead U = (atan2(point.x - center.x, point.y - center.y) + PI) / (2PI) hyp = distance(point, center); V = ((point.z - center.z) / hyp) + 1) / 2 I believe that is correct and there will be a more elegant way to do it but today my head is in 2D math world so I can't remember how to dot it out. The idea though is that for every point, you can determine the angle needed for U by looking at the sphere from overhead and just using an arctan of the xy differences (assuming z=up) of the center to the point. The resulting range is in radians (- PI to PI) so you have to add PI to change it from 0 to 2PI and then dividing by 2PI gives you 0 to 1. Then for the V value, you can just examine the "height" (z) of the point and in conjunction with its distance from the center, you've got an opposite over hypotenuse which is the same as the sine of the angle, which is what you want to get a evenly distributed texture top to bottom. The number will also be ranged from -1 to 1 so you need to add 1 and divide it by 2 to get the 0 to 1 range. The texture should touch in the corners and if you use the right one, look seamless. If any of my math is wrong, please correct it after debugging, but at least this should get you going in the right direction. Cheers On Dec 22, 9:09 am, pedr0 <pulsarpie...@gmail.com> wrote: > Please see the link and reply inside this post if you have not an > account on OpenGL forum, the question is over there. > > http://www.opengl.org/discussion_boards/ubbthreads.php?ubb=showflat&N... > > Thanks a lot. -- You received this message because you are subscribed to the Google Groups "Android Developers" group. To post to this group, send email to android-developers@googlegroups.com To unsubscribe from this group, send email to android-developers+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/android-developers?hl=en