RetroNick2020 / raylib-pas

A complete header translation (binding) of the raylib 2.6.0-dev to Pascal. Without any funky helper functions for memory alignment issues. Inspired and partially based on the drezgames/raylib-pascal binding, however a little cleaner and more recent, with FPC 3.0.4 support.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

raylib-pas A Pascal Binding for Raylib 3.0.0 (master)

raylib-pas is a header translation of the Raylib Game Development Library for the FreePascal Project.

Build

You can execute make on GNU+Linux, macOS and Windows.

Shared or Static Library

You will need to source raylib for your platform.

We assume you linked or copied the raylib shared(*.so,*.dylib,*.dll) or static(*.a) library for your platform into ./bin.

If you want to use the static library use make as follow:

make RAYLIB_LIBTYPE=STATIC

Or to build binaries you can debug:

make DEBUG=TRUE

GNU+Linux

If you use the shared library you must specify where to source the libraylib.so file.

export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:. # adjust the export to search for the .so in the local path

If you want to link to the static library you must copy libglfw3.a and libraylib.a into ./bin.

Windows

To use make it must be in your %PATH%. fpc includes make.exe in the bin directory.

set PATH=%PATH%;C:\fpc\3.0.4\bin\x86_64-win64

Examples

Try some of the ported c to fpc examples in examples/core, examples/models, examples/audio etc.

Thanks to drezgames/raylib-pascal for the examples. Originally delphi, now fpc.

TODO

  • Eventually we will be doing some work to compile the project with static linking. Hopefully this will allow for more cross-platform compilation of raylib-pas. Mainly for Android and eventually iOS when raylib supports that.
  • Add Android and WebAssembly support.
  • Port/Create more examples and games.
  • Include Binary Distribution of "Supported" Raylib Shared Libraries with this binding.

About

A complete header translation (binding) of the raylib 2.6.0-dev to Pascal. Without any funky helper functions for memory alignment issues. Inspired and partially based on the drezgames/raylib-pascal binding, however a little cleaner and more recent, with FPC 3.0.4 support.


Languages

Language:Pascal 55.7%Language:GLSL 43.0%Language:Shell 0.7%Language:Batchfile 0.4%Language:Makefile 0.3%