ATLAS是一種游戲資源集成方式,它將一些游戲素材或圖片打包成一個單獨的文件,以提高游戲的運行效率。而在ATLAS中,每個圖片都會對應一個JSON文件,JSON文件中記錄了該圖片在ATLAS中的位置、尺寸等信息。
當我們想要在游戲中使用ATLAS中的圖片時,我們需要使用JSON和PNG兩個文件,其中JSON文件用于查找PNG圖片的位置和尺寸信息,PNG圖片則是我們實際使用的圖像資源。
//以下是在PixiJS中加載ATLAS的示例代碼: //加載JSON文件 PIXI.loader.add("atlas_json", "images/atlas.json") //加載PNG文件 PIXI.loader.add("atlas_png", "images/atlas.png") //在加載完成后將atlas中的圖片貼到舞臺上 PIXI.loader.load(() =>{ let atlasJson = PIXI.loader.resources["atlas_json"].data let textureAtlas = PIXI.loader.resources["atlas_png"].texture PIXI.Spritesheet.fromData(atlasJson, textureAtlas, (spritesheet) =>{ //獲取atlas中指定的圖片 let spriteTexture = spritesheet.textures["image.png"] let sprite = new PIXI.Sprite(spriteTexture) app.stage.addChild(sprite) }) })
首先,我們使用PIXI.loader來加載ATLAS中的JSON和PNG文件。然后,通過PIXI.loader.resources來獲取它們的引用,接著使用PIXI.Spritesheet.fromData方法來將JSON和PNG文件合并,并將合并后的spritesheet對象傳遞給回調函數spritesheet。在回調函數中,我們可以使用spritesheet.textures來獲取ATLAS中指定的圖片的紋理,然后可以使用這個紋理創建一個新的PIXI.Sprite對象,并將它添加到PixiJS的舞臺上。