【问题标题】:How put a texture on pixi.js polygon?如何在 pixi.js 多边形上放置纹理?
【发布时间】:2015-06-08 08:50:25
【问题描述】:

我可以在 pixi.js 中用纹理填充多边形吗?

我需要用点创建一个多边形并用纹理填充它。我该怎么做?

感谢您的帮助!

【问题讨论】:

    标签: javascript webgl pixi.js


    【解决方案1】:

    我不认为你可以用纹理填充多边形,但你可以将多边形用作 Sprite 的蒙版,这将具有相同的效果。这样的事情会起作用:

    var stage = new PIXI.Stage(0, true);
    var renderer = PIXI.autoDetectRenderer(620, 380);
    document.body.appendChild(renderer.view);
    
    //create a texture
    var texture = PIXI.Texture.fromImage("/img/logo.png");
    var tilingSprite = new PIXI.TilingSprite(texture, 620, 380);
    stage.addChild(tilingSprite);
    
    //create a polygon
    var graphics = new PIXI.Graphics();
    graphics.beginFill(0);
    graphics.moveTo(50,50);
    graphics.lineTo(300,140);
    graphics.lineTo(220, 320);
    graphics.lineTo(80, 110);
    graphics.lineTo(50,50);
    graphics.endFill();
    stage.addChild(graphics);
    
    //mask the texture with the polygon
    tilingSprite.mask = graphics;
    
    update();
    function update()
    {    
        requestAnimFrame( update );
        renderer.render(stage);
    }
    

    jsfiddle:http://jsfiddle.net/7asnhk3b/

    【讨论】:

    • 非常感谢!这对我帮助很大!
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-04-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多