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(dt)

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

vertex.NewScene("MyGame", MyGame) vertex.ChangeScene("MyGame")#SetScene("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(dt)

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

vertex.NewScene("MyGame", MyGame) vertex.ChangeScene("MyGame")#SetScene("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.3.10.tar.gz (22.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.3.10-py3-none-any.whl (21.1 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: vertex2d-1.3.10.tar.gz
  • Upload date:
  • Size: 22.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.3.10.tar.gz
Algorithm Hash digest
SHA256 1b43fb2c4056f5c929fc324d0a588141d4c57c7f17060e4d95cbae8f51924db7
MD5 8443b66f127faabd26a7d24bb22294fb
BLAKE2b-256 967b8e01f7c164df74cfaf6a7c57a58874abd729eb8c800f60b71b52b9591aaf

See more details on using hashes here.

File details

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

File metadata

  • Download URL: vertex2d-1.3.10-py3-none-any.whl
  • Upload date:
  • Size: 21.1 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.3.10-py3-none-any.whl
Algorithm Hash digest
SHA256 e99022b83504adc99860599d38f214f1818e85384a548ed3d523af99050b7b31
MD5 4ab69bce02097b70c72a56a4b16d36b3
BLAKE2b-256 f81fa609c0416ff5248d3ebc1ca6835766b8af17a0c3facd7e9945a0eb3d4af7

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