Skip to main content

asciirend

. ...    . . .  .  .     . . ..   ..  .. .  ..    .  . .. ... . . ...
.     . .       ..  ..  ...... . .   .......   .  ..  . .. ....... . ..
.  .   .   ... .. . =======+=+==+======+=====+======.  . ...            .
.   ....######======+================+=====+===+===+===+=+=+=+== .... ...
    . . .###%##########=============+===+=========++++++=====+      . . .
.     .  ..######%###%###%####%======+===++==++=+===+==+++++=..  .   . .
 ...    ... ##########%##%######%####=+==+======++++===+==+=. .  .  ...
  .. ..   . .#####%#######%####...........=+====+=====+=== ..    . .. ..
. ..... .  ... ##%####%%######%.asciirend.======+=+==+===  . .... ..... .
  ..    .. . .  ##########%####...........+========+====     ..    ...  .
. .    ..  .     ##%##############%##=+++======+==+=== .. ... ..  .. ..
 .. ....  .       .##################=+=====++===+==+   .   .      .  .
.      ...  . ...    #%####%#####%###==+=+==+=+++==    ...  . ...      ..
. .. . . ...  . ..  .. ##########%%##+===++===+=+  .  .   ..    ..  ..
.    .    . .. . .. .    ############+===+=++==.    . . ..  .  ..    .
 . .   .  . .   .  . ...   ##########+==++=++ ..... . . . .  .      .   .
 ....  ..    ... ....  ..    #%#####%==+===   .. .    .  .. .. . ....  ..
..   . ... .. .. ..     ...  ..##%###+=== .    ...   .  ..    .   .   . .

Generic ascii renderer

asciirend is a no_std compatible 3D rendering core. This crate renders objects in several stages:

  • Primitive shading (similar to vertex shading, albeit works on whole primitives).
  • Fragment shading.
  • Additional text pass.

Fragments are shaded in full sRGB float color space, which then is quantized to characters with a dithering algorithm. This allows the image to have clearer color transitions, as opposed to direct character shading. This also means the rendering backend is agnostic to the available color space (so long as it's not HDR!), which is important for a generic no_std compatible renderer.

Examples

Please see examples/sample.rs for usage sample.

JavaScript

asciirend has a javascript sample that uses WASM. Albeit the API surface is limited, it is possible to use it to draw basic interactive scenes. Please see web_sample directory for details.

Python

In addition, there is a python sample (and pip package). Please see python subdirectory for more details, or install asciirend package, and run the python sample at sample.py.

Metadata

Release files for asciirend 0.3.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for asciirend 0.3.0
File Size Uploaded Provenance
asciirend-0.3.0.tar.gz 4.1 kB Without provenance Details

Built distribution (wheel)

Table of built distributions (wheels) for asciirend 0.3.0
File Interpreter ABI Platform
asciirend-0.3.0-py3-none-any.whl Python 3 none any Details

Total release size: 505.9 kB

Release files / asciirend-0.3.0.tar.gz

Download URL asciirend-0.3.0.tar.gz
Size 4.1 kB
Tags Source
SHA-256 checksum
How to use checksums
5de5132a994715a6a7584a73b2e70da587340d0c65b49820db233de0a0ffcff5
BLAKE2b-256 checksum
How to use checksums
520f2891049034caef5a0a42427b98eac75072b31e08b5d4995484a218b394fc
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.2 CPython/3.11.6

Release files / asciirend-0.3.0-py3-none-any.whl

Download URL asciirend-0.3.0-py3-none-any.whl
Size 501.8 kB
Tags Python 3
SHA-256 checksum
How to use checksums
cda690aa0bb1a3ce55fee68f847270fe4a35d5c80e05b8066fbb0b8f80a2869a
BLAKE2b-256 checksum
How to use checksums
80d00092e845275871fb41be74ce5119450a3c60666e0fa546fe350eb381cfdb
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.2 CPython/3.11.6

Security for asciirend 0.3.0

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

Release history Release notifications | RSS feed

This release

0.3.0 This release

2 release files No provenance

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page