Skip to main content

An easy to use game engine/framework for python.

Project description

ursina ʕ •ᴥ•ʔゝ□

An easy to use game engine/framework for python.

Banner

Getting Started

  1. Install Python 3.6 or newer. https://www.python.org/downloads/

  2. Open cmd/terminal and type:

     pip install ursina
    

If you want to install the newest version from git, you can install like this:

    pip install git+https://github.com/pokepetter/ursina.git

If you want to easily edit the source, it's recommended to clone the git repo and install as develop like this. Make sure you have git installed. https://git-scm.com/

    git clone https://github.com/pokepetter/ursina.git
    python setup.py develop

Also install any of the optional dependencies you want from the list below, or install them all with:

    pip install ursina[extras]

On some systems you might have to use pip3 instead of pip in order to use Python 3 and not the old Python 2.

Dependencies

  • python 3.6+
  • panda3d
  • screeninfo, for detecting screen resolution
  • hurry.filesize, for converting bytes to megabytes
  • pillow, for texture manipulation
  • psd-tools, for converting .psd files
  • blender, for converting .blend files
  • pyperclip, for copy/pasting

Examples

from ursina import *            # this will import everything we need from ursina with just one line.

app = Ursina()
ground = Entity(
    model = 'cube',
    color = color.magenta,
    z = -.1,
    y = -3,
    origin = (0, .5),
    scale = (50, 1, 10),
    collider = 'box',
    )

app.run()                       # opens a window and starts the game.

How do I make a game?

Ursina games are made by writing Python code. You can use any text editor you want, but personally I like to use Atom.

  1. Create an empty .py file called 'ursina_game.py'
  2. Copy this text into your new file:
from ursina import *           # this will import everything we need from ursina with just one line.

app = Ursina()

player = Entity(
    model = 'cube' ,           # finds a 3d model by name
    color = color.orange,
    scale_y = 2
    )

def update():                  # update gets automatically called by the engine.
    player.x += held_keys['d'] * .1
    player.x -= held_keys['a'] * .1


app.run()                     # opens a window and starts the game.
  1. Type this in the terminal to start the game:

    python ursina_game.py
    

    If you use Atom, I recommend installing the package atom-python-run to tun your scripts with the press of a button.

  2. You can now move the orange box around with 'a' and 'd'!

    To close the window, you can by default, press shift+q or press the red x. to disable this, write 'window.exit_button.enabled = False' somewhere in your code.

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

ursina-3.4.0.tar.gz (992.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

ursina-3.4.0-py3-none-any.whl (1.1 MB view details)

Uploaded Python 3

File details

Details for the file ursina-3.4.0.tar.gz.

File metadata

  • Download URL: ursina-3.4.0.tar.gz
  • Upload date:
  • Size: 992.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.6.1 requests/2.24.0 setuptools/49.2.1 requests-toolbelt/0.9.1 tqdm/4.51.0 CPython/3.9.0

File hashes

Hashes for ursina-3.4.0.tar.gz
Algorithm Hash digest
SHA256 a2b530d01edc4b0ce5a7f4581ef70bf04851a014cd4307baefbe1aa9aadc8a70
MD5 7062eccb137647d0ef10c29c35f61b70
BLAKE2b-256 517fc0a354946bffb987f153b667e46fd7545059628753ad42bb8e8f5ce99fa3

See more details on using hashes here.

File details

Details for the file ursina-3.4.0-py3-none-any.whl.

File metadata

  • Download URL: ursina-3.4.0-py3-none-any.whl
  • Upload date:
  • Size: 1.1 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.6.1 requests/2.24.0 setuptools/49.2.1 requests-toolbelt/0.9.1 tqdm/4.51.0 CPython/3.9.0

File hashes

Hashes for ursina-3.4.0-py3-none-any.whl
Algorithm Hash digest
SHA256 e61e6e35d53c0f7e240e256ed4bafd2c0f4b0136f1b04a7f06215f4b351f0199
MD5 af6f6bab06fa3b13d4c84af2bd6a0890
BLAKE2b-256 d189b35be7ef51e77f05cd0be279cc29e9616da36d2388121dea7772b8a2f0c1

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page