新增tiledspriterenderer

This commit is contained in:
yhh
2020-07-03 17:51:18 +08:00
parent e7796550c6
commit cf4e76b12d
8 changed files with 141 additions and 11 deletions

View File

@@ -0,0 +1,36 @@
class TiledSpriteRenderer extends SpriteRenderer {
protected sourceRect: Rectangle;
public get scrollX(){
return this.sourceRect.x;
}
public set scrollX(value: number){
this.sourceRect.x = value;
}
public get scrollY(){
return this.sourceRect.y;
}
public set scrollY(value: number){
this.sourceRect.y = value;
}
constructor(sprite: Sprite){
super();
this.setSprite(sprite);
this.sourceRect = sprite.sourceRect;
}
public render(camera: Camera){
if (!this.sprite)
return;
super.render(camera);
let renderTexture = new egret.RenderTexture();
let targetTexture = new egret.Bitmap(this.sprite.texture2D);
let clipBounds = new egret.Rectangle(this.sourceRect.x, this.sourceRect.y, this.sourceRect.width, this.sourceRect.height);
renderTexture.drawToTexture(targetTexture, clipBounds);
this.bitmap.texture = renderTexture;
}
}