//Finished the basic construction. This function starts the Frame and Render //Functions defined by the user. Before every "game cycle" an event is pumped //from the message queue that have accumulated during the last cycle and passed //to the Frame and Render Functions to handle. Only one event can be handled per //cycle on default. Manual calls to pump the queue can be made if the resources //are available to resolve whatever msg the engine is making void blu_impl::System_Start(){ //initialize the system log with the system start this->blog = (logList*)malloc(sizeof(logList)); blog->logLine = "system start"; logTP = blog; logSz = 1; curLn = 1; printf("0.%d %s\n",curLn,blog->logLine); for(;;){ bluVent aVent = this->Input_PumpQueue(); //event based handling causes these to hit and get added to history to be dealt //with later. Causes latency but humans are slow. if(bluFrameFunc(aVent)) break; if(bluRenderFunc) bluRenderFunc(aVent); } }
void blu_impl::System_Start(){ for(;;){ if(bluFrameFunc()) break; //if(bluRenderFunc) bluRenderFunc(); } }