@@ -78,7 +78,7 @@ userSettings['gravity']['max'] = 15.5; // Max gravity rate
78
78
// Default is - PC = 30 -&- Movile = 30
79
79
const targetFPS = {
80
80
'pc' : 45 ,
81
- 'mobile' : 30
81
+ 'mobile' : 45
82
82
} ;
83
83
84
84
// Render Resolution Scale
@@ -120,6 +120,33 @@ const collisionScale = {
120
120
} ;
121
121
122
122
123
+ // -- -- -- -- --
124
+
125
+ // Find search parameters in the URL for procstack.github.io
126
+ // Not needed for pxlNav
127
+ // Note : procPages clears the search parameters on the page
128
+ // So search is lost on page change,
129
+ // Running before procPages.init() is needed
130
+ let uriSearch = window . location . search ;
131
+
132
+ // Check hash for fps and renderScale
133
+ let searchParams = new URLSearchParams ( uriSearch ) ;
134
+ let showFPS = searchParams . has ( 'showfps' ) ? ! ! parseInt ( searchParams . get ( 'showfps' ) ) : false ;
135
+ if ( searchParams . has ( 'fps' ) ) {
136
+ let fps = parseInt ( searchParams . get ( 'fps' ) ) ;
137
+ if ( fps > 0 ) {
138
+ targetFPS . pc = fps ;
139
+ targetFPS . mobile = fps ;
140
+ }
141
+ }
142
+ if ( searchParams . has ( 'scale' ) ) {
143
+ let scale = parseFloat ( searchParams . get ( 'scale' ) ) ;
144
+ if ( scale > 0 ) {
145
+ renderScale . pc = scale ;
146
+ renderScale . mobile = scale ;
147
+ }
148
+ }
149
+
123
150
// -- -- -- -- --
124
151
125
152
// Create the main page manager
@@ -170,8 +197,6 @@ pxlNavOptions.loaderPhrases = loaderPhrases;
170
197
const pxlNavEnv = new pxlNav ( pxlNavOptions , projectTitle , procPages . curRoom , bootRoomList ) ;
171
198
172
199
173
-
174
-
175
200
// -- -- -- -- --
176
201
177
202
@@ -183,6 +208,7 @@ pageListenEvents.forEach( (e)=>{
183
208
} ) ;
184
209
185
210
211
+
186
212
// -- -- --
187
213
188
214
// Connect ProcPages' trigger emit function to into `pxlNav`
@@ -191,6 +217,32 @@ procPages.bindTriggerEmits( pxlNavEnv.trigger.bind(pxlNavEnv) );
191
217
// -- -- --
192
218
193
219
220
+ // Check hash for fps and renderScale
221
+ if ( showFPS ) {
222
+ let verboseConsole = document . getElementById ( 'verbErrorConsole' ) ;
223
+ let skipper = true ;
224
+ let prevTime = 0 ;
225
+ if ( verboseConsole ) {
226
+ pxlNavEnv . subscribe ( 'render-prep' , ( e ) => {
227
+ skipper = ! skipper ;
228
+ if ( ! skipper ) {
229
+ prevTime = e . value . time ;
230
+ return ;
231
+ }
232
+ let newDiv = document . createElement ( 'div' ) ;
233
+ let delta = ( 1 / ( ( e . value . time - prevTime ) ) ) . toFixed ( 3 ) ;
234
+ newDiv . innerHTML = delta ;
235
+ verboseConsole . prepend ( newDiv ) ;
236
+ if ( verboseConsole . childElementCount > 3 ) {
237
+ verboseConsole . removeChild ( verboseConsole . lastChild ) ;
238
+ }
239
+ } ) ;
240
+ }
241
+ }
242
+
243
+ // -- -- --
244
+
245
+
194
246
function init ( ) {
195
247
196
248
// Start the timer and initilize pxlNAv
0 commit comments