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.0.tar.gz (18.6 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.0-py3-none-any.whl (17.4 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: vertex2d-1.3.0.tar.gz
  • Upload date:
  • Size: 18.6 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.0.tar.gz
Algorithm Hash digest
SHA256 dc8fa80dccda225116a0d9dd9db53c02c2558427b74253c990941762c516c67c
MD5 8c85fb7ce4bbe7caf9e88b4d75c0b9b3
BLAKE2b-256 2b5b2e12d82d8e28d584731c3042acadf48cac74d8762d236fbea433d5fe780f

See more details on using hashes here.

File details

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

File metadata

  • Download URL: vertex2d-1.3.0-py3-none-any.whl
  • Upload date:
  • Size: 17.4 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.0-py3-none-any.whl
Algorithm Hash digest
SHA256 f92bebfcc7797d25745f4314f574baef6c2f2e825b321d4da154e2e9fc6449bf
MD5 91da0c96bb1a5939e71d536e8d4df04e
BLAKE2b-256 2e18899e8de6b9eb5ec306cfab13742cf2540ec10927a6f7270c456811d49687

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