A simple 3D Ray Caster for pygame.
Project description
Pygame 6DoF Ray Caster
PySiDoCast is a Python module that allows you to render 3D scenes using Pygame images.
Warning There is no GPU support for the moment: The rendering is made on the CPU only.
Installation
To install PySiDoCast, simply use pip:
pip install pysidocast
Usage
Here is a basic example of how to use PySiDoCast to render a 3D scene:
import pygame
from pysidocast import Scene
# Initialize Pygame
pygame.init()
screen = pygame.display.set_mode((480, 480))
# Load an image using pygame
image = pygame.image.load(".\\img.png").convert_alpha() # using ".convert_alpha()" is MANDATORY
# Create a new Scene
scene = Scene()
# Add the image into the scene
scene.add_wall(image, (-1, 2, 3), (1, 0, 1))
# Main Loop
while True:
# Render the scene
scene.render(screen, (0, 1, 0), 0, 90, fov=60)
# Update the screen
pygame.display.update()
for event in pygame.event.get():
if event.type == pygame.QUIT:
exit()
Features
- Create 3D objects with basic shapes
- Multiples Scenes support
- Render to Pygame Surface
- Simple Camera movement
- Customizable lighting
- Transparency using Dithering
Contribution
Any contributions, bug reports, bug fixes, documentation improvements, enhancements and ideas are welcome.
License
PySiDoCast is licensed under the MIT license.
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
pysidocast-1.2.1.tar.gz
(14.3 kB
view hashes)
Built Distribution
Close
Hashes for pysidocast-1.2.1-cp310-cp310-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 3e7bdb35f373bf7c1f2991485b0851b9af15f518dfe77be0cd9c57e2dc052ec9 |
|
MD5 | f3f8ed138cccd29fa480c0ac00d59fdb |
|
BLAKE2b-256 | eff668a714d82902045e22fd0e46a8dfcee2162f0fbbd68ab6d8f56c76498a22 |