{ "info": { "author": "Florimond Manca", "author_email": "florimond.manca@gmail.com", "bugtrack_url": null, "classifiers": [ "Development Status :: 3 - Alpha", "Intended Audience :: Developers", "License :: OSI Approved :: MIT License", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.4", "Programming Language :: Python :: 3.5", "Programming Language :: Python :: 3.6", "Topic :: Software Development :: Libraries :: pygame" ], "description": "[![](https://travis-ci.org/florimondmanca/pygame-assets.svg?branch=master)](https://travis-ci.org/florimondmanca/pygame-assets)\n\n# Pygame Assets\n\nPygameAssets is a lightweight asset manager for Pygame applications and games, designed to be pluggable, extensible and configurable.\n\n## Installation\n\n[In progress] Pygame Assets will soon be available on PyPI, so you will be able to use `pip` to install it:\n\n```bash\n$ pip install pygame-assets\n```\n\n## Documentation\n\nThe full documentation is hosted on [ReadTheDocs](#).\n\n## Getting started\n\nPygameAssets expects your assets to be in a folder called `assets`, which should be located at the root of your game project directory. Let's create this folder:\n\n```sh\nmy_project $ mkdir assets/\n```\n\nWant to load an image called `player.png`?\n\n1. Drop `player.png` into `assets/image`\n2. Load the image in your game:\n```python\n\nimport pygame\nimport pygame_assets as assets\n\n# make sure to set_mode()\nscreen = pygame.display.set_mode((800, 600))\n\nplayer_img = assets.load.image('player.png')\n```\n\nTada! :tada:\n\nBonus points: PygameAssets takes charge of all the boilerplate, which means `assets.load.image` will automatically call `convert_alpha()` on your image if needed.\n\n\n## Is this magic?\n\nIn fact, much of PygameAssets' API boils down to the `pygame_assets.load` object which gives you access to PygameAssets' **loaders**.\n\nThe generic syntax to use a loader is the following:\n\n```python\nasset = pygame_assets.load.(filename, ...)\n```\n\nEach loader expects to find assets in `assets/`. That's why we previously dropped `player.png` into `assets/image`.\n\n### Built-in loaders\n\nPygameAssets has the following loaders built-in: `image`, `image_with_rect`, `sound`, `music`, `font`, `freetype`.\n\nSee the documentation for full API reference of each loader.\n\n## Customize me!\n\n### Custom loaders\n\nIf you ever feel the need, PygameAssets allows you to easily define your own asset loaders. Definition of custom loaders is based on the `pygame_assets.loaders.loader` decorator. Here's how to use it:\n\n```python\n# my_project/custom_loaders.py\nfrom pygame_assets.loaders import loader\n\n@loader()\ndef spritesheet(filepath):\n # load the spritesheet then return it\n```\n\nWe can now use our custom loader to load a spritesheet (located in `assets/spritesheet`):\n\n```python\n# my_project/game.py\nimport pygame_assets as assets\n\nwalking_player = assets.load.spritesheet('player-walk.png')\n```\n\nYou can check out the custom loader API in the [documentation](#documentation).\n\n### Custom configuration\n\nPygameAssets can be easily plugged into any project thanks to its sensible defaults. These defaults, however, may not always fit your needs.\n\nPygameAssets allows you to set some custom configuration:\n\n```python\nimport pygame_assets as assets\n\n# Redefine the name of the assets base directory ('assets' by default)\nassets.config.base = 'static'\n\n# You can register other search directories for a any registered loader.\nassets.config.dirs['spritesheet'].append('sheets')\n# => PygameAssets will now also look for spritesheets in 'static/sheets'.\n\n# By default, PygameAssets looks for custom loaders in a local `asset_loaders` module.\n# You can redefine the path to that module too.\nassets.config.custom_loaders_location = 'src.path.to.my.loaders.module'\n```\n\n\n", "description_content_type": null, "docs_url": null, "download_url": "https://github.com/florimondmanca/pygame-assets/archive/0.1.tar.gz", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/florimondmanca/pygame-assets", "keywords": "pygame asset management game utility", "license": "", "maintainer": "", "maintainer_email": "", "name": "pygame-assets", "package_url": "https://pypi.org/project/pygame-assets/", "platform": "", "project_url": "https://pypi.org/project/pygame-assets/", "project_urls": { "Download": "https://github.com/florimondmanca/pygame-assets/archive/0.1.tar.gz", "Homepage": "https://github.com/florimondmanca/pygame-assets" }, "release_url": "https://pypi.org/project/pygame-assets/0.1/", "requires_dist": null, "requires_python": ">=3.4", "summary": "Assets manager for Pygame apps", "version": "0.1" }, "last_serial": 3329265, "releases": { "0.1": [ { "comment_text": "", "digests": { "md5": "2a351475e60f1c0e0e8bb74d3ba5598e", "sha256": "b417c26cf628c21e557becc3b729afe8e1a25d8fe11421230398d65b582e8c5f" }, "downloads": -1, "filename": "pygame_assets-0.1-py3-none-any.whl", "has_sig": false, "md5_digest": "2a351475e60f1c0e0e8bb74d3ba5598e", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.4", "size": 13857, "upload_time": "2017-11-13T17:36:41", "url": "https://files.pythonhosted.org/packages/d6/ef/41a25a6a5aa76a7517a180391423063054700f1caa21ce41da6706593c32/pygame_assets-0.1-py3-none-any.whl" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "2a351475e60f1c0e0e8bb74d3ba5598e", "sha256": "b417c26cf628c21e557becc3b729afe8e1a25d8fe11421230398d65b582e8c5f" }, "downloads": -1, "filename": "pygame_assets-0.1-py3-none-any.whl", "has_sig": false, "md5_digest": "2a351475e60f1c0e0e8bb74d3ba5598e", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.4", "size": 13857, "upload_time": "2017-11-13T17:36:41", "url": "https://files.pythonhosted.org/packages/d6/ef/41a25a6a5aa76a7517a180391423063054700f1caa21ce41da6706593c32/pygame_assets-0.1-py3-none-any.whl" } ] }