All Projects → pokepetter → Ursina

pokepetter / Ursina

Licence: mit
A game engine powered by python and panda3d.

Programming Languages

python
139335 projects - #7 most used programming language

Projects that are alternatives of or similar to Ursina

Blue Flame Engine
A 3D/2D game engine that supports both DirectX11 and OpenGL 4.5
Stars: ✭ 129 (-82.33%)
Mutual labels:  game-development, game-engine, 3d-game-engine
Flaxapi
Old repository with C# Editor and C# API for creating games in Flax Engine
Stars: ✭ 131 (-82.05%)
Mutual labels:  game-development, game-engine, 3d-game-engine
Cryengine
CRYENGINE is a powerful real-time game development platform created by Crytek.
Stars: ✭ 580 (-20.55%)
Mutual labels:  game-development, game-engine, 3d-game-engine
Dmitrysengine
[abandoned] C99 cross-platform 3D game engine with absolute minimum of external dependencies
Stars: ✭ 119 (-83.7%)
Mutual labels:  game-development, game-engine, 3d-game-engine
Vulkan Renderer
A new 3D game engine using modern C++ and Vulkan API
Stars: ✭ 205 (-71.92%)
Mutual labels:  game-development, game-engine, 3d-game-engine
Daemon
The Dæmon game engine. With some bits of ioq3 and XreaL.
Stars: ✭ 136 (-81.37%)
Mutual labels:  game-development, game-engine, 3d-game-engine
Roygbiv
A 3D engine for the Web
Stars: ✭ 499 (-31.64%)
Mutual labels:  game-development, game-engine, 3d-game-engine
Glas
WebGL in WebAssembly with AssemblyScript
Stars: ✭ 278 (-61.92%)
Mutual labels:  game-development, game-engine, 3d-game-engine
Alimer
Cross-platform game engine.
Stars: ✭ 172 (-76.44%)
Mutual labels:  game-development, game-engine, 3d-game-engine
Fxgl
Stars: ✭ 2,378 (+225.75%)
Mutual labels:  game-development, game-engine, 3d-game-engine
Lumixengine
3D C++ Game Engine - yet another open source game engine
Stars: ✭ 2,604 (+256.71%)
Mutual labels:  game-development, game-engine, 3d-game-engine
Etengine
Realtime 3D Game-Engine with a focus on space sim. Written in C++ 14
Stars: ✭ 408 (-44.11%)
Mutual labels:  game-development, game-engine, 3d-game-engine
Castle Engine
Cross-platform (desktop, mobile, console) 3D and 2D game engine supporting many asset formats (glTF, X3D, Spine...) and using modern Object Pascal
Stars: ✭ 475 (-34.93%)
Mutual labels:  game-engine, 3d-game-engine
Etlegacy Deprecated
Archived repository. For current repo, see: https://github.com/etlegacy/etlegacy
Stars: ✭ 470 (-35.62%)
Mutual labels:  game-development, game-engine
Gameproject3
游戏服务器框架,网络层分别用SocketAPI、Boost Asio、Libuv三种方式实现, 框架内使用共享内存,无锁队列,对象池,内存池来提高服务器性能。还包含一个不断完善的Unity 3D客户端,客户端含大量完整资源,坐骑,宠物,伙伴,装备, 这些均己实现上阵和穿戴, 并可进入副本战斗,多人玩法也己实现, 持续开发中。
Stars: ✭ 655 (-10.27%)
Mutual labels:  game-development, game-engine
Tetra
🎮 A simple 2D game framework written in Rust
Stars: ✭ 492 (-32.6%)
Mutual labels:  game-development, game-engine
Fheroes2
Free implementation of Heroes of Might and Magic II game engine
Stars: ✭ 471 (-35.48%)
Mutual labels:  game-development, game-engine
Engine Native
Native engine for Cocos Creator
Stars: ✭ 488 (-33.15%)
Mutual labels:  game-development, game-engine
Acl
Animation Compression Library
Stars: ✭ 716 (-1.92%)
Mutual labels:  game-development, game-engine
Handmade Math
A simple math library for games and computer graphics. Compatible with both C and C++.
Stars: ✭ 517 (-29.18%)
Mutual labels:  game-development, game-engine

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 run 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.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].