@@ -1148,23 +1148,7 @@ function initialize() {
1148
1148
viewMatrix [ 15 ] = 1 ;
1149
1149
}
1150
1150
1151
- function render ( elapsedTime , projectionMatrix , pose ) {
1152
- /*
1153
- var now = theClock.getTime();
1154
- var elapsedTime;
1155
- if(then == 0.0) {
1156
- elapsedTime = 0.0;
1157
- } else {
1158
- elapsedTime = now - then;
1159
- }
1160
- then = now;
1161
-
1162
- frameCount++;
1163
-
1164
- g_fpsTimer.update(elapsedTime);
1165
- fpsElem.innerHTML = g_fpsTimer.averageFPS;
1166
- */
1167
-
1151
+ function render ( projectionMatrix , pose ) {
1168
1152
// If we are running > 40hz then turn on a few more options.
1169
1153
if ( setPretty && g_fpsTimer . averageFPS > 40 ) {
1170
1154
setPretty = false ;
@@ -1176,15 +1160,6 @@ function initialize() {
1176
1160
setCanvasSize ( canvas , canvas . clientWidth , canvas . clientHeight ) ;
1177
1161
}
1178
1162
1179
- if ( g . net . sync ) {
1180
- clock = now * g . globals . speed ;
1181
- eyeClock = now * g . globals . eyeSpeed ;
1182
- } else {
1183
- // we have our own clock.
1184
- clock += elapsedTime * g . globals . speed ;
1185
- eyeClock += elapsedTime * g . globals . eyeSpeed ;
1186
- }
1187
-
1188
1163
ambient [ 0 ] = g . globals . ambientRed ;
1189
1164
ambient [ 1 ] = g . globals . ambientGreen ;
1190
1165
ambient [ 2 ] = g . globals . ambientBlue ;
@@ -1515,20 +1490,6 @@ function initialize() {
1515
1490
}
1516
1491
}
1517
1492
1518
- bubbleTimer -= elapsedTime * g . globals . speed ;
1519
- if ( bubbleTimer < 0 ) {
1520
- bubbleTimer = 2 + Math . random ( ) * 8 ;
1521
- var radius = Math . random ( ) * 50 ;
1522
- var angle = Math . random ( ) * Math . PI * 2 ;
1523
- fast . matrix4 . translation (
1524
- world ,
1525
- [ Math . sin ( angle ) * radius ,
1526
- 0 ,
1527
- Math . cos ( angle ) * radius ] ) ;
1528
- g_bubbleSets [ bubbleIndex ] . trigger ( world ) ;
1529
- ++ bubbleIndex ;
1530
- bubbleIndex = bubbleIndex % g_numBubbleSets ;
1531
- }
1532
1493
fast . matrix4 . translation ( world , [ 0 , 0 , 0 ] ) ;
1533
1494
if ( g . options . bubbles . enabled ) {
1534
1495
particleSystem . draw ( viewProjection , world , viewInverse ) ;
@@ -1544,10 +1505,6 @@ function initialize() {
1544
1505
var info = g_lightRayInfo [ ii ] ;
1545
1506
var lerp = info . timer / info . duration ;
1546
1507
var y = Math . max ( 70 , Math . min ( 120 , g_lightRayY + g . globals . eyeHeight ) ) ;
1547
- info . timer -= elapsedTime * g . globals . speed ;
1548
- if ( info . timer < 0 ) {
1549
- initLightRay ( info ) ;
1550
- }
1551
1508
fast . matrix4 . mul (
1552
1509
m4t1 ,
1553
1510
fast . matrix4 . rotationZ ( m4t0 , info . rot + lerp * g_lightRayRotLerp ) ,
@@ -1662,6 +1619,42 @@ function initialize() {
1662
1619
}
1663
1620
then = now ;
1664
1621
1622
+ if ( g . net . sync ) {
1623
+ clock = now * g . globals . speed ;
1624
+ eyeClock = now * g . globals . eyeSpeed ;
1625
+ } else {
1626
+ // we have our own clock.
1627
+ clock += elapsedTime * g . globals . speed ;
1628
+ eyeClock += elapsedTime * g . globals . eyeSpeed ;
1629
+ }
1630
+
1631
+ if ( g . options . lightRays . enabled ) {
1632
+ for ( var ii = 0 ; ii < g_lightRayInfo . length ; ++ ii ) {
1633
+ var info = g_lightRayInfo [ ii ] ;
1634
+ info . timer -= elapsedTime * g . globals . speed ;
1635
+ if ( info . timer < 0 ) {
1636
+ initLightRay ( info ) ;
1637
+ }
1638
+ }
1639
+ }
1640
+
1641
+ if ( g . options . bubbles . enabled ) {
1642
+ bubbleTimer -= elapsedTime * g . globals . speed ;
1643
+ if ( bubbleTimer < 0 ) {
1644
+ bubbleTimer = 2 + Math . random ( ) * 8 ;
1645
+ var radius = Math . random ( ) * 50 ;
1646
+ var angle = Math . random ( ) * Math . PI * 2 ;
1647
+ fast . matrix4 . translation (
1648
+ world ,
1649
+ [ Math . sin ( angle ) * radius ,
1650
+ 0 ,
1651
+ Math . cos ( angle ) * radius ] ) ;
1652
+ g_bubbleSets [ bubbleIndex ] . trigger ( world ) ;
1653
+ ++ bubbleIndex ;
1654
+ bubbleIndex = bubbleIndex % g_numBubbleSets ;
1655
+ }
1656
+ }
1657
+
1665
1658
frameCount ++ ;
1666
1659
1667
1660
g_fpsTimer . update ( elapsedTime ) ;
@@ -1715,22 +1708,22 @@ function initialize() {
1715
1708
}
1716
1709
1717
1710
gl . viewport ( 0 , 0 , canvas . width * 0.5 , canvas . height ) ;
1718
- render ( elapsedTime , g_frameData . leftProjectionMatrix , g_frameData . pose ) ;
1711
+ render ( g_frameData . leftProjectionMatrix , g_frameData . pose ) ;
1719
1712
1720
1713
gl . viewport ( canvas . width * 0.5 , 0 , canvas . width * 0.5 , canvas . height ) ;
1721
- render ( elapsedTime , g_frameData . rightProjectionMatrix , g_frameData . pose ) ;
1714
+ render ( g_frameData . rightProjectionMatrix , g_frameData . pose ) ;
1722
1715
1723
1716
g_vrDisplay . submitFrame ( ) ;
1724
1717
} else {
1725
1718
gl . viewport ( 0 , 0 , canvas . width , canvas . height ) ;
1726
- render ( elapsedTime ) ;
1719
+ render ( ) ;
1727
1720
}
1728
1721
} else {
1729
1722
if ( ! g_drawOnce ) {
1730
1723
g_requestId = tdl . webgl . requestAnimationFrame ( onAnimationFrame , canvas ) ;
1731
1724
}
1732
1725
gl . viewport ( 0 , 0 , canvas . width , canvas . height ) ;
1733
- render ( elapsedTime ) ;
1726
+ render ( ) ;
1734
1727
}
1735
1728
1736
1729
// Set the alpha to 255.
@@ -1739,7 +1732,6 @@ function initialize() {
1739
1732
gl . clear ( gl . COLOR_BUFFER_BIT ) ;
1740
1733
}
1741
1734
1742
- //render();
1743
1735
onAnimationFrame ( ) ;
1744
1736
return true ;
1745
1737
}
0 commit comments