Level Management is split from renderCore, though it's just a point of access for now.
Level data helper function module thingy is now called levelIO.
client.js handles module initialization so modules actually exist before they're accessed by each other. (Resolves the inter-dependency issue)
networking is initialized synchronously, and waits on game for message processing.
renderCore is initialized synchronously: Fallback model is loaded async (replaces a sync-loaded fallback) and viewport added to DOM when ready. It's not necessary to wait on these explicitly.
game is initialized when DOM is ready, and returns a Promise that resolves once initialization is complete.
Cleaned up networking.js.
Handling of initial game data is all done in game.initializeGameState().
Smaller stuff
Fixed an error when a HUD notification is removed.
Temporarily removed *.glb support.
Water's onBeforeRender now disables the levelObjects scene instead of looping through all current objects.
Overview
renderCore
, though it's just a point of access for now.levelIO
.client.js
handles module initialization so modules actually exist before they're accessed by each other. (Resolves the inter-dependency issue)networking
is initialized synchronously, and waits ongame
for message processing.renderCore
is initialized synchronously: Fallback model is loaded async (replaces a sync-loaded fallback) and viewport added to DOM when ready. It's not necessary to wait on these explicitly.game
is initialized when DOM is ready, and returns a Promise that resolves once initialization is complete.networking.js
.game.initializeGameState()
.Smaller stuff
*.glb
support.onBeforeRender
now disables thelevelObjects
scene instead of looping through all current objects.Referencing issues Closes #164