Lieber Besucher, herzlich willkommen bei: RPG Studio - Make your World real. Falls dies Ihr erster Besuch auf dieser Seite ist, lesen Sie sich bitte die Hilfe durch. Dort wird Ihnen die Bedienung dieser Seite näher erläutert. Darüber hinaus sollten Sie sich registrieren, um alle Funktionen dieser Seite nutzen zu können. Benutzen Sie das Registrierungsformular, um sich zu registrieren oder informieren Sie sich ausführlich über den Registrierungsvorgang. Falls Sie sich bereits zu einem früheren Zeitpunkt registriert haben, können Sie sich hier anmelden.

324

RubyMediaFramework - Eine kleine Engine

Bewertung:

Von ITgenie98, Donnerstag, 1. März 2018, 17:45

Endlich ist es soweit: der Build 1.0 darf das licht der welt erblicken! Doch wovon eigentlich?
Von der Ruby Engine die später mal meinen Maker betreiben soll, zumindest das Runtime.
(Name nur ein platzhalter, kann später noch geändert werden)

Doch was kann dieses teil denn schönes? Welche klassen und Module verbergen sich unter dessen haube?

  • [Modul] Graphics
    Das Basismodul für alle Grafischen Angelegenheiten. Enthalten sind ein paar klassen:

    • [Klasse] Window
      Die Basisklasse für Fenster. Von dieser muss eine Subklasse erstellt werden um überhaupt etwas zum einzeigen zu bekommen!
      Dafür habe ich mich etwas an Gosu gehalten um so etwas freundlicher zu ein bzw umsteigern zu sein.
    • [Klasse] Shader
      Klasse die einen Shader lädt und im speicher repräsentiert.
    • [Klasse] Image
      Einfache Basisklasse zum laden von Bildern und zum zeichnen von eben diesen.
    • [Klasse] GLenv
      (WIP) Klasse die opengl befehle enthält.
    • [Klasse] Font
      Klasse welche zum zeichnen von Text zuständig ist.

  • [Klasse] Sound
    Eine einfache klasse zum abspielen von sounds.
    Kann bis jetzt nur .ogg dateien laden.

    • [Methode] initialize(filename, volume, pitch, stream=true)
      Erstellt ein neues Sound objekt. Volume ist eine zahl im bereich von 0 bis 100. Pitch sollte für normales abspielen 1 sein.
      Wenn stream true ist, dann wird die datei in den speicher gestreamt. sollte es false sein, so wird die gesamte Datei auf einmal in den speicher geladen.
    • [Methode] play(loopcount=0)
      Spielt den Sound ab. Loopcount definiert wie oft der sound wiederholt werden soll. -1 wiederholt unendlich. 0 Spielt den Sound nur einmal ab.
      Ist der sound pausiert kann man ihn mittels dieser methode auch erneut starten.
    • [Methode] stop / pause
    • [Feld] volume / pitch

Der build ist für x86(32 bit) systeme sowie im Debug Modus kompiliert. Beim starten öffnet sich ein Konsolenfenster welches auch debug ausgaben enthalten kann.
Downloaden kann man sich das ganze hier.

Im archiv enthalten sind außerdem eine Readme mit den Lizenzen, sowie eine kleine Dokumentation, die über die hier abgebildete hinausgeht und noch einige sachen mehr erklärt wie z.b. Maus,Tastatur und Controller Input.

Lizenz der Engine:
This Software is Free to Use in any personal, educational or non-commercial use.
To use it in any kind of commercial Products ask the writer of the code for an License. (itgenie98{at}outlook{dot}com)
Your Products is commercial if you generate any form of income from it. For Example DLC's, inApp-purchases, merchandise, sell your application and so on.

Außerdem verwendet dieses Projekt folgende Bibliotheken: glew, glfw, stb (stb_image, stb_image_write, stb_vorbis) sowie openal!

Zum ausführen wird ein OpenGL und OpenAL fähiger PC benötigt ;)
Die Engine führt ein main script aus, dies muss immer in "./scripts/main.rb" liegen (relativ zur exe).

Ich freue mich auf feedback! Happy testing :D

Mfg IT8
  1. hier

Dieser Artikel wurde bereits 356 mal gelesen.


Kommentare (2)

  • 2

    Von ITgenie98 (Freitag, 2. März 2018, 08:35)

    Erst wollt ich ein "kleines" kommentar dazu schreiben, am ende ist da aber ein ganzer blog draus geworden... ups :D

    Es ist wie gesagt ein framework welches für alle möglichen multimedialen anwendungen verwendet werden kann. Ausgelegt soll es aber für spiele sein am ende.

  • 1

    Von Playm (Donnerstag, 1. März 2018, 22:06)

    Was was was?

    Wie hast Du das gemacht? Was genau ist es (wie greifen die Teile ineinander)?

Blog Navigation

Nächster Artikel

RubyMediaFramework - Etwas erklärung gefällig?

Von ITgenie98 (Freitag, 2. März 2018, 08:32)

Vorheriger Artikel

[RMXP] Autotiles und ihre ID's

Von ITgenie98 (Sonntag, 29. Oktober 2017, 20:19)