@@ -278,7 +278,7 @@ void main()
278
278
float fadeOutDist = u_lightingFadeDistance.x;
279
279
float fadeInDist = u_lightingFadeDistance.y;
280
280
if (czm_sceneMode != czm_sceneMode3D) {
281
- vec3 radii = czm_getWgs84EllipsoidEC().radii ;
281
+ vec3 radii = czm_ellipsoid_radii ;
282
282
float maxRadii = max (radii.x, max (radii.y, radii.z));
283
283
fadeOutDist -= maxRadii;
284
284
fadeInDist -= maxRadii;
@@ -376,16 +376,16 @@ void main()
376
376
}
377
377
378
378
#if defined(PER_FRAGMENT_GROUND_ATMOSPHERE) && (defined(ENABLE_DAYNIGHT_SHADING) || defined(ENABLE_VERTEX_LIGHTING))
379
- czm_ellipsoid ellipsoid = czm_getWgs84EllipsoidEC();
380
-
381
379
float mpp = czm_metersPerPixel(vec4 (0.0 , 0.0 , - czm_currentFrustum.x, 1.0 ));
382
380
vec2 xy = gl_FragCoord .xy / czm_viewport.zw * 2.0 - vec2 (1.0 );
383
381
xy *= czm_viewport.zw * mpp * 0.5 ;
384
382
385
383
vec3 direction = normalize (vec3 (xy, - czm_currentFrustum.x));
386
384
czm_ray ray = czm_ray(vec3 (0.0 ), direction);
387
385
388
- czm_raySegment intersection = czm_rayEllipsoidIntersectionInterval(ray, ellipsoid);
386
+ vec3 ellipsoid_center = czm_view[3 ].xyz;
387
+
388
+ czm_raySegment intersection = czm_rayEllipsoidIntersectionInterval(ray, ellipsoid_center, czm_ellipsoid_inverseRadii);
389
389
390
390
vec3 ellipsoidPosition = czm_pointAlongRay(ray, intersection.start);
391
391
ellipsoidPosition = (czm_inverseView * vec4 (ellipsoidPosition, 1.0 )).xyz;
0 commit comments