0

我正在跟进 Windows 8 的游戏开发教程http://www.sitepoint.com/creating-a-simple-windows-8-game-with-javascript-game-basics-createjseaseljs/。本教程可能需要更新,因为在某些时候我必须在使用 PreloadJS 之前添加 createJS。

例子:

stage = new createjs.Stage(canvas);
preload = new createjs.PreloadJS();

否则调试会引发错误。

但是,当 bgImage 初始化时程序会中断。我可以使用任何提示代码吗?

bgImage = preload.getResult("screenImage").Result;
bgBitmap = new Bitmap(bgImage);
bgBitmap.scale_X = SCALE_X;
bgImage.scale_Y = SCALE_Y;
stage.addChild(bgBitmap);
stage.update();
4

1 回答 1

3

请确保您使用正确的语法。

var bgImage = preload.getResult("screenImage").result;
var bgBitmap = new createjs.Bitmap(bgImage);
stage.addChild(bgBitmap);

还有什么是你得到的错误?这是一个应该有所帮助的快速示例。

function init() {
        canvas = document.getElementById("testCanvas");

        //check to see if we are running in a browser with touch support
        stage = new createjs.Stage(canvas);
        createjs.Ticker.setFPS(24);
        createjs.Ticker.addListener(stage);

        images = images || {};
        var manifest = [
            {src:"image.jpg", id:"image"}
        ]

        loader = new createjs.PreloadJS(false);
        loader.onFileLoad = handleFileLoad;
        loader.onComplete = handleComplete;
        loader.loadManifest(manifest);
    }

    function handleFileLoad(o) {
    //You could store all your images in object to call them easily.  
    if (o.type == "image") {
            images[o.id] = o.result;
        }
    }

    function handleComplete(event) {
        var bg = new createjs.Bitmap(loader.getResult("image").result);
        //OR samething
        //var bg = new createjs.Bitmap(images['image']);
        stage.addChild(bg);
    }

    function tick() {
        stage.update();
    }

希望这可以帮助。

于 2012-11-07T21:02:47.447 回答