Commit: 0790976b6c37b4d6d688b196093358a0369a2ee0
Author: Clément Foucault
Date:   Sun Feb 12 19:25:49 2017 +0100
Branches: blender2.8
https://developer.blender.org/rB0790976b6c37b4d6d688b196093358a0369a2ee0

OpenGL immediate mode: fix inverted normal in sphere batch

===================================================================

M       source/blender/editors/interface/interface_draw.c
M       source/blender/gpu/intern/gpu_batch.c

===================================================================

diff --git a/source/blender/editors/interface/interface_draw.c 
b/source/blender/editors/interface/interface_draw.c
index 7b17c3d644..efd920aef6 100644
--- a/source/blender/editors/interface/interface_draw.c
+++ b/source/blender/editors/interface/interface_draw.c
@@ -1301,7 +1301,6 @@ void ui_draw_but_UNITVEC(uiBut *but, uiWidgetColors 
*wcol, const rcti *rect)
        
        /* setup lights */
        ui_but_v3_get(but, light);
-       light[2] = -light[2];
 
        /* transform to button */
        gpuMatrixBegin3D_legacy();
diff --git a/source/blender/gpu/intern/gpu_batch.c 
b/source/blender/gpu/intern/gpu_batch.c
index 716c5e55b3..5e86f1e26b 100644
--- a/source/blender/gpu/intern/gpu_batch.c
+++ b/source/blender/gpu/intern/gpu_batch.c
@@ -78,15 +78,15 @@ static Batch *batch_sphere(int lat_res, int lon_res)
                lat = 0.0f;
                for(int j = 0; j < lat_res; j++, lat += lat_inc) {
                        if (j != lat_res - 1) { /* Pole */
-                               batch_sphere_lat_lon_vert(lat,         lon);
-                               batch_sphere_lat_lon_vert(lat+lat_inc, lon);
                                batch_sphere_lat_lon_vert(lat+lat_inc, 
lon+lon_inc);
+                               batch_sphere_lat_lon_vert(lat+lat_inc, lon);
+                               batch_sphere_lat_lon_vert(lat,         lon);
                        }
 
                        if (j != 0) { /* Pole */
-                               batch_sphere_lat_lon_vert(lat,         lon);
-                               batch_sphere_lat_lon_vert(lat+lat_inc, 
lon+lon_inc);
                                batch_sphere_lat_lon_vert(lat,         
lon+lon_inc);
+                               batch_sphere_lat_lon_vert(lat+lat_inc, 
lon+lon_inc);
+                               batch_sphere_lat_lon_vert(lat,         lon);
                        }
                }
        }
@@ -109,7 +109,7 @@ Batch *Batch_get_sphere(int lod)
 void gpu_batch_init(void)
 {
        /* Hard coded resolution */
-       sphere_low = batch_sphere(8, 8);
+       sphere_low = batch_sphere(8, 16);
        sphere_med = batch_sphere(16, 10);
        sphere_high = batch_sphere(32, 24);
 }

_______________________________________________
Bf-blender-cvs mailing list
[email protected]
https://lists.blender.org/mailman/listinfo/bf-blender-cvs

Reply via email to