Metadata-Version: 2.1
Name: Asciin.py
Version: 0.1.7
Summary: Featherweight 3D / 2D Ascii console game engine for Python 2.7+ with no external dependencies and in pure Python.
Home-page: https://github.com/Rickaym/Asciin.py
Author: Rickaym
License: MIT
Project-URL: Documentation, https://asciipy.readthedocs.io/en/latest/
Project-URL: Issue tracker, https://github.com/Rickaym/Asciin.py/issues
Description: [![pipenv](https://img.shields.io/pypi/pyversions/Asciin.py.svg)](https://www.python.org/)
        [![release](https://img.shields.io/pypi/v/Asciin.py.svg)](https://pypi.org/project/Asciin.py/)
        ![platform](https://img.shields.io/static/v1?label=platforms&message=Windows+|+Linux+|+OSX&color=informational)
        [![documentation status](https://readthedocs.org/projects/asciinpy/badge/?version=latest)](https://asciinpy.readthedocs.io/en/latest/?badge=latest)
        
        # Asciin.py
        
        ![logo](https://raw.githubusercontent.com/Rickaym/Asciin.py/main/assets/inverted_logo.png)
        
        A 2D and 3D Ascii game engine written for performance (still under development).
        
        ---
        
        **[ReadTheDocs](https://asciinpy.readthedocs.io/en/latest/)** | **[PyPi Project](https://pypi.org/project/Asciin.py/)** |
        **[Github Repo](https://github.com/Rickaym/Asciin.py)** |
        **[Dev server](https://discord.gg/UmnzdPgn6g)**
        
        ---
        
        ### Status Demo
        
        1. **Matrixes Patterns**
           <br> An example in working with PixelPainters.
        
        ![demo](https://raw.githubusercontent.com/Rickaym/Asciin.py/main/assets/LuckyDevStuff_render.gif)
        
        Credits to LuckyDevStuff for the examples ~
        
        More examples [here](https://github.com/Rickaym/Asciin.py/tree/main/examples/).
        
        ### Installing
        
        **Python 2.7 or higher is required**
        
        ```js
        // Windows
        py -m pip install -U asciin.py
        
        // Linux/macOS
        python -m pip install -U asciin.py
        ```
        
        ### Quick Start
        
        1. Instantiate a `Asciinpy.Window` class with the desired values.
        
        2. Define your game loop and decorate it with the `Asciinpy.Window.loop` decorator that should accept one parameter of type `Displayable`.
        
        3. Write some fancy code with or without built-in models to render.
        
        4. Call the `Asciinpy.Window.run` method!
        
        ```py
        from Asciinpy import Displayable, Window, Resolutions
        from Asciinpy._2D import Square
        # Define a window
        
        window = Window(resolution=Resolutions._60c)
        
        @window.loop()
        def game_loop(screen): # type: (Displayable) -> None
           coordinate = (0, 0)
           length = 8
           texture = "%"
           Square = Square(coordinate, length, texture)
           while True:
              screen.blit(Square)
              screen.refresh()
        
        window.run()
        ```
        
        Contact me at Neo#1844 for inquiries.
        # Changelog
        
        All notable changes to this project will be documented in this file.
        
        The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
        and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
        
        The changelog only keeps track of updates post version **0.1.4**
        
        ## [0.1.6] - 2021-08-13
        
        ### Notes
        
        - This is the last update until major release `0.2`, which is expected to feature 3D elements at first hand and a more concrete structure definition, although there are possibilities of bug fixing releases before it.
        
        ### Added
        
        - Concept and Classes on `Line`, made up of two sets of points
        - Concept and Classes on `Triangle`, only made possible on derivation of the `Line` class
        - Birth of `amath` module in the general scope
        - Concept and Classes on `Matrix`, the genesis of all 3D objects and concepts for the future ;) supports all operable actions with and on itself and other compatible types
        - An installable extension package which is a code interpolator that condenses any post version **0.1.4** distributions of the library into one singular `.py` file that can be shipped off readily. The condensed python contains version information, resolved relative dependencies, system dependencies and licenses as well ~ it will also support the submodule importing syntax e.g. `from Asciinpy.twod import Plane`; as it makes-up classes under the namespace of the sub packages with their contents defined.
        
        ### Changed
        
        - Objects are now appropriately categorized onto their respective sub-packages (`_2D` and `_3D`)if said dimensions are an integral part of differientiating and using them ~ objects lower than 2D are put in the general scope, this is for example why `utils` and `amath` aren't categorized into dimensions.
        - 2D specific models are now subclassed under `Plane` which is a renamed class of version _0.1.4_ `Model` ~ while the 3D base model class is named `Model`.
        
Platform: UNKNOWN
Classifier: Development Status :: 4 - Beta
Classifier: Intended Audience :: Developers
Classifier: Topic :: Multimedia :: Graphics :: 3D Modeling
Classifier: License :: OSI Approved :: MIT License
Classifier: Operating System :: OS Independent
Classifier: Natural Language :: English
Classifier: Programming Language :: Python :: 2.7
Classifier: Programming Language :: Python :: 3.9
Requires-Python: >=2.7
Description-Content-Type: text/markdown
