Skip to main content

Simple and fast 2D game engine based on pygame-ce and SDL2.

Project description

EN: Vertex2D is a 2D game engine built on pygame-ce and SDL2. It provides a simple and clean API for creating games — scenes, sprites, camera, input, text and UI elements out of the box. The engine handles all the boilerplate: window creation, rendering, input processing and scene management. Designed to be lightweight and easy to pick up, so a project can go from zero to a running game in minutes.

Install: pip install vertex2d Requires: pygame-ce >= 2.3.0, miniaudio >= 1.61

Quick Start: from Vertex import Build

vertex = Build("My Game", screen_size=(700, 700), size_window_standart=(700, 700), resize=True, ot_pos=False, SafeMode=True, logs=False, DeveLoperMode=False, vsync=True)

class MyGame: def init(self): self.api = vertex.GetFell() self.api.SetFPSValue(60) self.player = self.api.Square("Player", (255, 0, 0), 350, 350, 150, 150, 0, static=False, center=True)

def render(self):
    self.api.NewCanvas((75, 75, 75, 255))
    self.api.AllDraw()
    self.api.ClockUse(stabilize_fps=True)
    self.api.Draw()

def update(self):
    dt = self.api.Get_DeltaTime()
    self.api.Event( { "quit": self.api.End } )
    self.api.UpdateButtonPressedHow()

    self.player.MoveMent("w.a.s.d", 500 * dt)
    """ or:
    if self.api.ButtonPressed("left"): self.player.MoveX(-300 * dt)
    if self.api.ButtonPressed("right"): self.player.MoveX(300 * dt)
    if self.api.ButtonPressed("up"): self.player.MoveY(-300 * dt)
    if self.api.ButtonPressed("down"): self.player.MoveY(300 * dt)
    """

    self.api.AllUpdate()

def run(self):
    self.update()
    self.render()

vertex.NewScene("MyGame", MyGame) vertex.ChangeScene("MyGame") vertex.run() vertex.Destroy()

Telegram: @Teme20xx

RU: Vertex2D — это 2D игровой движок на базе pygame-ce и SDL2. Предоставляет простое и понятное API для создания игр — сцены, спрайты, камера, ввод, текст и UI элементы из коробки. Движок берёт на себя всю рутину: создание окна, рендеринг, обработку ввода и управление сценами. Создан лёгким и простым в освоении — от нуля до работающего проекта за считанные минуты.

Установка: pip install vertex2d Требования: pygame-ce >= 2.3.0, miniaudio>=1.61

Быстрый старт: from Vertex import Build

vertex = Build("My Game", screen_size=(700, 700), size_window_standart=(700, 700), resize=True, ot_pos=False, SafeMode=True, logs=False, DeveLoperMode=False, vsync=True)

class MyGame: def init(self): self.api = vertex.GetFell() self.api.SetFPSValue(60) self.player = self.api.Square("Player", (255, 0, 0), 350, 350, 150, 150, 0, static=False, center=True)

def render(self):
    self.api.NewCanvas((75, 75, 75, 255))
    self.api.AllDraw()
    self.api.ClockUse(stabilize_fps=True)
    self.api.Draw()

def update(self):
    dt = self.api.Get_DeltaTime()
    self.api.Event( { "quit": self.api.End } )
    self.api.UpdateButtonPressedHow()

    self.player.MoveMent("w.a.s.d", 500 * dt)
    """ или:
    if self.api.ButtonPressed("left"): self.player.MoveX(-300 * dt)
    if self.api.ButtonPressed("right"): self.player.MoveX(300 * dt)
    if self.api.ButtonPressed("up"): self.player.MoveY(-300 * dt)
    if self.api.ButtonPressed("down"): self.player.MoveY(300 * dt)
    """

    self.api.AllUpdate()

def run(self):
    self.update()
    self.render()

vertex.NewScene("MyGame", MyGame) vertex.ChangeScene("MyGame") vertex.run() vertex.Destroy()

Telegram: @Teme20xx

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

vertex2d-1.2.8.tar.gz (17.2 kB view details)

Uploaded Source

Built Distribution

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

vertex2d-1.2.8-py3-none-any.whl (16.0 kB view details)

Uploaded Python 3

File details

Details for the file vertex2d-1.2.8.tar.gz.

File metadata

  • Download URL: vertex2d-1.2.8.tar.gz
  • Upload date:
  • Size: 17.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.7

File hashes

Hashes for vertex2d-1.2.8.tar.gz
Algorithm Hash digest
SHA256 8c07def7994cf47587a3368878dbfd7adca87e58c222bd0c1eaacbd8cf5f3d4e
MD5 26c5ebbed70b730cea4f95f021092866
BLAKE2b-256 84359fc803db4b6d2a2fe45d3ee5d074d47666b1fb1f5c69e6e689a83a054fdd

See more details on using hashes here.

File details

Details for the file vertex2d-1.2.8-py3-none-any.whl.

File metadata

  • Download URL: vertex2d-1.2.8-py3-none-any.whl
  • Upload date:
  • Size: 16.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.7

File hashes

Hashes for vertex2d-1.2.8-py3-none-any.whl
Algorithm Hash digest
SHA256 f9318e4bc8eff4669fbcc9e5b23111feb8b3f076cd3aae912c1801d59ea27cbf
MD5 e0b0d145ee7475e6c8594f79582f7329
BLAKE2b-256 d49ffa97908ffb0b9c37e4e2d0f57f5c69aa22ad96b418ec07d197806b71d192

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