Dear visitor, welcome to RPG Studio - Make your World real. If this is your first visit here, please read the Help. It explains in detail how this page works. To use all features of this page, you should consider registering. Please use the registration form, to register here or read more information about the registration process. If you are already registered, please login here.

  • ITgenie98

    Rekrut

    You have to register first, to connect to this user.

324

RubyMediaFramework - Eine kleine Engine

Rating:

by ITgenie98, Thursday, March 1st 2018, 5:45pm

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.
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

This article has been read 465 times.


Comments (2)

  • 2

    by ITgenie98 (Friday, March 2nd 2018, 8:35am)

    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

    by Playm (Thursday, March 1st 2018, 10:06pm)

    Was was was?

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

Blog navigation

Next article

RubyMediaFramework - Etwas erklärung gefällig?

by ITgenie98 (Friday, March 2nd 2018, 8:32am)

Previous article

[RMXP] Autotiles und ihre ID's

by ITgenie98 (Sunday, October 29th 2017, 8:19pm)