--- id: ursina version: "8.3.0" license: MIT license_treatment: permissive maintenance: active --- # ursina — An easy to use game engine/framework for python. License: permissive · Maintenance: active · Downloads: 131.3K/mo ## What it is and what it does Ursina is a high-level Python game engine that wraps Panda3D to make 3D game development more accessible. It provides an entity-component-like system where you define game objects as Entities with properties like model, color, position, and collision, then update them in a standard game loop. The engine handles rendering, input (keyboard/mouse), physics collision, and window management automatically. You write games entirely in Python without needing to learn a separate engine editor or scripting language. Ursina includes built-in 3D models, fonts, and audio clips, and supports loading external assets (textures, models from Blender). It's designed for rapid prototyping and learning, with examples ranging from simple cubes to platformers and Minecraft-like voxel games. The active community and documentation make it suitable for hobbyists, students, and developers exploring game development in Python. Use it for: - Build a simple 3D platformer or puzzle game without learning a complex engine - Create educational visualizations or interactive 3D simulations in Python - Prototype game mechanics quickly before committing to a larger engine - Develop a voxel-based or grid-based game (e.g., Minecraft-style clone) - Make a 2D or 3D game jam entry using pure Python code ## Worth the install? AI-flagged interpretation of the facts above — verify before relying. Ursina is a Python game engine built on Panda3D that lets you create 3D games and interactive applications by writing Python code, with built-in support for entities, collision, input handling, and rendering. Yes, if you want to make 3D games in Python with minimal setup friction. Ursina is actively maintained, permissively licensed, has no known vulnerabilities, and low install friction. It's well-suited for learning, prototyping, and small-to-medium indie projects. Not recommended if you need AAA-grade performance, advanced physics, or a mature ecosystem of third-party plugins—consider Godot or Unreal for those. ## Install pip install ursina uv add ursina poetry add ursina ## Installing ursina Before you install: Low install friction; distributed as a pure Python wheel. Requires Panda3D and five other runtime dependencies (pillow, pyperclip, screeninfo, panda3d-gltf, sswg), all available on PyPI. Actively maintained with recent commits and no known vulnerabilities. License in practice: MIT license is permissive; you can use, modify, and distribute ursina-based projects with minimal legal restriction, including in commercial applications. Quickstart: pip install ursina from ursina import * app = Ursina() player = Entity(model='cube', color=color.orange, scale_y=2) def update(): player.x += held_keys['d'] * .1 player.x -= held_keys['a'] * .1 app.run() Requires Python 3.12 or newer. Panda3D may require a C++ compiler and system graphics libraries on some platforms. Verify before relying: - Whether psd-tools and blender are optional or required for .psd and .blend file support - Performance characteristics and scalability limits for complex 3D scenes - Cross-platform support details (Windows, macOS, Linux compatibility) ## Package facts - License: MIT (permissive) - Python support: supports_current - Install friction: low - Maintenance: active - Downloads: 131.3K/month (top 15,000 on PyPI) - Known vulnerabilities: none known ## Tags python game engine, 3d game development python, panda3d wrapper framework, easy game engine python, interactive 3d applications, python game framework, entity-based game engine, game-engine, 3d-graphics, python-native [View on SkillFed](https://skillfed.io/packages/ursina) · [View on PyPI](https://pypi.org/project/ursina/)