Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

OOP Library #4

Draft
wants to merge 110 commits into
base: main
Choose a base branch
from
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
110 commits
Select commit Hold shift + click to select a range
848d174
Initial work on OOP
Charadon Feb 2, 2024
824abd9
Added definitions for the color constants
Charadon Feb 2, 2024
9f697ac
Added a utility source code file.
Charadon Feb 2, 2024
00e0dc6
Finished Color Custom Object
Charadon Feb 2, 2024
68c8f42
I don't get it
Charadon Feb 3, 2024
d0b5022
Fixed issue with re-using the namespace of Raylib
Charadon Feb 3, 2024
620b978
Added Music object
Charadon Feb 3, 2024
c47a5ef
Added FileType namespace in Audio to make from_memory loads easier
Charadon Feb 3, 2024
80f74b6
Added some test resources, and added MasterVolume namespace
Charadon Feb 5, 2024
cdc58e7
Changed master volume to be part of the window object
Charadon Feb 5, 2024
d4f6476
Added missing LoadSoundAlias function
Charadon Feb 5, 2024
599bab2
Massive overhaul of the build system
Charadon Feb 6, 2024
97bf4e6
Removed debug file
Charadon Feb 6, 2024
df66359
Added options to raylib subproject
Charadon Feb 6, 2024
318ed62
Moved around some stuff in the raylib subproject, and added bunnymark…
Charadon Feb 7, 2024
4174bac
Added missing function
Charadon Feb 7, 2024
dc876a8
Re-created bunnymark in vala
Charadon Feb 7, 2024
12f01f9
Added Keyboard and Gamepad objects
Charadon Feb 7, 2024
e040f13
Added position property to Mouse object
Charadon Feb 7, 2024
aef1545
Fixed typo where y was assigned to y, instead of value being assigned…
Charadon Feb 7, 2024
7be4f30
Added screen width properties to Window object
Charadon Feb 7, 2024
79a10a7
Made bunnymark more OOP
Charadon Feb 7, 2024
51f5a67
Added a draw method that makes use of Vala's lambda feature
Charadon Feb 8, 2024
675db9c
Changed bunnymark to make use of new Window.draw() method, and switch…
Charadon Feb 8, 2024
1ba1b9a
Created bin2vala, a tool that allows you to easily embed binary files…
Charadon Feb 8, 2024
44479c3
bin2vala: Switch from hexidecimal to normal decimal. Saves a few byte…
Charadon Feb 8, 2024
39df134
bin2vala: Removed unneeded if statement
Charadon Feb 8, 2024
ffc238c
bin2vala: Minor fix
Charadon Feb 8, 2024
a69cf45
bin2vala: Made tabbing better. (Why must I do this?)
Charadon Feb 8, 2024
3226950
Added error handling to Window.
Charadon Feb 8, 2024
02c66fa
Fixed double free issue, and updated window.vala test to use new erro…
Charadon Feb 8, 2024
ed6c888
Seperated Input objects into their files.
Charadon Feb 8, 2024
6048037
Added enum for Keyboard Keys. Totally didn't use GPT to quickly write…
Charadon Feb 8, 2024
0c5c6b9
Added missing BORDERLESS_WINDOWED_MODE in ConfigFlags
Charadon Feb 8, 2024
d300005
Changed some KeyboardKey parameters to int
Charadon Feb 8, 2024
f6bdb8f
Added todo list
Charadon Feb 8, 2024
d6930c1
Done with mouse object
Charadon Feb 9, 2024
73c3cad
Added Clipboard object
Charadon Feb 9, 2024
01466dc
Began work on making raylib use GLib's logging system, but due to a b…
Charadon Feb 9, 2024
1aa8b36
Made Raylib use GLib Log functions. And added minimum size properties…
Charadon Feb 9, 2024
5b5d094
Added missing log levels
Charadon Feb 9, 2024
8745012
Added take_screenshot method to Window Object
Charadon Feb 10, 2024
f6c139b
Added docker compose file to speed up testing on a rolling release di…
Charadon Feb 10, 2024
bd7e890
Changed some parameter enums to int, and fixed a compile issue with o…
Charadon Feb 10, 2024
135d989
Removed rini, as GLib has it's own ini file handler (GLib.KeyFile)
Charadon Feb 10, 2024
4ea77b8
Gamepad.vala: Error message not contains name of controller.
Charadon Feb 11, 2024
40a2110
Added a bleeding edge dockerfile
Charadon Feb 11, 2024
d12ac16
Added ccache and fastestmirror to dockerfiles
Charadon Feb 11, 2024
ed5396d
See if base64 works in readme
Charadon Feb 11, 2024
b4328c8
It doesn't, but atleast I shrank the png size by 73%!
Charadon Feb 11, 2024
e11f937
Added position property to Window Object
Charadon Feb 13, 2024
1eac15b
Added touch object.
Charadon Feb 13, 2024
004abe7
raylib.vapi: Fixed confusing function name.
Charadon Feb 14, 2024
d27d943
Input/Touch.vala: Added gestures to touch object.
Charadon Feb 14, 2024
27b462a
Window.vala: Added get_time property
Charadon Feb 14, 2024
77ada2d
Window.vala: Added frame_time property
Charadon Feb 14, 2024
50d7ccf
raylib.vapi: Fixed function name error during linking
Charadon Feb 14, 2024
e6b343a
Window.vala: Added Cursor object in Window Object
Charadon Feb 14, 2024
8d8ab4b
Removed the Core namespace, as it was kind of redundant
Charadon Feb 14, 2024
7039005
Reshuffled the file tree
Charadon Feb 14, 2024
99e65d0
New Color Object
Charadon Feb 14, 2024
d207c05
raylib.vapi: Added the 5.0.0 automation functions
Charadon Feb 14, 2024
6da427f
Automation/EventList.vala: Began work on EventList object
Charadon Feb 14, 2024
7287316
Window.vala: Added dropped files stuff to Window Object
Charadon Feb 14, 2024
7ce525e
raylib.vapi: Fixed array length issue in FilePathList
Charadon Feb 14, 2024
89003bc
Colors.vala: NOW the predefined colors work.
Charadon Feb 14, 2024
93b28e1
Window.vala: Fixed oversight where I unloaded FilePathList before it …
Charadon Feb 14, 2024
994a781
meson.build: Added dropped file test. It'll print the file path in th…
Charadon Feb 14, 2024
fc9307c
tests/dropped.vala: Moved foreach to try block
Charadon Feb 14, 2024
b8e2596
Added the Automation stuff
Charadon Feb 19, 2024
ff6da29
Fixed typo
Charadon Feb 19, 2024
597d83e
Window.vala: Added scissors mode and a monitor array
Charadon Feb 19, 2024
8504e83
Window.vala: Added event waiting functions
Charadon Feb 19, 2024
a90668f
Window.vala: Added max height properties
Charadon Feb 19, 2024
f53c956
Window.vala: Fixed typo
Charadon Feb 19, 2024
2f2a2dc
Window.vala: Fixed segfault
Charadon Feb 19, 2024
cfc6d78
Removed test executables, and made the raylib subproject static
Charadon Feb 19, 2024
66e4189
Fixed typo
Charadon Feb 21, 2024
22bbf4d
Color.vala: Switched Color object to use new internal variable techni…
Charadon Feb 21, 2024
48f4c4d
Shapes/Vector2.vala: Switched object to use new internal variable tec…
Charadon Feb 21, 2024
ec02278
Started on Text/Font object
Charadon Feb 21, 2024
491ca7b
Added core_basic_window example, and a game template.
Charadon Feb 21, 2024
1d91928
Update gitignore
Charadon May 16, 2024
8efbd54
Removed vscode files
Charadon May 16, 2024
4795b34
Added some MacOS stuff to Raylib's meson.build.
Charadon May 16, 2024
b8bf23c
Added comment on how to use bin2vala
Charadon May 16, 2024
5a17df1
Added Version constant and added a newline to the license.
Charadon May 16, 2024
ca9b9bb
Changed Reverse DNS to be the git repo rather than iotib.net
Charadon May 16, 2024
c23d295
Changed the destroy window message to a debug message.
Charadon May 16, 2024
c112a16
Changed some comments in the templata source file.
Charadon May 16, 2024
6f28512
Fix warnings when using GCC 13
Charadon May 16, 2024
e2e50d9
Implemented as much of core_basic_screen_manager as possible.
Charadon May 16, 2024
b1a26b9
Implemented Shapes.Rectangle object.
Charadon May 16, 2024
9931ebb
Fixed compilation errors when compiling on Almalinux 8 (stable)
Charadon May 16, 2024
a9954aa
Wrong license in screen manager example.
Charadon May 16, 2024
9909ab7
Added 2DCamera object.
Charadon May 17, 2024
8d6736d
Added line object and example/test using it.
Charadon May 17, 2024
8b5c41b
lib/Shapes/Line.vala: Fixed compilation issue on (stable)
Charadon May 17, 2024
393c565
Added free_functions to the Raylib vapi
Charadon May 20, 2024
6541e92
Line.vala: Added new method draw_gl and changed draw to use Raylib.dr…
Charadon May 21, 2024
7253fe3
Clipboard.vala: Turn clipboard object in a non-glib object.
Charadon May 21, 2024
582192d
Color.vala: Added the fade method.
Charadon May 21, 2024
6b2fca9
Sound.vala: Updated internal variable to match other objects.
Charadon May 21, 2024
7195b59
Rectangle.vala: Fix bug where I used the origin variable wrong.
Charadon May 21, 2024
12e091c
Music.vala: Made the internal variable naming scheme match the rest o…
Charadon May 21, 2024
f4cb283
meson.build: Put the example stuff into it's own file.
Charadon May 21, 2024
6e91a83
Finished core_2d_camera example.
Charadon May 21, 2024
738a395
add enums
halfmexican Nov 23, 2024
d9ca3fe
formatting
halfmexican Nov 23, 2024
cfa4159
Merge pull request #1 from halfmexican/main
Charadon Nov 25, 2024
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
7 changes: 6 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
@@ -1,2 +1,7 @@
build/
misc/
compile_commands.json
.cache/
.ccls-cache/
builddir
automate.txt
.vscode/
3 changes: 3 additions & 0 deletions .gitmodules
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
[submodule "subprojects/raylib/source"]
path = subprojects/raylib/source
url = https://github.com/raysan5/raylib
3 changes: 0 additions & 3 deletions .vscode/settings.json

This file was deleted.

24 changes: 0 additions & 24 deletions .vscode/vapi.code-snippets

This file was deleted.

2 changes: 2 additions & 0 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
# Contributing

2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -50,7 +50,7 @@ public static int main (string[] args) {
```

## Compiling Included Examples
```powershell
```bash
cd examples

meson build -C build
Expand Down
84 changes: 84 additions & 0 deletions compose.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,84 @@
version: '1.0'

services:
rolling:
build:
context: .
dockerfile: dockerfiles/rolling
working_dir: /project
environment:
- PULSE_SERVER=/tmp/pulse/native
- WAYLAND_DISPLAY=${WAYLAND_DISPLAY}
- DISPLAY=${DISPLAY}
- G_MESSAGES_DEBUG=all
- CCACHE_DIR=/ccache
volumes:
- type: bind
source: /dev/dri
target: /dev/dri
- type: bind
source: /tmp/.X11-unix
target: /tmp/.X11-unix
- type: bind
source: ${XDG_RUNTIME_DIR}/pulse
target: /tmp/pulse
- type: bind
source: .
target: /project
- type: bind
source: ${HOME}/.cache/raylib_oop_ccache
target: /ccache
stable:
build:
context: .
dockerfile: dockerfiles/stable
working_dir: /project
environment:
- PULSE_SERVER=/tmp/pulse/native
- WAYLAND_DISPLAY=${WAYLAND_DISPLAY}
- DISPLAY=${DISPLAY}
- G_MESSAGES_DEBUG=all
- CCACHE_DIR=/ccache
volumes:
- type: bind
source: /dev/dri
target: /dev/dri
- type: bind
source: /tmp/.X11-unix
target: /tmp/.X11-unix
- type: bind
source: ${XDG_RUNTIME_DIR}/pulse
target: /tmp/pulse
- type: bind
source: .
target: /project
- type: bind
source: ${HOME}/.cache/raylib_oop_ccache
target: /ccache
bleeding:
build:
context: .
dockerfile: dockerfiles/bleeding
working_dir: /project
environment:
- PULSE_SERVER=/tmp/pulse/native
- WAYLAND_DISPLAY=${WAYLAND_DISPLAY}
- DISPLAY=${DISPLAY}
- G_MESSAGES_DEBUG=all
- CCACHE_DIR=/ccache
volumes:
- type: bind
source: /dev/dri
target: /dev/dri
- type: bind
source: /tmp/.X11-unix
target: /tmp/.X11-unix
- type: bind
source: ${XDG_RUNTIME_DIR}/pulse
target: /tmp/pulse
- type: bind
source: .
target: /project
- type: bind
source: ${HOME}/.cache/raylib_oop_ccache
target: /ccache
Binary file modified data/raylib-vapi.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
7 changes: 7 additions & 0 deletions dockerfiles/bleeding
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
FROM fedora:rawhide
RUN set -eux && \
echo "fastestmirror=1" >> /etc/dnf/dnf.conf && \
dnf update -y && \
dnf install -y meson vala "pkgconfig(gl)" "pkgconfig(xcursor)" "pkgconfig(xrandr)" \
"pkgconfig(xinerama)" "pkgconfig(xi)" cmake "pkgconfig(sdl2)" "pkgconfig(glfw3)" \
"pkgconfig(libdrm)" "pkgconfig(egl)" "pkgconfig(gbm)" vim pulseaudio-libs ccache
7 changes: 7 additions & 0 deletions dockerfiles/rolling
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
FROM fedora:latest
RUN set -eux && \
echo "fastestmirror=1" >> /etc/dnf/dnf.conf && \
dnf update -y && \
dnf install -y meson vala "pkgconfig(gl)" "pkgconfig(xcursor)" "pkgconfig(xrandr)" \
"pkgconfig(xinerama)" "pkgconfig(xi)" cmake "pkgconfig(sdl2)" "pkgconfig(glfw3)" \
"pkgconfig(libdrm)" "pkgconfig(egl)" "pkgconfig(gbm)" vim pulseaudio-libs ccache
10 changes: 10 additions & 0 deletions dockerfiles/stable
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
FROM almalinux:8
RUN set -eux && \
echo "fastestmirror=1" >> /etc/dnf/dnf.conf && \
dnf update -y && \
dnf install -y epel-release && \
crb enable && \
dnf update -y && \
dnf install -y meson vala "pkgconfig(gl)" "pkgconfig(xcursor)" "pkgconfig(xrandr)" \
"pkgconfig(xinerama)" "pkgconfig(xi)" cmake "pkgconfig(sdl2)" "pkgconfig(glfw3)" \
"pkgconfig(libdrm)" "pkgconfig(egl)" "pkgconfig(gbm)" vim pulseaudio-libs ccache
65 changes: 0 additions & 65 deletions examples/Camera3D/Main.vala

This file was deleted.

7 changes: 0 additions & 7 deletions examples/Camera3D/meson.build

This file was deleted.

43 changes: 0 additions & 43 deletions examples/Physac/Main.vala

This file was deleted.

7 changes: 0 additions & 7 deletions examples/Physac/meson.build

This file was deleted.

86 changes: 0 additions & 86 deletions examples/SmoothPixel/Main.vala

This file was deleted.

7 changes: 0 additions & 7 deletions examples/SmoothPixel/meson.build

This file was deleted.

Loading