Normand Briere
2019-09-15 d5fac992bb6a91e52a90e8318060f5f26ddab982
Camera.java
....@@ -286,24 +286,34 @@
286286 if (scale == 0)
287287 {
288288 // Zoom
289
- LA.vecSub(location, lookAt, location);
290
-
291
- cVector p = location;
292
-
293289 double factor = Math.exp(-dy/300.0); // (1 + dy/100);
294290
295
- p.x *= factor;
296
- p.y *= factor;
297
- p.z *= factor;
291
+ if (viewCode != 0)
292
+ {
293
+ LA.vecSub(location, lookAt, location);
298294
299
- LA.vecAdd(location, lookAt, location);
295
+ cVector p = location;
296
+
297
+ p.x *= factor;
298
+ p.y *= factor;
299
+ p.z *= factor;
300
+
301
+ LA.vecAdd(location, lookAt, location);
302
+ }
303
+ else
304
+ if (//shaper_fovy < 180 && factor > 1 ||
305
+ shaper_fovy * factor < 180)
306
+ {
307
+ shaper_fovy *= factor;
308
+ //System.out.println("fovy = " + shaper_fovy);
309
+ }
300310 }
301311 else
302312 {
303313 LA.vecSub(location, lookAt, direction);
304314
305315 //scale /= Distance();
306
- scale /= shaper_fovy/20;
316
+ // scale /= shaper_fovy/20;
307317
308318 location.x -= dy * direction.x / scale;
309319 //location.y -= dy * direction.y / scale;