egret_loader.js 1.7 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152
  1. egret_h5.startGame = function () {
  2. var context = egret.MainContext.instance;
  3. context.touchContext = new egret.HTML5TouchContext();
  4. context.deviceContext = new egret.HTML5DeviceContext();
  5. context.netContext = new egret.HTML5NetContext();
  6. egret.StageDelegate.getInstance().setDesignSize(480, 740);
  7. context.stage = new egret.Stage();
  8. var scaleMode = egret.MainContext.deviceType == egret.MainContext.DEVICE_MOBILE ? egret.StageScaleMode.SHOW_ALL : egret.StageScaleMode.NO_SCALE;
  9. context.stage.scaleMode = egret.StageScaleMode.SHOW_ALL ;
  10. //WebGL是egret的Beta特性,默认关闭
  11. var rendererType = 0;
  12. if (rendererType == 1) {// egret.WebGLUtils.checkCanUseWebGL()) {
  13. context.rendererContext = new egret.WebGLRenderer();
  14. }
  15. else {
  16. context.rendererContext = new egret.HTML5CanvasRenderer();
  17. }
  18. egret.MainContext.instance.rendererContext.texture_scale_factor = 1;
  19. context.run();
  20. var rootClass;
  21. if(document_class){
  22. rootClass = egret.getDefinitionByName(document_class);
  23. }
  24. if(rootClass) {
  25. var rootContainer = new rootClass();
  26. if(rootContainer instanceof egret.DisplayObjectContainer){
  27. context.stage.addChild(rootContainer);
  28. }
  29. else{
  30. throw new Error("文档类必须是egret.DisplayObjectContainer的子类!");
  31. }
  32. }
  33. else{
  34. throw new Error("找不到文档类!");
  35. }
  36. //处理屏幕大小改变
  37. var resizeTimer = null;
  38. var doResize = function () {
  39. context.stage.changeSize();
  40. resizeTimer = null;
  41. };
  42. window.onresize = function () {
  43. if (resizeTimer == null) {
  44. resizeTimer = setTimeout(doResize, 300);
  45. }
  46. };
  47. };