Skip to main content

Simple: lightweight C++/OpenGL engine with a Python-first API

Project description

Simple

Simple is a small, production-oriented game/animation engine:

  • Python-first API (import simple)
  • C++/OpenGL 3.3 core for rendering + the main loop
  • A lightweight editor for .sim projects with Play-in-Editor

Quick start (10 lines)

from simple import Scene, Cube

scene = Scene()
cube = Cube()
scene.add(cube)
scene.run()

What you get

  • Rendering: lit 3D cubes (Phong-ish directional light), optional textures (.ppm)
  • Scene system: Scene + entities (Cube)
  • Camera: view + perspective projection
  • Input: keyboard + mouse (GLFW)
  • HUD: scene.draw_text(...)
  • Debug gizmos: scene.draw_line3d(...)
  • Screenshots: scene.screenshot("frame.ppm")
  • Editor: create/open .sim projects, edit objects, Play, Auto Reload

Install

Pip (end users)

python -m pip install simple-game-engine

From source (contributors)

python -m pip install -U pip
python -m pip install -e .

Simple Editor

Run:

simple-editor

Build a standalone editor executable:

python -m pip install .[editor]
python tools/build_editor.py

Examples

Run any example:

python examples/cube_arena_hud.py
python examples/textured_cube.py
python examples/pro_debug_hud.py

Documentation

  • Engine docs: docs/index.md
  • Editor docs: docs/editor.md

Release (PyPI Trusted Publisher)

  • Tag vX.Y.Z to publish wheels + sdist via GitHub Actions.
  • Setup details: docs/getting_started.md

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

simple_game_engine-1.1.1.tar.gz (54.7 kB view details)

Uploaded Source

Built Distributions

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

simple_game_engine-1.1.1-cp313-cp313-win_amd64.whl (453.2 kB view details)

Uploaded CPython 3.13Windows x86-64

simple_game_engine-1.1.1-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (631.4 kB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ x86-64

simple_game_engine-1.1.1-cp313-cp313-macosx_11_0_arm64.whl (351.1 kB view details)

Uploaded CPython 3.13macOS 11.0+ ARM64

simple_game_engine-1.1.1-cp313-cp313-macosx_10_13_x86_64.whl (361.2 kB view details)

Uploaded CPython 3.13macOS 10.13+ x86-64

simple_game_engine-1.1.1-cp312-cp312-win_amd64.whl (453.2 kB view details)

Uploaded CPython 3.12Windows x86-64

simple_game_engine-1.1.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (631.2 kB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ x86-64

simple_game_engine-1.1.1-cp312-cp312-macosx_11_0_arm64.whl (351.0 kB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

simple_game_engine-1.1.1-cp312-cp312-macosx_10_13_x86_64.whl (361.2 kB view details)

Uploaded CPython 3.12macOS 10.13+ x86-64

simple_game_engine-1.1.1-cp311-cp311-win_amd64.whl (452.0 kB view details)

Uploaded CPython 3.11Windows x86-64

simple_game_engine-1.1.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (632.0 kB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ x86-64

simple_game_engine-1.1.1-cp311-cp311-macosx_11_0_arm64.whl (351.5 kB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

simple_game_engine-1.1.1-cp311-cp311-macosx_10_9_x86_64.whl (361.7 kB view details)

Uploaded CPython 3.11macOS 10.9+ x86-64

simple_game_engine-1.1.1-cp310-cp310-win_amd64.whl (450.9 kB view details)

Uploaded CPython 3.10Windows x86-64

simple_game_engine-1.1.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (630.0 kB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ x86-64

simple_game_engine-1.1.1-cp310-cp310-macosx_11_0_arm64.whl (350.3 kB view details)

Uploaded CPython 3.10macOS 11.0+ ARM64

simple_game_engine-1.1.1-cp310-cp310-macosx_10_9_x86_64.whl (360.2 kB view details)

Uploaded CPython 3.10macOS 10.9+ x86-64

simple_game_engine-1.1.1-cp39-cp39-win_amd64.whl (457.1 kB view details)

Uploaded CPython 3.9Windows x86-64

simple_game_engine-1.1.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (630.3 kB view details)

Uploaded CPython 3.9manylinux: glibc 2.17+ x86-64

simple_game_engine-1.1.1-cp39-cp39-macosx_11_0_arm64.whl (350.4 kB view details)

Uploaded CPython 3.9macOS 11.0+ ARM64

simple_game_engine-1.1.1-cp39-cp39-macosx_10_9_x86_64.whl (360.4 kB view details)

Uploaded CPython 3.9macOS 10.9+ x86-64

File details

Details for the file simple_game_engine-1.1.1.tar.gz.

File metadata

  • Download URL: simple_game_engine-1.1.1.tar.gz
  • Upload date:
  • Size: 54.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for simple_game_engine-1.1.1.tar.gz
Algorithm Hash digest
SHA256 7a592f869e7e49397cd36ed7e9eb90ec00f8387e1d4a7f01adce5a1912a7bb8d
MD5 6b5485b973f0fd4c6a9efd7dddb63ac5
BLAKE2b-256 e610b463aa09951b3e910889587feea5615d9c9ca4c08e1540c8a9f94704d8a9

See more details on using hashes here.

Provenance

The following attestation bundles were made for simple_game_engine-1.1.1.tar.gz:

Publisher: publish.yml on LegedsDaD/Simple-The_Game_Engine

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file simple_game_engine-1.1.1-cp313-cp313-win_amd64.whl.

File metadata

File hashes

Hashes for simple_game_engine-1.1.1-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 6136a721ad245655a9fd9d92677672cd7cf07580386edf2ac5161f353739fd21
MD5 8f14c5f37458591a0e4c999bccc246cd
BLAKE2b-256 4f74b1f70b3c0098c1bd2aa703bf346246d5540b4a9f94e3f4d8f3e175c3bd8b

See more details on using hashes here.

Provenance

The following attestation bundles were made for simple_game_engine-1.1.1-cp313-cp313-win_amd64.whl:

Publisher: publish.yml on LegedsDaD/Simple-The_Game_Engine

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file simple_game_engine-1.1.1-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for simple_game_engine-1.1.1-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 68ed5989485ca4c45199cc39789afd2e5673809bb6c9f10ddf325a91e2d3bd31
MD5 ad06bbfcb35e300a65c83ac3d94104e8
BLAKE2b-256 8b5393b116d6054f17a29afec5ebe4b361169b5f955cf42214734f3799558512

See more details on using hashes here.

Provenance

The following attestation bundles were made for simple_game_engine-1.1.1-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: publish.yml on LegedsDaD/Simple-The_Game_Engine

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file simple_game_engine-1.1.1-cp313-cp313-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for simple_game_engine-1.1.1-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 fd50f20a86eb2372a3003ea63fffc94d4065b09cbee0be42ecd57e7d6a0a8c1e
MD5 86af1a682ea2fb08ad4c23667e370be5
BLAKE2b-256 6bd76fc448fe088cdecc19f0e035de0de27cf4238838d62d8b7f0f0e8bb9fc37

See more details on using hashes here.

Provenance

The following attestation bundles were made for simple_game_engine-1.1.1-cp313-cp313-macosx_11_0_arm64.whl:

Publisher: publish.yml on LegedsDaD/Simple-The_Game_Engine

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file simple_game_engine-1.1.1-cp313-cp313-macosx_10_13_x86_64.whl.

File metadata

File hashes

Hashes for simple_game_engine-1.1.1-cp313-cp313-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 fd14305e2671b9450a6744a39f1d21a1aa71e3f43dca5bce68f537fc2689422e
MD5 e0b1002265c7b6d18bf6415cde6070be
BLAKE2b-256 3b6bd52613e44eed414d0e37247c1f7d1e92cf45edde8e40d7ede574f4def031

See more details on using hashes here.

Provenance

The following attestation bundles were made for simple_game_engine-1.1.1-cp313-cp313-macosx_10_13_x86_64.whl:

Publisher: publish.yml on LegedsDaD/Simple-The_Game_Engine

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file simple_game_engine-1.1.1-cp312-cp312-win_amd64.whl.

File metadata

File hashes

Hashes for simple_game_engine-1.1.1-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 34119f2696735ec5ce0affa4bd9619fd1765fcbc54c610d109c8ea86b2573ae8
MD5 1efc91ddba96499c82ac23c0b83186d3
BLAKE2b-256 fffa003f1c6b1032607bd8f6c27b09845dabf0eaccb54d0e0e806446e1e0c106

See more details on using hashes here.

Provenance

The following attestation bundles were made for simple_game_engine-1.1.1-cp312-cp312-win_amd64.whl:

Publisher: publish.yml on LegedsDaD/Simple-The_Game_Engine

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file simple_game_engine-1.1.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for simple_game_engine-1.1.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 21c4a134346acd56be740918160f9b9b8c117c0216df20f1d23892691f4e5a48
MD5 b2fbfbb7995f13f27caa3605a81085f4
BLAKE2b-256 0476965e2922093bc7d278f69f75c0e0e00573728b2227c7cf2ba51500d60c8f

See more details on using hashes here.

Provenance

The following attestation bundles were made for simple_game_engine-1.1.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: publish.yml on LegedsDaD/Simple-The_Game_Engine

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file simple_game_engine-1.1.1-cp312-cp312-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for simple_game_engine-1.1.1-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 451d6c41a4ce04b4474f784ce15720242b144d94da3c1e256049f5b6bf199be4
MD5 b997a4a0c959d848ab322d58a2b83719
BLAKE2b-256 7efdc91e20faf1f568f6ed372bee42e2761bf26324513d55e4a3640ca5b2e50e

See more details on using hashes here.

Provenance

The following attestation bundles were made for simple_game_engine-1.1.1-cp312-cp312-macosx_11_0_arm64.whl:

Publisher: publish.yml on LegedsDaD/Simple-The_Game_Engine

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file simple_game_engine-1.1.1-cp312-cp312-macosx_10_13_x86_64.whl.

File metadata

File hashes

Hashes for simple_game_engine-1.1.1-cp312-cp312-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 4d55c21fe6f85dccfae324457bdc7795b16b67e7690e2eb9f04a6639ad6b98aa
MD5 8426a95b4131ca74b94d3f46abbb9cf0
BLAKE2b-256 ebfea76bc25ab99a667c54088501f4fc2e344c10ff68ab0bca178131679ef9fc

See more details on using hashes here.

Provenance

The following attestation bundles were made for simple_game_engine-1.1.1-cp312-cp312-macosx_10_13_x86_64.whl:

Publisher: publish.yml on LegedsDaD/Simple-The_Game_Engine

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file simple_game_engine-1.1.1-cp311-cp311-win_amd64.whl.

File metadata

File hashes

Hashes for simple_game_engine-1.1.1-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 78df043e562e5fa0a6622dbd8119946919c699838aa052bea4956ca6dc9ea1d0
MD5 d614f7a122ce35653fd54b62f468903d
BLAKE2b-256 a16f7a56e82c5b4e5785f3b09cb0538cf7c396178dc91a1b69b06833e6b90aef

See more details on using hashes here.

Provenance

The following attestation bundles were made for simple_game_engine-1.1.1-cp311-cp311-win_amd64.whl:

Publisher: publish.yml on LegedsDaD/Simple-The_Game_Engine

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file simple_game_engine-1.1.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for simple_game_engine-1.1.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 dd82dc27827c885fe87e5a24cfac349c657ba4b033eceee1b7306ad06501134a
MD5 34965166e5aed1e4fd05b22bb80603b6
BLAKE2b-256 7f84a8ef3a706963ac459847c59673bf3bfd687dd2a5426d498cc80cefcc127d

See more details on using hashes here.

Provenance

The following attestation bundles were made for simple_game_engine-1.1.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: publish.yml on LegedsDaD/Simple-The_Game_Engine

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file simple_game_engine-1.1.1-cp311-cp311-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for simple_game_engine-1.1.1-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 a4568a457f97a0e6b8ed1ed6a19c61b116e99930e4963964b56929a4390ec8ac
MD5 81802da8a362db9095fde122a7922411
BLAKE2b-256 910e6f125d1be29b0eb42d24cc80e73de5572feb81774bc699052fc6fb3f1e77

See more details on using hashes here.

Provenance

The following attestation bundles were made for simple_game_engine-1.1.1-cp311-cp311-macosx_11_0_arm64.whl:

Publisher: publish.yml on LegedsDaD/Simple-The_Game_Engine

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file simple_game_engine-1.1.1-cp311-cp311-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for simple_game_engine-1.1.1-cp311-cp311-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 dd5b8b3e2edbb34586ff9a564b9f04d2e49d08d83c52576d3175686bdae42462
MD5 8a3a47d20c2dae9a37826691fd980d25
BLAKE2b-256 7f9638e705e3952100e15828f1e41dead525a8f753f45574e72c63a076c0046d

See more details on using hashes here.

Provenance

The following attestation bundles were made for simple_game_engine-1.1.1-cp311-cp311-macosx_10_9_x86_64.whl:

Publisher: publish.yml on LegedsDaD/Simple-The_Game_Engine

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file simple_game_engine-1.1.1-cp310-cp310-win_amd64.whl.

File metadata

File hashes

Hashes for simple_game_engine-1.1.1-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 4e1f26454a8041fb759001a663195cb521c939f6ae0f64ff645a1ae100d71dc8
MD5 53b206f85f43b38c5fe2caee7af94064
BLAKE2b-256 e2f489fbfb40c5eafcb55e433a71fb53e659629f2a4ebfc3b6d0c6e3a4bc8a83

See more details on using hashes here.

Provenance

The following attestation bundles were made for simple_game_engine-1.1.1-cp310-cp310-win_amd64.whl:

Publisher: publish.yml on LegedsDaD/Simple-The_Game_Engine

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file simple_game_engine-1.1.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for simple_game_engine-1.1.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 99b665839cd0aa9d602c1185c1e6adcc57a610597775ee8f1c97ec67561cff57
MD5 f9162184002afc6bc90c1f8cd05ab0c9
BLAKE2b-256 fa435cb6b73350d90b894a1b4b9a0b357d6c3663f95554751508ecc1b89acb4c

See more details on using hashes here.

Provenance

The following attestation bundles were made for simple_game_engine-1.1.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: publish.yml on LegedsDaD/Simple-The_Game_Engine

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file simple_game_engine-1.1.1-cp310-cp310-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for simple_game_engine-1.1.1-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 5dd0d2aac76d00326e704e47370df6e8637c26dee84d88cc88754d14cea253c2
MD5 e626c95985ccf8aad9db51f74585a78c
BLAKE2b-256 ef71ef240f31f611df5039112675b59d24ab54b51bb729ee861dbb221858cae9

See more details on using hashes here.

Provenance

The following attestation bundles were made for simple_game_engine-1.1.1-cp310-cp310-macosx_11_0_arm64.whl:

Publisher: publish.yml on LegedsDaD/Simple-The_Game_Engine

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file simple_game_engine-1.1.1-cp310-cp310-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for simple_game_engine-1.1.1-cp310-cp310-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 6d744f7826276c5ad370073975a382827ff742c351810595bd6df10746ed16d1
MD5 4263fdb654fcbc094f0903bdfc1f73bb
BLAKE2b-256 d04e95cced5ae404f54e72976fcfd48328b344997c343b50c45f6357e613eac4

See more details on using hashes here.

Provenance

The following attestation bundles were made for simple_game_engine-1.1.1-cp310-cp310-macosx_10_9_x86_64.whl:

Publisher: publish.yml on LegedsDaD/Simple-The_Game_Engine

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file simple_game_engine-1.1.1-cp39-cp39-win_amd64.whl.

File metadata

File hashes

Hashes for simple_game_engine-1.1.1-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 7b6e291a7cced94dfe61833ee5b5b23a0291a0dd5481c5f3dae386c2c64d75f8
MD5 2a2e1a8c4069a53b1881379d2cf65ccb
BLAKE2b-256 170ab83820a651c3b8838d545650c46f0cf9c5fa347577e8e7a79070e9c51780

See more details on using hashes here.

Provenance

The following attestation bundles were made for simple_game_engine-1.1.1-cp39-cp39-win_amd64.whl:

Publisher: publish.yml on LegedsDaD/Simple-The_Game_Engine

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file simple_game_engine-1.1.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for simple_game_engine-1.1.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 385ec8f4a453fc53b5d9df8beaead738d4ff05569b7dd02a5520cae05b0f8e79
MD5 f882d1a0990068755af3bef900526e53
BLAKE2b-256 8c71996fb07b0297b1b29511a4627b69a789585be13761f989202a2d44ff950e

See more details on using hashes here.

Provenance

The following attestation bundles were made for simple_game_engine-1.1.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: publish.yml on LegedsDaD/Simple-The_Game_Engine

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file simple_game_engine-1.1.1-cp39-cp39-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for simple_game_engine-1.1.1-cp39-cp39-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 35bd3a4dcda2128851bdd6d4fa18688645ff4a510b5b9f3574a940ca409af8ac
MD5 702cb607af5a5221cd8ff6b00a578e33
BLAKE2b-256 cf3b649429c51cf30614e4ba6609bd857d95018210e581b48970eb69d59068b3

See more details on using hashes here.

Provenance

The following attestation bundles were made for simple_game_engine-1.1.1-cp39-cp39-macosx_11_0_arm64.whl:

Publisher: publish.yml on LegedsDaD/Simple-The_Game_Engine

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file simple_game_engine-1.1.1-cp39-cp39-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for simple_game_engine-1.1.1-cp39-cp39-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 f490761caf3a288f3394b92f81ed4a9672f49ccb0d949cf4ccf0fc7dea33b833
MD5 fbca6c1cf51b492e27d34be140d6b479
BLAKE2b-256 56297a43fc40f4dc9ad290535400a6ff107b2d2376b2975aa534ac6a3d94c8e9

See more details on using hashes here.

Provenance

The following attestation bundles were made for simple_game_engine-1.1.1-cp39-cp39-macosx_10_9_x86_64.whl:

Publisher: publish.yml on LegedsDaD/Simple-The_Game_Engine

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

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