11import { getExtensionService as getExtensionServiceMeta3D , createExtensionState as createExtensionStateMeta3D , getExtensionLife as getLifeMeta3D , state as meta3dState , api , canvasData } from "meta3d-type"
2- import { state } from "meta3d-editor-whole-protocol/src/state/StateType"
2+ import { initFunc , state } from "meta3d-editor-whole-protocol/src/state/StateType"
33import { configData , service } from "meta3d-editor-whole-protocol/src/service/ServiceType"
44import { service as coreService , pipelineContribute } from "meta3d-core-protocol/src/service/ServiceType"
55import { service as uiService } from "meta3d-ui-protocol/src/service/ServiceType"
@@ -16,15 +16,15 @@ import { elementContribute } from "meta3d-ui-protocol/src/contribute/ElementCont
1616import { skin } from "meta3d-skin-protocol"
1717import { inputContribute } from "meta3d-ui-protocol/src/contribute/InputContributeType"
1818
19- // let _getBackendEnv = (env: string) => {
20- // switch (env) {
21- // case "production":
22- // return "meta3d-production-5eol5gce9a6b9c"
23- // case "local":
24- // default:
25- // return "meta3d-local-9gacdhjl439cff76"
26- // }
27- // }
19+ let _getBackendEnv = ( env : string ) => {
20+ switch ( env ) {
21+ case "production" :
22+ return "meta3d-production-5eol5gce9a6b9c"
23+ case "local" :
24+ default :
25+ return "meta3d-local-9gacdhjl439cff76"
26+ }
27+ }
2828
2929// let _registerPipelines = (
3030// meta3dState: meta3dState, api: api,
@@ -241,23 +241,23 @@ let _initForVisualRun = (meta3dState: meta3dState, api: api, { isDebug, canvas }
241241 } )
242242}
243243
244- // let _execAllInitFuncs = (meta3dState, initFuncs, initData) => {
245- // // let _func = (meta3dState, index) => {
246- // // if (index < 0) {
247- // // return Promise.resolve(meta3dState)
248- // // }
244+ let _execAllInitFuncs = ( meta3dState , initFuncs , initData ) => {
245+ // let _func = (meta3dState, index) => {
246+ // if (index < 0) {
247+ // return Promise.resolve(meta3dState)
248+ // }
249249
250- // // let initFunc = getExn(initFuncs.get(index))
250+ // let initFunc = getExn(initFuncs.get(index))
251251
252- // // return initFunc(meta3dState, initData).then(meta3dState => {
253- // // return _func(meta3dState, index - 1)
254- // // })
255- // // }
252+ // return initFunc(meta3dState, initData).then(meta3dState => {
253+ // return _func(meta3dState, index - 1)
254+ // })
255+ // }
256256
257- // // return _func(meta3dState, initFuncs.count() - 1)
257+ // return _func(meta3dState, initFuncs.count() - 1)
258258
259- // return reducePromise<meta3dState, initFunc>(initFuncs.toArray(), (meta3dState, initFunc) => initFunc(meta3dState, initData), meta3dState)
260- // }
259+ return reducePromise < meta3dState , initFunc > ( initFuncs . toArray ( ) , ( meta3dState , initFunc ) => initFunc ( meta3dState , initData ) , meta3dState )
260+ }
261261
262262// let _loopEngine = (meta3dState: meta3dState, api: api) => {
263263// return update(api, meta3dState).then(meta3dState => render(api, meta3dState))
@@ -345,7 +345,7 @@ let _updateForVisualRun = (meta3dState, api: api, { clearColor, time, skinName }
345345 } )
346346}
347347
348- // let _updateForRun = _updateForVisualRun
348+ let _updateForRun = _updateForVisualRun
349349
350350let _prepareUIForRun = ( meta3dState : meta3dState , api : api ) => {
351351 let { registerSkin, registerElement } = getExn ( api . getPackageService < uiService > ( meta3dState , "meta3d-ui-protocol" ) )
@@ -399,31 +399,31 @@ let _initForRun = (meta3dState: meta3dState, api: api, [_, { isDebug }]: configD
399399 } )
400400}
401401
402- // let _loop = (
403- // api: api, meta3dState: meta3dState,
404- // time: number,
405- // configData: configData
406- // ) => {
407- // let [_, { skinName, clearColor }] = configData
408-
409- // return _updateForRun(meta3dState, api, { clearColor, time, skinName }).then(meta3dState => {
410- // requestAnimationFrame(
411- // (time) => {
412- // _loop(api, meta3dState,
413- // time,
414- // configData)
415- // }
416- // )
417- // })
418- // }
402+ let _loop = (
403+ api : api , meta3dState : meta3dState ,
404+ time : number ,
405+ configData : configData
406+ ) => {
407+ let [ _ , { skinName, clearColor } ] = configData
408+
409+ return _updateForRun ( meta3dState , api , { clearColor, time, skinName } ) . then ( meta3dState => {
410+ requestAnimationFrame (
411+ ( time ) => {
412+ _loop ( api , meta3dState ,
413+ time ,
414+ configData )
415+ }
416+ )
417+ } )
418+ }
419419
420- // let _initBackend = (api: api, meta3dState, env) => {
421- // return api.backend.init(
422- // _getBackendEnv(env)
423- // ).then(() => {
424- // return meta3dState
425- // })
426- // }
420+ let _initBackend = ( api : api , meta3dState , env ) => {
421+ return api . backend . init (
422+ _getBackendEnv ( env )
423+ ) . then ( ( ) => {
424+ return meta3dState
425+ } )
426+ }
427427
428428export let getExtensionService : getExtensionServiceMeta3D <
429429 service
@@ -506,29 +506,34 @@ export let getExtensionService: getExtensionServiceMeta3D<
506506 return api . getPackageService ( meta3dState , packageProtocolName )
507507 } ,
508508 run : ( meta3dState : meta3dState , configData ) => {
509+ // let [canvasData, { isDebug, env }] = configData
510+
511+ // let canvas = _createAndInsertCanvas(canvasData)
512+
513+ // return _initForRun(meta3dState, api, configData, canvas)
514+
509515 let [ canvasData , { isDebug, env } ] = configData
510516
511517 let canvas = _createAndInsertCanvas ( canvasData )
512518
513- return _initForRun ( meta3dState , api , configData , canvas )
514-
515- // _execAllInitFuncs(meta3dState, api.getExtensionState<state>(meta3dState, "meta3d-editor-whole-protocol").initFuncs, { isDebug, canvas }).then(meta3dState => {
516- // return _initForRun(meta3dState, api, configData, canvas)
517- // }).then(meta3dState => {
518- // // meta3dState = api.setExtensionState<state>(meta3dState, "meta3d-editor-whole-protocol", {
519- // // ...api.getExtensionState<state>(meta3dState, "meta3d-editor-whole-protocol"),
520- // // env: api.nullable.return(env)
521- // // })
519+ _execAllInitFuncs ( meta3dState , api . getExtensionState < state > ( meta3dState , "meta3d-editor-whole-protocol" ) . initFuncs , { isDebug, canvas } ) . then ( meta3dState => {
520+ return _initForRun ( meta3dState , api , configData , canvas )
521+ } ) . then ( meta3dState => {
522+ // meta3dState = api.setExtensionState<state>(meta3dState, "meta3d-editor-whole-protocol", {
523+ // ...api.getExtensionState<state>(meta3dState, "meta3d-editor-whole-protocol"),
524+ // env: api.nullable.return(env)
525+ // })
526+
527+ return _initBackend ( api , meta3dState , env )
528+ } ) . catch ( e => {
529+ _handleError ( api , e , meta3dState )
530+ throw e
531+ } ) . then ( ( meta3dState : meta3dState ) => {
532+ _loop ( api , meta3dState ,
533+ 0 ,
534+ configData )
535+ } )
522536
523- // return _initBackend(api, meta3dState, env)
524- // }).catch(e => {
525- // _handleError(api, e, meta3dState)
526- // throw e
527- // }).then((meta3dState: meta3dState) => {
528- // _loop(api, meta3dState,
529- // 0,
530- // configData)
531- // })
532537 } ,
533538 }
534539}
0 commit comments