A 3D and 2D game engine for Python
Website | Discord | Twitter | Patreon | Sponsor
An easy to use game engine/framework for python.
Install Python 3.10 or newer.
Open cmd/terminal and type:
pip install ursinaTo get the newest, in development version from GitHub, install it like this:
pip install git+https://github.com/pokepetter/ursina.gitIf you want to easily edit the source, it's recommended to clone the git repo and pip install with --editable flag like this. Make sure you have git installed.
git clone https://github.com/pokepetter/ursina.git
cd ursina
pip install --editable .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. To use a specific Python version, use:
python3.xx -m pip install ursinaWhere 3.xx is the version you want to target.
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.There are other examples in the samples folder, or in samples website
Ursina games are made by writing Python code. You can use any text editor you want, but personally I like to use Atom.
ursina_game.pyfrom 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.Run this in the terminal start the game:
python ursina_game.py... or run it with your editor/IDE of choice.
You can now move the orange box around with 'a' and 'd'!
To close the window, you can by default, press control+shift+alt+q or press the red x.
Found a bug? Posting it in Issues. Fixed a bug? Make a pull request.
…No open issues yet, or sync has not completed.