@Override public Tile tile () { if (tile == null) tile = image.texture().tile(rx, ry, rwidth, rheight); return tile; } @Override public RFuture<Tile> tileAsync () {
@Override public Tile tile () { if (tile == null) tile = image.texture().tile(rx, ry, rwidth, rheight); return tile; } @Override public RFuture<Tile> tileAsync () {
root.visitItems(new Slot<Node>() { @Override public void onEmit (Node n) { // Draw the item to the atlas n.item.draw(atlasTex, n.x, n.y); // Record its region packed.put(n.item.id, atlasTex.texture.tile(n.x, n.y, n.width, n.height)); }}); atlasTex.end();
protected static Texture.Symbol decodeTexture (LibraryData.TextureData tdata, playn.core.Texture atlas) { float[] r = tdata.rect; return new Texture.Symbol(tdata.symbol, tdata.origin, atlas.tile(r[0], r[1], r[2], r[3])); } }
/** * Returns an instance that can be used to render a sub-region of this texture. */ public Tile tile (IRectangle region) { return tile(region.x(), region.y(), region.width(), region.height()); }
/** * Returns an instance that can be used to render a sub-region of this texture. */ public Tile tile (IRectangle region) { return tile(region.x(), region.y(), region.width(), region.height()); }
protected void fragment (String source, Texture tex, float ox, float oy) { float hw = tex.displayWidth/2f, hh = tex.displayHeight/2f; Tile ul = tex.tile(0, 0, hw, hh); Tile ur = tex.tile(hw, 0, hw, hh); Tile ll = tex.tile(0, hh, hw, hh); Tile lr = tex.tile(hw, hh, hw, hh); Tile ctr = tex.tile(hw/2, hh/2, hw, hh); float dx = hw + 10, dy = hh + 10; GroupLayer group = new GroupLayer(); group.addAt(new ImageLayer(ul), 0, 0); group.addAt(new ImageLayer(ur), dx, 0); group.addAt(new ImageLayer(ll), 0, dy); group.addAt(new ImageLayer(lr), dx, dy); group.addAt(new ImageLayer(ctr), dx/2, 2*dy); float xoff = tex.displayWidth + 20; group.addAt(new ImageLayer(ul).setScale(2), xoff, 0); group.addAt(new ImageLayer(ur).setScale(2), xoff+2*dx, 0); group.addAt(new ImageLayer(ll).setScale(2), xoff, 2*dy); group.addAt(new ImageLayer(lr).setScale(2), xoff+2*dx, 2*dy); game.rootLayer.addAt(group, ox, oy); addDescrip(source + " to Texture to Tiles, and scaled", ox, oy + tex.displayHeight*2 + 25, 3*tex.displayWidth+40); } }
protected static Texture.Symbol decodeTexture (Json.Object json, playn.core.Texture atlas) { Json.Array rect = json.getArray("rect"); return new Texture.Symbol( json.getString("symbol"), getPoint(json, "origin", 0, 0), atlas.tile(rect.getNumber(0), rect.getNumber(1), rect.getNumber(2), rect.getNumber(3))); }
Tile otile = otex.tile(0, phh/2, pw, phh);