Results 1 to 10 of 53

Thread: Luna Game Library - Simple & Elegant Game Programming

Hybrid View

Previous Post Previous Post   Next Post Next Post
  1. #1

    Luna Game Library - Simple & Elegant Game Programming

    luna.png

    Luna Game Library - Simple & Elegant Game Programming


    DOWNLOAD (2017.2.Alpha, 57.3MB - 2017/11/05)

    OVERVIEW
    Luna Game Library™ (LGL) is a 2D game library for PC's running Microsoft Windows® and uses Direct3D® for hardware accelerated rendering. It's robust, designed for easy use and suitable for making all types of 2D games and other graphic simulations.

    You access the features from a simple and intuitive procedural API (Luna.API) to allow you to rapidly and efficiently develop your graphics simulations. There is support for buffers, textures, sprites, sound, archives, tweeting, IAP, databases, remote highscores, video playback and much more.

    You can also use the thin, object oriented framework (Luna.Framework) to manage your game projects in a more structured, oop manner. You can define your game in terms of actors, where these actors live and are managed on an actor list. These actors can interact by sending messages and do collisions. All of this can be encapsulated into an application using the game class.

    FEATURES
    - Made in Delphi, for Delphi developers
    - Procedural low-level access plus higher level thin oop framework.
    - Uses SDL2 2D hardware rendering.
    - Uses 32bit surfaces and textures.
    - Free scaling, rotation, alpha blending and other special effects.
    - Windowed and fullscreen desktop modes.
    - Frame based timing support.
    - Memory mapped buffer support
    - Zip archive support (resourced loaded from archive or file system)
    - TrueType font support
    - Graphic primitives (lines, circles, rects, points).
    - Advanced polygon rendering (scale, rotate, control line segment visibility).
    - Advanced sprite management.
    - Polypoint collision system for fast precise collision detection.
    - Mouse and keyboard input management.
    - Unified audio system with support for WAV | MP3 | MID | OGG | MOD | IT | S3M | XM music formats.
    - Comprehensive math routines (vectors, angles, line intersection, clipping).
    - Log file support.
    - SQL database support (MySQL local & remote | SQLite local only).
    - High-level support for Entities.
    - Networking (reliable UDP) with support for object persistence.
    - Tweet (with media) directly to a twitter account
    - IAP support (in-app purchase using stripe.com)
    - Includes LunaArc, an archive utility for making compressed zip archives for use in your game.
    Last edited by drezgames; 06-11-2017 at 12:26 AM.

  2. #2
    Looks interesting (reminds me a bit of Pulsar2D ). Hope to see some live demos soon. According to your logo, do you plan to integrate Lua support?
    Last edited by Cybermonkey; 17-04-2017 at 08:35 AM.
    Best regards,
    Cybermonkey

  3. #3
    Sup bro. How have you been? Hope all is well. Thanks. Yea, I forgot to mention (sorry about that) was also inspired by your projects as well. I will be working on examples and things this week. Oh, hehe, in the very beginning I had the idea of Lua integration thus the name/logo. Delphi starter is now free so it became less of a priority. Maybe at some point I may or if someone does it first.

  4. #4
    Thanks, I am fine (again...). Anyway, I am also still interested in your pascal wrapper for raylib.
    Best regards,
    Cybermonkey

  5. #5
    Oh yea, sorry I forgot. See your PM.

  6. #6
    New features added since last post:
    - Further refined the highscore code
    - Local and remote database support (local=SQLite3, remote=MySQL, unified as Database and DatabaseTable objecgts)
    - Polygon object
    - Polypoint auto-trace (can trace a sprite and apply a polygon around it. This will be used for fast polypoint collision detection)
    - Sprite object (can be organized as pages (texture) and images can be defined in grid or rect format)
    - FrameSpeed can be use to implement multiple timers in your project. For example you have the simulation running at 30 fps, but you want your sprite animation to update at 15 fps, you can do:
    Code:
    if FrameSpeed(mytimer, 15) then
    begin
    ...
    end;
    - FastText can now define a range of glyphs. For example 32-127, 'tm', '(c)' are automatically defined by default. Since the unicode range is HUGE i'm using a sparse array to manage the glyphs range. It's very efficient.

    Planned features to come:
    - Entity object (instance of a sprite, has position, can do collision, etc)
    - Actor object (instance of an entity, can live on a scene object in the game world, etc)
    - State machine for actors
    - More...

  7. #7
    Will you support android?

  8. #8
    Quote Originally Posted by turrican View Post
    Will you support android?
    Hi, in the very near term, no. After I get the API stable, the mid to long term goal is to support more platforms.

  9. #9
    Quote Originally Posted by turrican View Post
    Will you support android?
    Nice! If you need help on run with android linux I can help you. ZenGL is one of the best examples to follow

  10. #10
    Quote Originally Posted by turrican View Post
    Nice! If you need help on run with android linux I can help you. ZenGL is one of the best examples to follow
    NICE! Cool bro, thanks so much!

Tags for this Thread

Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •