UNPKG

webpack-free-tex-packer

Version:
120 lines (88 loc) 3.36 kB
# webpack-free-tex-packer [![Stats](https://nodei.co/npm/webpack-free-tex-packer.png?downloads=true&stars=true)](https://www.npmjs.com/package/webpack-free-tex-packer) \ Webpack Free texture packer plugin \ Based on https://github.com/odrick/free-tex-packer # Install $ npm install webpack-free-tex-packer # Basic usage **webpack.config.js** ```js const path = require('path'); const WebpackFreeTexPacker = require('webpack-free-tex-packer'); module.exports = { entry: [ './src/index', 'webpack-dev-server/client?http://localhost:8080' ], output: {filename: 'index.js'}, mode: 'development', plugins: [ new WebpackFreeTexPacker(path.resolve(__dirname, 'atlases')) ] }; ``` **Output:** http://localhost:8080/pack-result.png \ http://localhost:8080/pack-result.json # Advanced usage Use packer options object, multiple sources, custom output folder **webpack.config.js** ```js const path = require('path'); const WebpackFreeTexPacker = require('webpack-free-tex-packer'); let sources = []; sources.push(path.resolve(__dirname, 'atlases/10.png')); sources.push(path.resolve(__dirname, 'atlases/11.png')); sources.push(path.resolve(__dirname, 'atlases/12.png')); sources.push(path.resolve(__dirname, 'atlases/dir1')); sources.push(path.resolve(__dirname, 'atlases/dir2/.')); let packOptions = { textureName: 'atlas', width: 512, height: 512, fixedSize: false, padding: 2, allowRotation: true, detectIdentical: true, allowTrim: true, exporter: "Pixi", removeFileExtension: false, prependFolderName: true }; module.exports = { entry: [ './src/index', 'webpack-dev-server/client?http://localhost:8080' ], output: {filename: 'index.js'}, mode: 'development', plugins: [ new WebpackFreeTexPacker(sources, 'assets', packOptions) ] }; ``` **Output:** http://localhost:8080/assets/atlas.png \ http://localhost:8080/assets/atlas.json --- **Plugin arguments** | prop | type | description | | --- | --- | --- | | sources | String or Array | Images or folders path. Folder path, ended by ('.', '\*' or '\*.\*') includes images to atlas root. | | output | String | Output folder | | packOptions | Object | Pack options | --- **Full example** https://github.com/odrick/webpack-free-tex-packer/tree/master/example * download * npm install * npm start * open http://localhost:8080 --- **Pack options description**: https://github.com/odrick/free-tex-packer-core#available-options **Custom exporters description**: https://github.com/odrick/free-tex-packer-core#custom-exporter # Used libs * **Free texture packer core** - https://github.com/odrick/free-tex-packer-core * **Chokidar** - https://github.com/paulmillr/chokidar --- License: MIT