Skip to content

Latest commit

 

History

22 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

RGFW

Jule bindings for RGFW.

RGFW is a cross platform lightweight simple-to-use window abstraction library for creating graphical programs or libraries.

Current RGFW version: v1.8.1

Graphics APIs

RGFW supports the OpenGL, Vulkan, Metal, and DirectX graphics APIs.

To enable a graphics API, the corresponding tags must be defined:

  • RGFW_OpenGL: for OpenGL API
  • RGFW_Vulkan: for Vulkan API
  • RGFW_Metal: for Metal API
  • RGFW_DirectX: for DirectX API

It does not provide full support. Mostly enable the necessary definitions in the header. For example, defining RGFW_OPENGL in C.

For OpenGL specifically, system-specific OpenGL linking is also added to the compilation command on Windows, Linux, and Darwin targets. In addition, some OpenGL helper functions provided by RGFW are implemented as well.

If no tag is provided, no graphics API is defined by default. This can be useful if you only plan to use Surface.

These tags only ensure that the relevant graphics API is applied to RGFW. The compilation command for the respective graphics API is your responsibility (or that of the package you are using).

Design Principles

Ease of development and performance are balanced priorities.

There is no guarantee that the entire RGFW API will be covered. Furthermore, the API is not stable. If any API variation occurs between RGFW releases, the API provided by Jule binding may also change. This should be considered before updating.

Because this is a binding and RGFW is written in C, Jule code cannot prevent memory errors and other issues that might occur on the C side. Therefore, you need to ensure that you use the binding correctly, as expected by RGFW.

This project was developed not only to serve developers a RGFW binding, but also to demonstrate the C/C++ interoperability capabilities of the Jule programming language and to show how Integrated Jule can be used in an idiomatic way.

Contributing

Any contribution to the project is greatly appreciated, whether it's a typo fix, a brand new feature, or a bug report. This project uses GitHub issues for things like proposals, bug reports, and security vulnerabilities.

Please read the Julenour Code of Conduct and the contribution guidelines before contributing.

License

This project is distributed under the terms of the BSD 3-Clause license.
See License Details

About

Jule bindings for RGFW

Topics

Resources

Contributing

Stars

2 stars

Watchers

1 watching

Forks

Releases

Contributors

Languages