在我的游戏中,我试图在一个图像文件中使用包含所有 GUI 纹理的精灵表。但我不知道如何仅使用由矩形定义的图像资源的一部分来创建精灵。
OBS:我不想使用 Texture Packer,我有一个替代的更简单的免费 Texture Packer 类程序,它将纹理捆绑在图像文件中,并在 json 文件中提供映射。我可以解析 json,但是一旦我得到定义单个纹理的矩形和工作表图像,我不知道如何处理它们。
在我的游戏中,我试图在一个图像文件中使用包含所有 GUI 纹理的精灵表。但我不知道如何仅使用由矩形定义的图像资源的一部分来创建精灵。
OBS:我不想使用 Texture Packer,我有一个替代的更简单的免费 Texture Packer 类程序,它将纹理捆绑在图像文件中,并在 json 文件中提供映射。我可以解析 json,但是一旦我得到定义单个纹理的矩形和工作表图像,我不知道如何处理它们。
根据 Beeblerox
在当前版本的 flixel 中,您可以这样做:
var cached:CachedGraphics = FlxG.bitmap.add(Graphic); // where Graphic is the path to image in assets
var textureRegion:TextureRegion = new TextureRegion(cached, rect.x, rect,y, rect.width, rect.height, 0, 0, rect.width, rect.height); // where rect is the rectangular area you want to load into sprite
sprite.loadGraphic(textureRegion);
在下一个正在开发的版本中,它将更改为:
var imageFrame:ImageFrame = ImageFrame.fromRectangle("path/to/image", rect);
sprite.frames = imageFrame;
基本上你需要:
display.flash.Bitmap
从此 BitmapData构建一个新对象。看这里 :