@dayme/bunraylib 0.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +31 -0
- package/package.json +39 -0
- package/src/Raylib.ts +3679 -0
- package/src/c/audio.c +344 -0
- package/src/c/camera.c +161 -0
- package/src/c/collision.c +176 -0
- package/src/c/color.c +100 -0
- package/src/c/common.h +67 -0
- package/src/c/draw3d.c +222 -0
- package/src/c/filesystem.c +36 -0
- package/src/c/font.c +163 -0
- package/src/c/image.c +458 -0
- package/src/c/input.c +85 -0
- package/src/c/model.c +243 -0
- package/src/c/registries.c +111 -0
- package/src/c/shader.c +56 -0
- package/src/c/shapes.c +283 -0
- package/src/c/texture.c +139 -0
- package/src/c/window.c +150 -0
- package/src/constants.ts +396 -0
- package/src/index.ts +29 -0
- package/src/main.c +15 -0
- package/src/main.d.ts +4 -0
- package/src/symbols/audio.ts +64 -0
- package/src/symbols/camera.ts +46 -0
- package/src/symbols/collision.ts +116 -0
- package/src/symbols/color.ts +22 -0
- package/src/symbols/draw3d.ts +137 -0
- package/src/symbols/filesystem.ts +30 -0
- package/src/symbols/font.ts +40 -0
- package/src/symbols/image.ts +90 -0
- package/src/symbols/input.ts +51 -0
- package/src/symbols/model.ts +38 -0
- package/src/symbols/shader.ts +15 -0
- package/src/symbols/shapes.ts +92 -0
- package/src/symbols/texture.ts +56 -0
- package/src/symbols/window.ts +83 -0
- package/src/symbols.ts +131 -0
- package/src/types.ts +73 -0
- package/src/utils.ts +25 -0
package/src/main.c
ADDED
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
#include "c/registries.c"
|
|
2
|
+
#include "c/window.c"
|
|
3
|
+
#include "c/shapes.c"
|
|
4
|
+
#include "c/collision.c"
|
|
5
|
+
#include "c/camera.c"
|
|
6
|
+
#include "c/draw3d.c"
|
|
7
|
+
#include "c/texture.c"
|
|
8
|
+
#include "c/model.c"
|
|
9
|
+
#include "c/image.c"
|
|
10
|
+
#include "c/color.c"
|
|
11
|
+
#include "c/font.c"
|
|
12
|
+
#include "c/input.c"
|
|
13
|
+
#include "c/audio.c"
|
|
14
|
+
#include "c/shader.c"
|
|
15
|
+
#include "c/filesystem.c"
|
package/src/main.d.ts
ADDED
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
import { FFIType } from "bun:ffi";
|
|
2
|
+
const { i32, cstring, bool, ptr } = FFIType;
|
|
3
|
+
|
|
4
|
+
export const audioSymbols = {
|
|
5
|
+
InitAudioDeviceW: { args: [], returns: FFIType.void },
|
|
6
|
+
CloseAudioDeviceW: { args: [], returns: FFIType.void },
|
|
7
|
+
IsAudioDeviceReadyW: { args: [], returns: bool },
|
|
8
|
+
SetMasterVolumeW: { args: [i32], returns: FFIType.void },
|
|
9
|
+
GetMasterVolumeW: { args: [], returns: i32 },
|
|
10
|
+
LoadWaveW: { args: [cstring], returns: i32 },
|
|
11
|
+
LoadWaveFromMemoryW: { args: [cstring, ptr, i32], returns: i32 },
|
|
12
|
+
IsWaveValidW: { args: [i32], returns: bool },
|
|
13
|
+
UnloadWaveW: { args: [i32], returns: FFIType.void },
|
|
14
|
+
ExportWaveW: { args: [i32, cstring], returns: bool },
|
|
15
|
+
ExportWaveAsCodeW: { args: [i32, cstring], returns: bool },
|
|
16
|
+
WaveCopyW: { args: [i32], returns: i32 },
|
|
17
|
+
WaveCropW: { args: [i32, i32, i32], returns: FFIType.void },
|
|
18
|
+
WaveFormatW: { args: [i32, i32, i32, i32], returns: FFIType.void },
|
|
19
|
+
LoadSoundW: { args: [cstring], returns: i32 },
|
|
20
|
+
LoadSoundFromWaveW: { args: [i32], returns: i32 },
|
|
21
|
+
LoadSoundAliasW: { args: [i32], returns: i32 },
|
|
22
|
+
IsSoundValidW: { args: [i32], returns: bool },
|
|
23
|
+
UnloadSoundW: { args: [i32], returns: FFIType.void },
|
|
24
|
+
UnloadSoundAliasW: { args: [i32], returns: FFIType.void },
|
|
25
|
+
PlaySoundW: { args: [i32], returns: FFIType.void },
|
|
26
|
+
StopSoundW: { args: [i32], returns: FFIType.void },
|
|
27
|
+
PauseSoundW: { args: [i32], returns: FFIType.void },
|
|
28
|
+
ResumeSoundW: { args: [i32], returns: FFIType.void },
|
|
29
|
+
IsSoundPlayingW: { args: [i32], returns: bool },
|
|
30
|
+
SetSoundVolumeW: { args: [i32, i32], returns: FFIType.void },
|
|
31
|
+
SetSoundPitchW: { args: [i32, i32], returns: FFIType.void },
|
|
32
|
+
SetSoundPanW: { args: [i32, i32], returns: FFIType.void },
|
|
33
|
+
LoadMusicStreamW: { args: [cstring], returns: i32 },
|
|
34
|
+
LoadMusicStreamFromMemoryW: { args: [cstring, ptr, i32], returns: i32 },
|
|
35
|
+
IsMusicValidW: { args: [i32], returns: bool },
|
|
36
|
+
UnloadMusicStreamW: { args: [i32], returns: FFIType.void },
|
|
37
|
+
PlayMusicStreamW: { args: [i32], returns: FFIType.void },
|
|
38
|
+
IsMusicStreamPlayingW: { args: [i32], returns: bool },
|
|
39
|
+
UpdateMusicStreamW: { args: [i32], returns: FFIType.void },
|
|
40
|
+
StopMusicStreamW: { args: [i32], returns: FFIType.void },
|
|
41
|
+
PauseMusicStreamW: { args: [i32], returns: FFIType.void },
|
|
42
|
+
ResumeMusicStreamW: { args: [i32], returns: FFIType.void },
|
|
43
|
+
SeekMusicStreamW: { args: [i32, i32], returns: FFIType.void },
|
|
44
|
+
SetMusicVolumeW: { args: [i32, i32], returns: FFIType.void },
|
|
45
|
+
SetMusicPitchW: { args: [i32, i32], returns: FFIType.void },
|
|
46
|
+
SetMusicPanW: { args: [i32, i32], returns: FFIType.void },
|
|
47
|
+
GetMusicTimeLengthW: { args: [i32], returns: i32 },
|
|
48
|
+
GetMusicTimePlayedW: { args: [i32], returns: i32 },
|
|
49
|
+
LoadAudioStreamW: { args: [i32, i32, i32], returns: i32 },
|
|
50
|
+
IsAudioStreamValidW: { args: [i32], returns: bool },
|
|
51
|
+
UnloadAudioStreamW: { args: [i32], returns: FFIType.void },
|
|
52
|
+
IsAudioStreamProcessedW: { args: [i32], returns: bool },
|
|
53
|
+
PlayAudioStreamW: { args: [i32], returns: FFIType.void },
|
|
54
|
+
PauseAudioStreamW: { args: [i32], returns: FFIType.void },
|
|
55
|
+
ResumeAudioStreamW: { args: [i32], returns: FFIType.void },
|
|
56
|
+
IsAudioStreamPlayingW: { args: [i32], returns: bool },
|
|
57
|
+
StopAudioStreamW: { args: [i32], returns: FFIType.void },
|
|
58
|
+
SetAudioStreamVolumeW: { args: [i32, i32], returns: FFIType.void },
|
|
59
|
+
SetAudioStreamPitchW: { args: [i32, i32], returns: FFIType.void },
|
|
60
|
+
SetAudioStreamPanW: { args: [i32, i32], returns: FFIType.void },
|
|
61
|
+
SetAudioStreamBufferSizeDefaultW: { args: [i32], returns: FFIType.void },
|
|
62
|
+
LoadWaveSamplesW: { args: [i32], returns: ptr },
|
|
63
|
+
UnloadWaveSamplesW: { args: [ptr], returns: FFIType.void },
|
|
64
|
+
} as const;
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
import { FFIType } from "bun:ffi";
|
|
2
|
+
const { i32, ptr, f32 } = FFIType;
|
|
3
|
+
|
|
4
|
+
export const cameraSymbols = {
|
|
5
|
+
BeginMode2DW: { args: [i32, i32, i32, i32, i32, i32], returns: FFIType.void },
|
|
6
|
+
EndMode2DW: { args: [], returns: FFIType.void },
|
|
7
|
+
BeginMode3DW: {
|
|
8
|
+
args: [i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32],
|
|
9
|
+
returns: FFIType.void,
|
|
10
|
+
},
|
|
11
|
+
EndMode3DW: { args: [], returns: FFIType.void },
|
|
12
|
+
UpdateCameraW: { args: [ptr, ptr, ptr, ptr, ptr, i32], returns: FFIType.void },
|
|
13
|
+
UpdateCameraProW: {
|
|
14
|
+
args: [ptr, ptr, ptr, ptr, ptr, f32, f32, f32, f32, f32, f32, f32],
|
|
15
|
+
returns: FFIType.void,
|
|
16
|
+
},
|
|
17
|
+
GetScreenToWorldRayW: {
|
|
18
|
+
args: [ptr, ptr, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32],
|
|
19
|
+
returns: FFIType.void,
|
|
20
|
+
},
|
|
21
|
+
GetWorldToScreenW: {
|
|
22
|
+
args: [ptr, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32],
|
|
23
|
+
returns: FFIType.void,
|
|
24
|
+
},
|
|
25
|
+
GetWorldToScreen2DW: {
|
|
26
|
+
args: [ptr, i32, i32, i32, i32, i32, i32, i32, i32],
|
|
27
|
+
returns: FFIType.void,
|
|
28
|
+
},
|
|
29
|
+
GetScreenToWorld2DW: {
|
|
30
|
+
args: [ptr, i32, i32, i32, i32, i32, i32, i32, i32],
|
|
31
|
+
returns: FFIType.void,
|
|
32
|
+
},
|
|
33
|
+
GetScreenToWorldRayExW: {
|
|
34
|
+
args: [ptr, ptr, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32],
|
|
35
|
+
returns: FFIType.void,
|
|
36
|
+
},
|
|
37
|
+
GetWorldToScreenExW: {
|
|
38
|
+
args: [ptr, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32],
|
|
39
|
+
returns: FFIType.void,
|
|
40
|
+
},
|
|
41
|
+
GetCameraMatrixW: {
|
|
42
|
+
args: [ptr, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32],
|
|
43
|
+
returns: FFIType.void,
|
|
44
|
+
},
|
|
45
|
+
GetCameraMatrix2DW: { args: [ptr, i32, i32, i32, i32, i32, i32], returns: FFIType.void },
|
|
46
|
+
} as const;
|
|
@@ -0,0 +1,116 @@
|
|
|
1
|
+
import { FFIType } from "bun:ffi";
|
|
2
|
+
const { i32, bool, ptr } = FFIType;
|
|
3
|
+
|
|
4
|
+
export const collisionSymbols = {
|
|
5
|
+
CheckCollisionRecsW: { args: [i32, i32, i32, i32, i32, i32, i32, i32], returns: bool },
|
|
6
|
+
CheckCollisionCirclesW: { args: [i32, i32, i32, i32, i32, i32], returns: bool },
|
|
7
|
+
CheckCollisionCircleRecW: { args: [i32, i32, i32, i32, i32, i32, i32], returns: bool },
|
|
8
|
+
CheckCollisionCircleLineW: { args: [i32, i32, i32, i32, i32, i32, i32], returns: bool },
|
|
9
|
+
CheckCollisionPointRecW: { args: [i32, i32, i32, i32, i32, i32], returns: bool },
|
|
10
|
+
CheckCollisionPointCircleW: { args: [i32, i32, i32, i32, i32], returns: bool },
|
|
11
|
+
CheckCollisionPointTriangleW: { args: [i32, i32, i32, i32, i32, i32, i32, i32], returns: bool },
|
|
12
|
+
CheckCollisionPointLineW: { args: [i32, i32, i32, i32, i32, i32, i32], returns: bool },
|
|
13
|
+
CheckCollisionPointPolyW: { args: [i32, i32, ptr, i32], returns: bool },
|
|
14
|
+
CheckCollisionLinesW: { args: [ptr, i32, i32, i32, i32, i32, i32, i32, i32], returns: bool },
|
|
15
|
+
GetCollisionRecW: { args: [ptr, i32, i32, i32, i32, i32, i32, i32, i32], returns: FFIType.void },
|
|
16
|
+
CheckCollisionSpheresW: { args: [i32, i32, i32, i32, i32, i32, i32, i32], returns: bool },
|
|
17
|
+
CheckCollisionBoxesW: {
|
|
18
|
+
args: [i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32],
|
|
19
|
+
returns: bool,
|
|
20
|
+
},
|
|
21
|
+
CheckCollisionBoxSphereW: {
|
|
22
|
+
args: [i32, i32, i32, i32, i32, i32, i32, i32, i32, i32],
|
|
23
|
+
returns: bool,
|
|
24
|
+
},
|
|
25
|
+
GetRayCollisionSphereW: {
|
|
26
|
+
args: [ptr, ptr, ptr, ptr, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32],
|
|
27
|
+
returns: FFIType.void,
|
|
28
|
+
},
|
|
29
|
+
GetRayCollisionBoxW: {
|
|
30
|
+
args: [ptr, ptr, ptr, ptr, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32],
|
|
31
|
+
returns: FFIType.void,
|
|
32
|
+
},
|
|
33
|
+
GetRayCollisionTriangleW: {
|
|
34
|
+
args: [
|
|
35
|
+
ptr,
|
|
36
|
+
ptr,
|
|
37
|
+
ptr,
|
|
38
|
+
ptr,
|
|
39
|
+
i32,
|
|
40
|
+
i32,
|
|
41
|
+
i32,
|
|
42
|
+
i32,
|
|
43
|
+
i32,
|
|
44
|
+
i32,
|
|
45
|
+
i32,
|
|
46
|
+
i32,
|
|
47
|
+
i32,
|
|
48
|
+
i32,
|
|
49
|
+
i32,
|
|
50
|
+
i32,
|
|
51
|
+
i32,
|
|
52
|
+
i32,
|
|
53
|
+
i32,
|
|
54
|
+
],
|
|
55
|
+
returns: FFIType.void,
|
|
56
|
+
},
|
|
57
|
+
GetRayCollisionQuadW: {
|
|
58
|
+
args: [
|
|
59
|
+
ptr,
|
|
60
|
+
ptr,
|
|
61
|
+
ptr,
|
|
62
|
+
ptr,
|
|
63
|
+
i32,
|
|
64
|
+
i32,
|
|
65
|
+
i32,
|
|
66
|
+
i32,
|
|
67
|
+
i32,
|
|
68
|
+
i32,
|
|
69
|
+
i32,
|
|
70
|
+
i32,
|
|
71
|
+
i32,
|
|
72
|
+
i32,
|
|
73
|
+
i32,
|
|
74
|
+
i32,
|
|
75
|
+
i32,
|
|
76
|
+
i32,
|
|
77
|
+
i32,
|
|
78
|
+
i32,
|
|
79
|
+
i32,
|
|
80
|
+
i32,
|
|
81
|
+
],
|
|
82
|
+
returns: FFIType.void,
|
|
83
|
+
},
|
|
84
|
+
GetRayCollisionMeshW: {
|
|
85
|
+
args: [
|
|
86
|
+
ptr,
|
|
87
|
+
ptr,
|
|
88
|
+
ptr,
|
|
89
|
+
ptr,
|
|
90
|
+
i32,
|
|
91
|
+
i32,
|
|
92
|
+
i32,
|
|
93
|
+
i32,
|
|
94
|
+
i32,
|
|
95
|
+
i32,
|
|
96
|
+
i32,
|
|
97
|
+
i32,
|
|
98
|
+
i32,
|
|
99
|
+
i32,
|
|
100
|
+
i32,
|
|
101
|
+
i32,
|
|
102
|
+
i32,
|
|
103
|
+
i32,
|
|
104
|
+
i32,
|
|
105
|
+
i32,
|
|
106
|
+
i32,
|
|
107
|
+
i32,
|
|
108
|
+
i32,
|
|
109
|
+
i32,
|
|
110
|
+
i32,
|
|
111
|
+
i32,
|
|
112
|
+
i32,
|
|
113
|
+
],
|
|
114
|
+
returns: FFIType.void,
|
|
115
|
+
},
|
|
116
|
+
} as const;
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { FFIType } from "bun:ffi";
|
|
2
|
+
const { i32, bool, ptr } = FFIType;
|
|
3
|
+
|
|
4
|
+
export const colorSymbols = {
|
|
5
|
+
ColorToIntW: { args: [i32], returns: i32 },
|
|
6
|
+
ColorNormalizeW: { args: [ptr, i32], returns: FFIType.void },
|
|
7
|
+
ColorFromNormalizedW: { args: [i32, i32, i32, i32], returns: i32 },
|
|
8
|
+
ColorToHSWW: { args: [ptr, i32], returns: FFIType.void },
|
|
9
|
+
ColorFromHSWW: { args: [i32, i32, i32], returns: i32 },
|
|
10
|
+
ColorTintW: { args: [i32, i32], returns: i32 },
|
|
11
|
+
ColorBrightnessW: { args: [i32, i32], returns: i32 },
|
|
12
|
+
ColorContrastW: { args: [i32, i32], returns: i32 },
|
|
13
|
+
ColorAlphaW: { args: [i32, i32], returns: i32 },
|
|
14
|
+
ColorAlphaBlendW: { args: [i32, i32, i32], returns: i32 },
|
|
15
|
+
ColorLerpW: { args: [i32, i32, i32], returns: i32 },
|
|
16
|
+
GetColorW: { args: [i32], returns: i32 },
|
|
17
|
+
FadeW: { args: [i32, i32], returns: i32 },
|
|
18
|
+
ColorIsEqualW: { args: [i32, i32], returns: bool },
|
|
19
|
+
GetPixelDataSizeW: { args: [i32, i32, i32], returns: i32 },
|
|
20
|
+
ColorToHSVW: { args: [ptr, i32], returns: FFIType.void },
|
|
21
|
+
ColorFromHSVW: { args: [i32, i32, i32], returns: i32 },
|
|
22
|
+
} as const;
|
|
@@ -0,0 +1,137 @@
|
|
|
1
|
+
import { FFIType } from "bun:ffi";
|
|
2
|
+
const { i32 } = FFIType;
|
|
3
|
+
|
|
4
|
+
export const draw3dSymbols = {
|
|
5
|
+
DrawLine3DW: { args: [i32, i32, i32, i32, i32, i32, i32], returns: FFIType.void },
|
|
6
|
+
DrawPoint3DW: { args: [i32, i32, i32, i32], returns: FFIType.void },
|
|
7
|
+
DrawCircle3DW: { args: [i32, i32, i32, i32, i32, i32, i32, i32, i32], returns: FFIType.void },
|
|
8
|
+
DrawTriangle3DW: {
|
|
9
|
+
args: [i32, i32, i32, i32, i32, i32, i32, i32, i32, i32],
|
|
10
|
+
returns: FFIType.void,
|
|
11
|
+
},
|
|
12
|
+
DrawTriangleStrip3DW: { args: [FFIType.ptr, i32, i32], returns: FFIType.void },
|
|
13
|
+
DrawCubeW: { args: [i32, i32, i32, i32, i32, i32, i32], returns: FFIType.void },
|
|
14
|
+
DrawCubeVW: { args: [i32, i32, i32, i32, i32, i32, i32], returns: FFIType.void },
|
|
15
|
+
DrawCubeWiresW: { args: [i32, i32, i32, i32, i32, i32, i32], returns: FFIType.void },
|
|
16
|
+
DrawCubeWiresVW: { args: [i32, i32, i32, i32, i32, i32, i32], returns: FFIType.void },
|
|
17
|
+
DrawSphereW: { args: [i32, i32, i32, i32, i32], returns: FFIType.void },
|
|
18
|
+
DrawSphereExW: { args: [i32, i32, i32, i32, i32, i32, i32], returns: FFIType.void },
|
|
19
|
+
DrawSphereWiresW: { args: [i32, i32, i32, i32, i32, i32, i32], returns: FFIType.void },
|
|
20
|
+
DrawCylinderW: { args: [i32, i32, i32, i32, i32, i32, i32, i32], returns: FFIType.void },
|
|
21
|
+
DrawCylinderExW: {
|
|
22
|
+
args: [i32, i32, i32, i32, i32, i32, i32, i32, i32, i32],
|
|
23
|
+
returns: FFIType.void,
|
|
24
|
+
},
|
|
25
|
+
DrawCylinderWiresW: { args: [i32, i32, i32, i32, i32, i32, i32, i32], returns: FFIType.void },
|
|
26
|
+
DrawCylinderWiresExW: {
|
|
27
|
+
args: [i32, i32, i32, i32, i32, i32, i32, i32, i32, i32],
|
|
28
|
+
returns: FFIType.void,
|
|
29
|
+
},
|
|
30
|
+
DrawCapsuleW: { args: [i32, i32, i32, i32, i32, i32, i32, i32, i32, i32], returns: FFIType.void },
|
|
31
|
+
DrawCapsuleWiresW: {
|
|
32
|
+
args: [i32, i32, i32, i32, i32, i32, i32, i32, i32, i32],
|
|
33
|
+
returns: FFIType.void,
|
|
34
|
+
},
|
|
35
|
+
DrawPlaneW: { args: [i32, i32, i32, i32, i32, i32], returns: FFIType.void },
|
|
36
|
+
DrawRayW: { args: [i32, i32, i32, i32, i32, i32, i32], returns: FFIType.void },
|
|
37
|
+
DrawGridW: { args: [i32, i32], returns: FFIType.void },
|
|
38
|
+
DrawModelW: { args: [i32, i32, i32, i32, i32, i32], returns: FFIType.void },
|
|
39
|
+
DrawModelExW: {
|
|
40
|
+
args: [i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32],
|
|
41
|
+
returns: FFIType.void,
|
|
42
|
+
},
|
|
43
|
+
DrawModelWiresW: { args: [i32, i32, i32, i32, i32, i32], returns: FFIType.void },
|
|
44
|
+
DrawModelWiresExW: {
|
|
45
|
+
args: [i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32],
|
|
46
|
+
returns: FFIType.void,
|
|
47
|
+
},
|
|
48
|
+
DrawBoundingBoxW: { args: [i32, i32, i32, i32, i32, i32, i32], returns: FFIType.void },
|
|
49
|
+
DrawBillboardW: {
|
|
50
|
+
args: [
|
|
51
|
+
i32,
|
|
52
|
+
i32,
|
|
53
|
+
i32,
|
|
54
|
+
i32,
|
|
55
|
+
i32,
|
|
56
|
+
i32,
|
|
57
|
+
i32,
|
|
58
|
+
i32,
|
|
59
|
+
i32,
|
|
60
|
+
i32,
|
|
61
|
+
i32,
|
|
62
|
+
i32,
|
|
63
|
+
i32,
|
|
64
|
+
i32,
|
|
65
|
+
i32,
|
|
66
|
+
i32,
|
|
67
|
+
i32,
|
|
68
|
+
i32,
|
|
69
|
+
i32,
|
|
70
|
+
],
|
|
71
|
+
returns: FFIType.void,
|
|
72
|
+
},
|
|
73
|
+
DrawBillboardRecW: {
|
|
74
|
+
args: [
|
|
75
|
+
i32,
|
|
76
|
+
i32,
|
|
77
|
+
i32,
|
|
78
|
+
i32,
|
|
79
|
+
i32,
|
|
80
|
+
i32,
|
|
81
|
+
i32,
|
|
82
|
+
i32,
|
|
83
|
+
i32,
|
|
84
|
+
i32,
|
|
85
|
+
i32,
|
|
86
|
+
i32,
|
|
87
|
+
i32,
|
|
88
|
+
i32,
|
|
89
|
+
i32,
|
|
90
|
+
i32,
|
|
91
|
+
i32,
|
|
92
|
+
i32,
|
|
93
|
+
i32,
|
|
94
|
+
i32,
|
|
95
|
+
i32,
|
|
96
|
+
i32,
|
|
97
|
+
i32,
|
|
98
|
+
i32,
|
|
99
|
+
],
|
|
100
|
+
returns: FFIType.void,
|
|
101
|
+
},
|
|
102
|
+
DrawBillboardProW: {
|
|
103
|
+
args: [
|
|
104
|
+
i32,
|
|
105
|
+
i32,
|
|
106
|
+
i32,
|
|
107
|
+
i32,
|
|
108
|
+
i32,
|
|
109
|
+
i32,
|
|
110
|
+
i32,
|
|
111
|
+
i32,
|
|
112
|
+
i32,
|
|
113
|
+
i32,
|
|
114
|
+
i32,
|
|
115
|
+
i32,
|
|
116
|
+
i32,
|
|
117
|
+
i32,
|
|
118
|
+
i32,
|
|
119
|
+
i32,
|
|
120
|
+
i32,
|
|
121
|
+
i32,
|
|
122
|
+
i32,
|
|
123
|
+
i32,
|
|
124
|
+
i32,
|
|
125
|
+
i32,
|
|
126
|
+
i32,
|
|
127
|
+
i32,
|
|
128
|
+
i32,
|
|
129
|
+
i32,
|
|
130
|
+
i32,
|
|
131
|
+
i32,
|
|
132
|
+
i32,
|
|
133
|
+
i32,
|
|
134
|
+
],
|
|
135
|
+
returns: FFIType.void,
|
|
136
|
+
},
|
|
137
|
+
} as const;
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import { FFIType } from "bun:ffi";
|
|
2
|
+
const { i32, cstring, bool, ptr } = FFIType;
|
|
3
|
+
|
|
4
|
+
export const filesystemSymbols = {
|
|
5
|
+
FileExistsW: { args: [cstring], returns: bool },
|
|
6
|
+
DirectoryExistsW: { args: [cstring], returns: bool },
|
|
7
|
+
IsFileExtensionW: { args: [cstring, cstring], returns: bool },
|
|
8
|
+
GetFileLengthW: { args: [cstring], returns: i32 },
|
|
9
|
+
GetFileExtensionW: { args: [cstring], returns: ptr },
|
|
10
|
+
GetFileNameW: { args: [cstring], returns: ptr },
|
|
11
|
+
GetFileNameWithoutExtW: { args: [cstring], returns: ptr },
|
|
12
|
+
GetDirectoryPathW: { args: [cstring], returns: ptr },
|
|
13
|
+
GetPrevDirectoryPathW: { args: [cstring], returns: ptr },
|
|
14
|
+
GetWorkingDirectoryW: { args: [], returns: ptr },
|
|
15
|
+
GetApplicationDirectoryW: { args: [], returns: ptr },
|
|
16
|
+
MakeDirectoryW: { args: [cstring], returns: i32 },
|
|
17
|
+
ChangeDirectoryW: { args: [cstring], returns: bool },
|
|
18
|
+
IsPathFileW: { args: [cstring], returns: bool },
|
|
19
|
+
IsFileNameValidW: { args: [cstring], returns: bool },
|
|
20
|
+
GetFileModTimeW: { args: [cstring], returns: FFIType.i64 },
|
|
21
|
+
LoadFileTextW: { args: [cstring], returns: ptr },
|
|
22
|
+
UnloadFileTextW: { args: [ptr], returns: FFIType.void },
|
|
23
|
+
SaveFileTextW: { args: [cstring, cstring], returns: bool },
|
|
24
|
+
ComputeCRC32W: { args: [ptr, i32], returns: i32 },
|
|
25
|
+
UnloadRandomSequenceW: { args: [ptr], returns: FFIType.void },
|
|
26
|
+
MemFreeW: { args: [ptr], returns: FFIType.void },
|
|
27
|
+
UnloadFileDataW: { args: [ptr], returns: FFIType.void },
|
|
28
|
+
SaveFileDataW: { args: [cstring, ptr, i32], returns: bool },
|
|
29
|
+
ExportDataAsCodeW: { args: [ptr, i32, cstring], returns: bool },
|
|
30
|
+
} as const;
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
import { FFIType } from "bun:ffi";
|
|
2
|
+
const { i32, cstring, bool, f32, ptr } = FFIType;
|
|
3
|
+
|
|
4
|
+
export const fontSymbols = {
|
|
5
|
+
LoadFontW: { args: [cstring], returns: i32 },
|
|
6
|
+
LoadFontExW: { args: [cstring, i32], returns: i32 },
|
|
7
|
+
GetFontDefaultW: { args: [], returns: i32 },
|
|
8
|
+
UnloadFontW: { args: [i32], returns: FFIType.void },
|
|
9
|
+
IsFontValidW: { args: [i32], returns: bool },
|
|
10
|
+
MeasureTextW: { args: [cstring, i32], returns: i32 },
|
|
11
|
+
MeasureTextExW: { args: [ptr, i32, cstring, i32, i32], returns: FFIType.void },
|
|
12
|
+
DrawTextExW: { args: [i32, cstring, i32, i32, i32, i32, i32], returns: FFIType.void },
|
|
13
|
+
DrawTextProW: {
|
|
14
|
+
args: [i32, cstring, i32, i32, i32, i32, i32, i32, i32, i32],
|
|
15
|
+
returns: FFIType.void,
|
|
16
|
+
},
|
|
17
|
+
SetTextLineSpacingW: { args: [i32], returns: FFIType.void },
|
|
18
|
+
LoadFontFromImageW: { args: [i32, i32, i32], returns: i32 },
|
|
19
|
+
LoadFontFromMemoryW: { args: [cstring, ptr, i32, i32], returns: i32 },
|
|
20
|
+
ExportFontAsCodeW: { args: [i32, cstring], returns: bool },
|
|
21
|
+
DrawTextCodepointW: { args: [i32, i32, i32, i32, i32, i32], returns: FFIType.void },
|
|
22
|
+
DrawTextCodepointsW: { args: [i32, ptr, i32, i32, i32, i32, i32, i32], returns: FFIType.void },
|
|
23
|
+
GetGlyphIndexW: { args: [i32, i32], returns: i32 },
|
|
24
|
+
GetGlyphInfoW: { args: [ptr, ptr, ptr, ptr, ptr, i32, i32], returns: FFIType.void },
|
|
25
|
+
GetGlyphAtlasRecW: { args: [ptr, i32, i32], returns: FFIType.void },
|
|
26
|
+
GetCodepointW: { args: [cstring, ptr], returns: i32 },
|
|
27
|
+
GetCodepointNextW: { args: [cstring, ptr], returns: i32 },
|
|
28
|
+
GetCodepointPreviousW: { args: [cstring, ptr], returns: i32 },
|
|
29
|
+
GetCodepointCountW: { args: [cstring], returns: i32 },
|
|
30
|
+
TextIsEqualW: { args: [cstring, cstring], returns: bool },
|
|
31
|
+
TextLengthW: { args: [cstring], returns: i32 },
|
|
32
|
+
TextToIntegerW: { args: [cstring], returns: i32 },
|
|
33
|
+
TextToFloatW: { args: [cstring], returns: f32 },
|
|
34
|
+
TextFindIndexW: { args: [cstring, cstring], returns: i32 },
|
|
35
|
+
UnloadFontDataW: { args: [ptr, i32], returns: FFIType.void },
|
|
36
|
+
UnloadUTF8W: { args: [ptr], returns: FFIType.void },
|
|
37
|
+
UnloadCodepointsW: { args: [ptr], returns: FFIType.void },
|
|
38
|
+
TextCopyW: { args: [ptr, cstring], returns: i32 },
|
|
39
|
+
TextAppendW: { args: [ptr, cstring, ptr], returns: FFIType.void },
|
|
40
|
+
} as const;
|
|
@@ -0,0 +1,90 @@
|
|
|
1
|
+
import { FFIType } from "bun:ffi";
|
|
2
|
+
const { i32, cstring, bool, ptr } = FFIType;
|
|
3
|
+
|
|
4
|
+
export const imageSymbols = {
|
|
5
|
+
LoadImageW: { args: [cstring], returns: i32 },
|
|
6
|
+
LoadImageRawW: { args: [cstring, i32, i32, i32, i32], returns: i32 },
|
|
7
|
+
LoadImageAnimW: { args: [ptr, ptr, cstring], returns: FFIType.void },
|
|
8
|
+
LoadImageFromMemoryW: { args: [cstring, ptr, i32], returns: i32 },
|
|
9
|
+
LoadImageFromTextureW: { args: [i32, i32, i32], returns: i32 },
|
|
10
|
+
LoadImageFromScreenW: { args: [], returns: i32 },
|
|
11
|
+
IsImageValidW: { args: [i32], returns: bool },
|
|
12
|
+
UnloadImageW: { args: [i32], returns: FFIType.void },
|
|
13
|
+
ExportImageW: { args: [i32, cstring], returns: bool },
|
|
14
|
+
ExportImageAsCodeW: { args: [i32, cstring], returns: bool },
|
|
15
|
+
GenImageColorW: { args: [i32, i32, i32], returns: i32 },
|
|
16
|
+
GenImageGradientLinearW: { args: [i32, i32, i32, i32, i32], returns: i32 },
|
|
17
|
+
GenImageGradientRadialW: { args: [i32, i32, i32, i32, i32], returns: i32 },
|
|
18
|
+
GenImageGradientSquareW: { args: [i32, i32, i32, i32, i32], returns: i32 },
|
|
19
|
+
GenImageCheckedW: { args: [i32, i32, i32, i32, i32, i32], returns: i32 },
|
|
20
|
+
GenImageWhiteNoiseW: { args: [i32, i32, i32], returns: i32 },
|
|
21
|
+
GenImagePerlinNoiseW: { args: [i32, i32, i32, i32, i32], returns: i32 },
|
|
22
|
+
GenImageCellularW: { args: [i32, i32, i32], returns: i32 },
|
|
23
|
+
GenImageTextW: { args: [i32, i32, cstring], returns: i32 },
|
|
24
|
+
ImageCopyW: { args: [i32], returns: i32 },
|
|
25
|
+
ImageFromImageW: { args: [i32, i32, i32, i32, i32], returns: i32 },
|
|
26
|
+
ImageFromChannelW: { args: [i32, i32], returns: i32 },
|
|
27
|
+
ImageTextW: { args: [cstring, i32, i32], returns: i32 },
|
|
28
|
+
ImageTextExW: { args: [i32, cstring, i32, i32, i32], returns: i32 },
|
|
29
|
+
ImageFormatW: { args: [i32, i32], returns: FFIType.void },
|
|
30
|
+
ImageCropW: { args: [i32, i32, i32, i32, i32], returns: FFIType.void },
|
|
31
|
+
ImageAlphaCropW: { args: [i32, i32], returns: FFIType.void },
|
|
32
|
+
ImageAlphaClearW: { args: [i32, i32, i32], returns: FFIType.void },
|
|
33
|
+
ImageAlphaMaskW: { args: [i32, i32], returns: FFIType.void },
|
|
34
|
+
ImageAlphaPremultiplyW: { args: [i32], returns: FFIType.void },
|
|
35
|
+
ImageBlurGaussianW: { args: [i32, i32], returns: FFIType.void },
|
|
36
|
+
ImageResizeW: { args: [i32, i32, i32], returns: FFIType.void },
|
|
37
|
+
ImageResizeNNW: { args: [i32, i32, i32], returns: FFIType.void },
|
|
38
|
+
ImageResizeCanvasW: { args: [i32, i32, i32, i32, i32, i32], returns: FFIType.void },
|
|
39
|
+
ImageMipmapsW: { args: [i32], returns: FFIType.void },
|
|
40
|
+
ImageDitherW: { args: [i32, i32, i32, i32, i32], returns: FFIType.void },
|
|
41
|
+
ImageFlipVerticalW: { args: [i32], returns: FFIType.void },
|
|
42
|
+
ImageFlipHorizontalW: { args: [i32], returns: FFIType.void },
|
|
43
|
+
ImageRotateW: { args: [i32, i32], returns: FFIType.void },
|
|
44
|
+
ImageRotateCWW: { args: [i32], returns: FFIType.void },
|
|
45
|
+
ImageRotateCCWW: { args: [i32], returns: FFIType.void },
|
|
46
|
+
ImageColorTintW: { args: [i32, i32], returns: FFIType.void },
|
|
47
|
+
ImageColorInvertW: { args: [i32], returns: FFIType.void },
|
|
48
|
+
ImageColorGrayscaleW: { args: [i32], returns: FFIType.void },
|
|
49
|
+
ImageColorContrastW: { args: [i32, i32], returns: FFIType.void },
|
|
50
|
+
ImageColorBrightnessW: { args: [i32, i32], returns: FFIType.void },
|
|
51
|
+
ImageColorReplaceW: { args: [i32, i32, i32], returns: FFIType.void },
|
|
52
|
+
GetImageAlphaBorderW: { args: [ptr, i32, i32], returns: FFIType.void },
|
|
53
|
+
GetImageColorW: { args: [i32, i32, i32], returns: i32 },
|
|
54
|
+
ImageClearBackgroundW: { args: [i32, i32], returns: FFIType.void },
|
|
55
|
+
ImageDrawPixelW: { args: [i32, i32, i32, i32], returns: FFIType.void },
|
|
56
|
+
ImageDrawPixelVW: { args: [i32, i32, i32, i32], returns: FFIType.void },
|
|
57
|
+
ImageDrawLineW: { args: [i32, i32, i32, i32, i32, i32], returns: FFIType.void },
|
|
58
|
+
ImageDrawLineVW: { args: [i32, i32, i32, i32, i32, i32], returns: FFIType.void },
|
|
59
|
+
ImageDrawLineExW: { args: [i32, i32, i32, i32, i32, i32, i32], returns: FFIType.void },
|
|
60
|
+
ImageDrawCircleW: { args: [i32, i32, i32, i32, i32], returns: FFIType.void },
|
|
61
|
+
ImageDrawCircleVW: { args: [i32, i32, i32, i32, i32], returns: FFIType.void },
|
|
62
|
+
ImageDrawCircleLinesW: { args: [i32, i32, i32, i32, i32], returns: FFIType.void },
|
|
63
|
+
ImageDrawCircleLinesVW: { args: [i32, i32, i32, i32, i32], returns: FFIType.void },
|
|
64
|
+
ImageDrawRectangleW: { args: [i32, i32, i32, i32, i32, i32], returns: FFIType.void },
|
|
65
|
+
ImageDrawRectangleVW: { args: [i32, i32, i32, i32, i32, i32], returns: FFIType.void },
|
|
66
|
+
ImageDrawRectangleRecW: { args: [i32, i32, i32, i32, i32, i32], returns: FFIType.void },
|
|
67
|
+
ImageDrawRectangleLinesW: { args: [i32, i32, i32, i32, i32, i32, i32], returns: FFIType.void },
|
|
68
|
+
ImageDrawTriangleW: { args: [i32, i32, i32, i32, i32, i32, i32, i32], returns: FFIType.void },
|
|
69
|
+
ImageDrawTriangleExW: {
|
|
70
|
+
args: [i32, i32, i32, i32, i32, i32, i32, i32, i32, i32],
|
|
71
|
+
returns: FFIType.void,
|
|
72
|
+
},
|
|
73
|
+
ImageDrawTriangleLinesW: {
|
|
74
|
+
args: [i32, i32, i32, i32, i32, i32, i32, i32],
|
|
75
|
+
returns: FFIType.void,
|
|
76
|
+
},
|
|
77
|
+
ImageDrawTriangleFanW: { args: [i32, ptr, i32, i32], returns: FFIType.void },
|
|
78
|
+
ImageDrawTriangleStripW: { args: [i32, ptr, i32, i32], returns: FFIType.void },
|
|
79
|
+
ImageDrawW: {
|
|
80
|
+
args: [i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32],
|
|
81
|
+
returns: FFIType.void,
|
|
82
|
+
},
|
|
83
|
+
ImageDrawTextW: { args: [i32, cstring, i32, i32, i32, i32], returns: FFIType.void },
|
|
84
|
+
ImageDrawTextExW: { args: [i32, i32, cstring, i32, i32, i32, i32, i32], returns: FFIType.void },
|
|
85
|
+
ImageToPOTW: { args: [i32, i32], returns: FFIType.void },
|
|
86
|
+
ImageKernelConvolutionW: { args: [i32, ptr, i32], returns: FFIType.void },
|
|
87
|
+
UnloadImageColorsW: { args: [ptr], returns: FFIType.void },
|
|
88
|
+
UnloadImagePaletteW: { args: [ptr], returns: FFIType.void },
|
|
89
|
+
LoadImageAnimFromMemoryW: { args: [cstring, ptr, i32, ptr], returns: i32 },
|
|
90
|
+
} as const;
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
import { FFIType } from "bun:ffi";
|
|
2
|
+
const { i32, cstring, bool, f32, ptr } = FFIType;
|
|
3
|
+
|
|
4
|
+
export const inputSymbols = {
|
|
5
|
+
IsKeyPressedW: { args: [i32], returns: bool },
|
|
6
|
+
IsKeyPressedRepeatW: { args: [i32], returns: bool },
|
|
7
|
+
IsKeyDownW: { args: [i32], returns: bool },
|
|
8
|
+
IsKeyReleasedW: { args: [i32], returns: bool },
|
|
9
|
+
IsKeyUpW: { args: [i32], returns: bool },
|
|
10
|
+
GetKeyPressedW: { args: [], returns: i32 },
|
|
11
|
+
GetCharPressedW: { args: [], returns: i32 },
|
|
12
|
+
SetExitKeyW: { args: [i32], returns: FFIType.void },
|
|
13
|
+
IsGamepadAvailableW: { args: [i32], returns: bool },
|
|
14
|
+
GetGamepadNameW: { args: [i32], returns: cstring },
|
|
15
|
+
IsGamepadButtonPressedW: { args: [i32, i32], returns: bool },
|
|
16
|
+
IsGamepadButtonDownW: { args: [i32, i32], returns: bool },
|
|
17
|
+
IsGamepadButtonReleasedW: { args: [i32, i32], returns: bool },
|
|
18
|
+
IsGamepadButtonUpW: { args: [i32, i32], returns: bool },
|
|
19
|
+
GetGamepadButtonPressedW: { args: [], returns: i32 },
|
|
20
|
+
GetGamepadAxisCountW: { args: [i32], returns: i32 },
|
|
21
|
+
GetGamepadAxisMovementW: { args: [i32, i32], returns: f32 },
|
|
22
|
+
SetGamepadMappingsW: { args: [cstring], returns: i32 },
|
|
23
|
+
SetGamepadVibrationW: { args: [i32, f32, f32, f32], returns: FFIType.void },
|
|
24
|
+
IsMouseButtonPressedW: { args: [i32], returns: bool },
|
|
25
|
+
IsMouseButtonDownW: { args: [i32], returns: bool },
|
|
26
|
+
IsMouseButtonReleasedW: { args: [i32], returns: bool },
|
|
27
|
+
IsMouseButtonUpW: { args: [i32], returns: bool },
|
|
28
|
+
GetMouseXW: { args: [], returns: i32 },
|
|
29
|
+
GetMouseYW: { args: [], returns: i32 },
|
|
30
|
+
GetMousePositionW: { args: [ptr], returns: FFIType.void },
|
|
31
|
+
GetMouseDeltaW: { args: [ptr], returns: FFIType.void },
|
|
32
|
+
SetMousePositionW: { args: [i32, i32], returns: FFIType.void },
|
|
33
|
+
SetMouseOffsetW: { args: [i32, i32], returns: FFIType.void },
|
|
34
|
+
SetMouseScaleW: { args: [f32, f32], returns: FFIType.void },
|
|
35
|
+
GetMouseWheelMoveW: { args: [], returns: f32 },
|
|
36
|
+
GetMouseWheelMoveVW: { args: [ptr], returns: FFIType.void },
|
|
37
|
+
SetMouseCursorW: { args: [i32], returns: FFIType.void },
|
|
38
|
+
GetTouchXW: { args: [], returns: i32 },
|
|
39
|
+
GetTouchYW: { args: [], returns: i32 },
|
|
40
|
+
GetTouchPositionW: { args: [ptr, i32], returns: FFIType.void },
|
|
41
|
+
GetTouchPointIdW: { args: [i32], returns: i32 },
|
|
42
|
+
GetTouchPointCountW: { args: [], returns: i32 },
|
|
43
|
+
SetGesturesEnabledW: { args: [i32], returns: FFIType.void },
|
|
44
|
+
IsGestureDetectedW: { args: [i32], returns: bool },
|
|
45
|
+
GetGestureDetectedW: { args: [], returns: i32 },
|
|
46
|
+
GetGestureHoldDurationW: { args: [], returns: f32 },
|
|
47
|
+
GetGestureDragVectorW: { args: [ptr], returns: FFIType.void },
|
|
48
|
+
GetGestureDragAngleW: { args: [], returns: f32 },
|
|
49
|
+
GetGesturePinchVectorW: { args: [ptr], returns: FFIType.void },
|
|
50
|
+
GetGesturePinchAngleW: { args: [], returns: f32 },
|
|
51
|
+
} as const;
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
import { FFIType } from "bun:ffi";
|
|
2
|
+
const { i32, cstring, bool, ptr } = FFIType;
|
|
3
|
+
|
|
4
|
+
export const modelSymbols = {
|
|
5
|
+
LoadModelW: { args: [cstring], returns: i32 },
|
|
6
|
+
UnloadModelW: { args: [i32], returns: FFIType.void },
|
|
7
|
+
IsModelValidW: { args: [i32], returns: bool },
|
|
8
|
+
GetModelBoundingBoxW: { args: [ptr, ptr, i32], returns: FFIType.void },
|
|
9
|
+
LoadModelFromMeshW: { args: [i32], returns: i32 },
|
|
10
|
+
UnloadMeshW: { args: [i32], returns: FFIType.void },
|
|
11
|
+
UploadMeshW: { args: [i32, bool], returns: FFIType.void },
|
|
12
|
+
GetMeshBoundingBoxW: { args: [ptr, ptr, i32], returns: FFIType.void },
|
|
13
|
+
GenMeshTangentsW: { args: [i32], returns: FFIType.void },
|
|
14
|
+
ExportMeshW: { args: [i32, cstring], returns: bool },
|
|
15
|
+
ExportMeshAsCodeW: { args: [i32, cstring], returns: bool },
|
|
16
|
+
GenMeshPolyW: { args: [i32, i32], returns: i32 },
|
|
17
|
+
GenMeshPlaneW: { args: [i32, i32, i32, i32], returns: i32 },
|
|
18
|
+
GenMeshCubeW: { args: [i32, i32, i32], returns: i32 },
|
|
19
|
+
GenMeshSphereW: { args: [i32, i32, i32], returns: i32 },
|
|
20
|
+
GenMeshHemiSphereW: { args: [i32, i32, i32], returns: i32 },
|
|
21
|
+
GenMeshCylinderW: { args: [i32, i32, i32], returns: i32 },
|
|
22
|
+
GenMeshConeW: { args: [i32, i32, i32], returns: i32 },
|
|
23
|
+
GenMeshTorusW: { args: [i32, i32, i32, i32], returns: i32 },
|
|
24
|
+
GenMeshKnotW: { args: [i32, i32, i32, i32], returns: i32 },
|
|
25
|
+
GenMeshHeightmapW: { args: [i32, i32, i32, i32], returns: i32 },
|
|
26
|
+
GenMeshCubicmapW: { args: [i32, i32, i32, i32], returns: i32 },
|
|
27
|
+
UpdateMeshBufferW: { args: [i32, i32, ptr, i32, i32], returns: FFIType.void },
|
|
28
|
+
LoadMaterialDefaultW: { args: [], returns: i32 },
|
|
29
|
+
IsMaterialValidW: { args: [i32], returns: bool },
|
|
30
|
+
UnloadMaterialW: { args: [i32], returns: FFIType.void },
|
|
31
|
+
SetMaterialTextureW: { args: [i32, i32, i32, i32, i32], returns: FFIType.void },
|
|
32
|
+
SetModelMeshMaterialW: { args: [i32, i32, i32], returns: FFIType.void },
|
|
33
|
+
LoadModelAnimationsW: { args: [ptr, ptr, cstring], returns: FFIType.void },
|
|
34
|
+
UpdateModelAnimationW: { args: [i32, i32, i32], returns: FFIType.void },
|
|
35
|
+
UpdateModelAnimationExW: { args: [i32, i32, i32, i32, i32, i32], returns: FFIType.void },
|
|
36
|
+
UnloadModelAnimationsW: { args: [i32, i32], returns: FFIType.void },
|
|
37
|
+
IsModelAnimationValidW: { args: [i32, i32], returns: bool },
|
|
38
|
+
} as const;
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { FFIType } from "bun:ffi";
|
|
2
|
+
const { i32, cstring, bool, ptr } = FFIType;
|
|
3
|
+
|
|
4
|
+
export const shaderSymbols = {
|
|
5
|
+
LoadShaderW: { args: [ptr, ptr], returns: i32 },
|
|
6
|
+
LoadShaderFromMemoryW: { args: [ptr, ptr], returns: i32 },
|
|
7
|
+
IsShaderValidW: { args: [i32], returns: bool },
|
|
8
|
+
GetShaderLocationW: { args: [i32, cstring], returns: i32 },
|
|
9
|
+
GetShaderLocationAttribW: { args: [i32, cstring], returns: i32 },
|
|
10
|
+
SetShaderValueMatrixW: { args: [i32, i32, ptr], returns: FFIType.void },
|
|
11
|
+
SetShaderValueTextureW: { args: [i32, i32, i32, i32, i32], returns: FFIType.void },
|
|
12
|
+
UnloadShaderW: { args: [i32], returns: FFIType.void },
|
|
13
|
+
BeginShaderModeW: { args: [i32], returns: FFIType.void },
|
|
14
|
+
EndShaderModeW: { args: [], returns: FFIType.void },
|
|
15
|
+
} as const;
|