# TorchRender
A library for testing and debugging graphics algorithms with torch. Or just graphics, though that may be slow depending on the GPU.
## Examples
The current best way to see how to use this library is by looking through the examples and tests.
### Conways's Game of Life + Color

[This example](https://github.com/SimLeek/TorchRender/blob/master/examples/interactive_test_pixel_shader.py) adds interaction between colors of different pixels to Conway's game of life. This doesn't really require a pixel shader, and could be done on normal pytorch, but the scrolling I added after the video above demonstrates a very simple usage for a pixel shader:
```python
def conway(frame, coords, finished):
...
trans = np.zeros_like(coords)
trans[0, ...] = np.ones(trans.shape[1:])
frame[coords] = array[coords+trans]
```
Here, we're adding 1 to a dimensions of 'coords' which is a tensor holding the locations of each pixel and color. This shifts the entire image by one pixel. If we did something more complicated based on the values of the coordinates, we could add more complicated shaders, like barrel distortions.
## Installation
torchrender is distributed on [PyPI](https://pypi.org) as a universal
wheel and is available on Linux/macOS and Windows and supports
Python 3.5+ and PyPy.
```bash
$ pip install torchrender
```
## License
torchrender is distributed under the terms of the
[MIT License](https://choosealicense.com/licenses/mit>).
A library for testing and debugging graphics algorithms with torch. Or just graphics, though that may be slow depending on the GPU.
## Examples
The current best way to see how to use this library is by looking through the examples and tests.
### Conways's Game of Life + Color

[This example](https://github.com/SimLeek/TorchRender/blob/master/examples/interactive_test_pixel_shader.py) adds interaction between colors of different pixels to Conway's game of life. This doesn't really require a pixel shader, and could be done on normal pytorch, but the scrolling I added after the video above demonstrates a very simple usage for a pixel shader:
```python
def conway(frame, coords, finished):
...
trans = np.zeros_like(coords)
trans[0, ...] = np.ones(trans.shape[1:])
frame[coords] = array[coords+trans]
```
Here, we're adding 1 to a dimensions of 'coords' which is a tensor holding the locations of each pixel and color. This shifts the entire image by one pixel. If we did something more complicated based on the values of the coordinates, we could add more complicated shaders, like barrel distortions.
## Installation
torchrender is distributed on [PyPI](https://pypi.org) as a universal
wheel and is available on Linux/macOS and Windows and supports
Python 3.5+ and PyPy.
```bash
$ pip install torchrender
```
## License
torchrender is distributed under the terms of the
[MIT License](https://choosealicense.com/licenses/mit>).
Metadata
Release files for torchrender 0.0.2
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| torchrender-0.0.2.tar.gz | 5.2 kB | Details |
Release files / torchrender-0.0.2.tar.gz
| Download URL | torchrender-0.0.2.tar.gz |
|---|---|
| Size | 5.2 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
6e30464c0428f15cb538d1611f843c8a2437635bfa41fd033bb34423531d04f1
|
|
BLAKE2b-256 checksum How to use checksums |
124e144abde2e0ae4b044c74146ca03d9fa991cd1ddd5f676f45ca3560e6dae2
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/1.13.0 pkginfo/1.5.0.1 requests/2.21.0 setuptools/40.8.0 requests-toolbelt/0.9.1 tqdm/4.31.1 CPython/3.5.6
|