raylib 5.5.0.0.dev2__cp311-cp311-manylinux2014_x86_64.whl → 5.5.0.0.dev3__cp311-cp311-manylinux2014_x86_64.whl
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.
Potentially problematic release.
This version of raylib might be problematic. Click here for more details.
- pyray/__init__.pyi +29 -23
- raylib/__init__.pyi +29 -23
- raylib/_raylib_cffi.cpython-311-x86_64-linux-gnu.so +0 -0
- raylib/raylib.h.modified +13 -11
- raylib/version.py +1 -1
- {raylib-5.5.0.0.dev2.dist-info → raylib-5.5.0.0.dev3.dist-info}/METADATA +19 -12
- {raylib-5.5.0.0.dev2.dist-info → raylib-5.5.0.0.dev3.dist-info}/RECORD +10 -10
- {raylib-5.5.0.0.dev2.dist-info → raylib-5.5.0.0.dev3.dist-info}/LICENSE +0 -0
- {raylib-5.5.0.0.dev2.dist-info → raylib-5.5.0.0.dev3.dist-info}/WHEEL +0 -0
- {raylib-5.5.0.0.dev2.dist-info → raylib-5.5.0.0.dev3.dist-info}/top_level.txt +0 -0
pyray/__init__.pyi
CHANGED
|
@@ -134,6 +134,12 @@ def color_to_int(color: Color,) -> int:
|
|
|
134
134
|
def compress_data(data: str,dataSize: int,compDataSize: Any,) -> str:
|
|
135
135
|
"""Compress data (DEFLATE algorithm), memory must be MemFree()"""
|
|
136
136
|
...
|
|
137
|
+
def compute_crc32(data: str,dataSize: int,) -> int:
|
|
138
|
+
"""Compute CRC32 hash code"""
|
|
139
|
+
...
|
|
140
|
+
def compute_md5(data: str,dataSize: int,) -> Any:
|
|
141
|
+
"""Compute MD5 hash code, returns static int[4] (16 bytes)"""
|
|
142
|
+
...
|
|
137
143
|
def create_physics_body_circle(pos: Vector2,radius: float,density: float,) -> Any:
|
|
138
144
|
"""Creates a new circle physics body with generic parameters"""
|
|
139
145
|
...
|
|
@@ -1229,8 +1235,8 @@ def is_audio_stream_playing(stream: AudioStream,) -> bool:
|
|
|
1229
1235
|
def is_audio_stream_processed(stream: AudioStream,) -> bool:
|
|
1230
1236
|
"""Check if any audio stream buffers requires refill"""
|
|
1231
1237
|
...
|
|
1232
|
-
def
|
|
1233
|
-
"""Checks if an audio stream is
|
|
1238
|
+
def is_audio_stream_valid(stream: AudioStream,) -> bool:
|
|
1239
|
+
"""Checks if an audio stream is valid (buffers initialized)"""
|
|
1234
1240
|
...
|
|
1235
1241
|
def is_cursor_hidden() -> bool:
|
|
1236
1242
|
"""Check if cursor is not visible"""
|
|
@@ -1247,8 +1253,8 @@ def is_file_extension(fileName: str,ext: str,) -> bool:
|
|
|
1247
1253
|
def is_file_name_valid(fileName: str,) -> bool:
|
|
1248
1254
|
"""Check if fileName is valid for the platform/OS"""
|
|
1249
1255
|
...
|
|
1250
|
-
def
|
|
1251
|
-
"""Check if a font is
|
|
1256
|
+
def is_font_valid(font: Font,) -> bool:
|
|
1257
|
+
"""Check if a font is valid (font data loaded, WARNING: GPU texture not checked)"""
|
|
1252
1258
|
...
|
|
1253
1259
|
def is_gamepad_available(gamepad: int,) -> bool:
|
|
1254
1260
|
"""Check if a gamepad is available"""
|
|
@@ -1268,8 +1274,8 @@ def is_gamepad_button_up(gamepad: int,button: int,) -> bool:
|
|
|
1268
1274
|
def is_gesture_detected(gesture: int,) -> bool:
|
|
1269
1275
|
"""Check if a gesture have been detected"""
|
|
1270
1276
|
...
|
|
1271
|
-
def
|
|
1272
|
-
"""Check if an image is
|
|
1277
|
+
def is_image_valid(image: Image,) -> bool:
|
|
1278
|
+
"""Check if an image is valid (data and parameters)"""
|
|
1273
1279
|
...
|
|
1274
1280
|
def is_key_down(key: int,) -> bool:
|
|
1275
1281
|
"""Check if a key is being pressed"""
|
|
@@ -1286,14 +1292,14 @@ def is_key_released(key: int,) -> bool:
|
|
|
1286
1292
|
def is_key_up(key: int,) -> bool:
|
|
1287
1293
|
"""Check if a key is NOT being pressed"""
|
|
1288
1294
|
...
|
|
1289
|
-
def
|
|
1290
|
-
"""Check if a material is
|
|
1295
|
+
def is_material_valid(material: Material,) -> bool:
|
|
1296
|
+
"""Check if a material is valid (shader assigned, map textures loaded in GPU)"""
|
|
1291
1297
|
...
|
|
1292
1298
|
def is_model_animation_valid(model: Model,anim: ModelAnimation,) -> bool:
|
|
1293
1299
|
"""Check model animation skeleton match"""
|
|
1294
1300
|
...
|
|
1295
|
-
def
|
|
1296
|
-
"""Check if a model is
|
|
1301
|
+
def is_model_valid(model: Model,) -> bool:
|
|
1302
|
+
"""Check if a model is valid (loaded in GPU, VAO/VBOs)"""
|
|
1297
1303
|
...
|
|
1298
1304
|
def is_mouse_button_down(button: int,) -> bool:
|
|
1299
1305
|
"""Check if a mouse button is being pressed"""
|
|
@@ -1307,32 +1313,32 @@ def is_mouse_button_released(button: int,) -> bool:
|
|
|
1307
1313
|
def is_mouse_button_up(button: int,) -> bool:
|
|
1308
1314
|
"""Check if a mouse button is NOT being pressed"""
|
|
1309
1315
|
...
|
|
1310
|
-
def is_music_ready(music: Music,) -> bool:
|
|
1311
|
-
"""Checks if a music stream is ready"""
|
|
1312
|
-
...
|
|
1313
1316
|
def is_music_stream_playing(music: Music,) -> bool:
|
|
1314
1317
|
"""Check if music is playing"""
|
|
1315
1318
|
...
|
|
1319
|
+
def is_music_valid(music: Music,) -> bool:
|
|
1320
|
+
"""Checks if a music stream is valid (context and buffers initialized)"""
|
|
1321
|
+
...
|
|
1316
1322
|
def is_path_file(path: str,) -> bool:
|
|
1317
1323
|
"""Check if a given path is a file or a directory"""
|
|
1318
1324
|
...
|
|
1319
|
-
def
|
|
1320
|
-
"""Check if a render texture is
|
|
1325
|
+
def is_render_texture_valid(target: RenderTexture,) -> bool:
|
|
1326
|
+
"""Check if a render texture is valid (loaded in GPU)"""
|
|
1321
1327
|
...
|
|
1322
|
-
def
|
|
1323
|
-
"""Check if a shader is
|
|
1328
|
+
def is_shader_valid(shader: Shader,) -> bool:
|
|
1329
|
+
"""Check if a shader is valid (loaded on GPU)"""
|
|
1324
1330
|
...
|
|
1325
1331
|
def is_sound_playing(sound: Sound,) -> bool:
|
|
1326
1332
|
"""Check if a sound is currently playing"""
|
|
1327
1333
|
...
|
|
1328
|
-
def
|
|
1329
|
-
"""Checks if a sound is
|
|
1334
|
+
def is_sound_valid(sound: Sound,) -> bool:
|
|
1335
|
+
"""Checks if a sound is valid (data loaded and buffers initialized)"""
|
|
1330
1336
|
...
|
|
1331
|
-
def
|
|
1332
|
-
"""Check if a texture is
|
|
1337
|
+
def is_texture_valid(texture: Texture,) -> bool:
|
|
1338
|
+
"""Check if a texture is valid (loaded in GPU)"""
|
|
1333
1339
|
...
|
|
1334
|
-
def
|
|
1335
|
-
"""Checks if wave data is
|
|
1340
|
+
def is_wave_valid(wave: Wave,) -> bool:
|
|
1341
|
+
"""Checks if wave data is valid (data loaded and parameters)"""
|
|
1336
1342
|
...
|
|
1337
1343
|
def is_window_focused() -> bool:
|
|
1338
1344
|
"""Check if window is currently focused (only PLATFORM_DESKTOP)"""
|
raylib/__init__.pyi
CHANGED
|
@@ -182,6 +182,12 @@ def ColorToInt(color: Color,) -> int:
|
|
|
182
182
|
def CompressData(data: str,dataSize: int,compDataSize: Any,) -> str:
|
|
183
183
|
"""Compress data (DEFLATE algorithm), memory must be MemFree()"""
|
|
184
184
|
...
|
|
185
|
+
def ComputeCRC32(data: str,dataSize: int,) -> int:
|
|
186
|
+
"""Compute CRC32 hash code"""
|
|
187
|
+
...
|
|
188
|
+
def ComputeMD5(data: str,dataSize: int,) -> Any:
|
|
189
|
+
"""Compute MD5 hash code, returns static int[4] (16 bytes)"""
|
|
190
|
+
...
|
|
185
191
|
def CreatePhysicsBodyCircle(pos: Vector2,radius: float,density: float,) -> Any:
|
|
186
192
|
"""Creates a new circle physics body with generic parameters"""
|
|
187
193
|
...
|
|
@@ -1597,8 +1603,8 @@ def IsAudioStreamPlaying(stream: AudioStream,) -> bool:
|
|
|
1597
1603
|
def IsAudioStreamProcessed(stream: AudioStream,) -> bool:
|
|
1598
1604
|
"""Check if any audio stream buffers requires refill"""
|
|
1599
1605
|
...
|
|
1600
|
-
def
|
|
1601
|
-
"""Checks if an audio stream is
|
|
1606
|
+
def IsAudioStreamValid(stream: AudioStream,) -> bool:
|
|
1607
|
+
"""Checks if an audio stream is valid (buffers initialized)"""
|
|
1602
1608
|
...
|
|
1603
1609
|
def IsCursorHidden() -> bool:
|
|
1604
1610
|
"""Check if cursor is not visible"""
|
|
@@ -1615,8 +1621,8 @@ def IsFileExtension(fileName: str,ext: str,) -> bool:
|
|
|
1615
1621
|
def IsFileNameValid(fileName: str,) -> bool:
|
|
1616
1622
|
"""Check if fileName is valid for the platform/OS"""
|
|
1617
1623
|
...
|
|
1618
|
-
def
|
|
1619
|
-
"""Check if a font is
|
|
1624
|
+
def IsFontValid(font: Font,) -> bool:
|
|
1625
|
+
"""Check if a font is valid (font data loaded, WARNING: GPU texture not checked)"""
|
|
1620
1626
|
...
|
|
1621
1627
|
def IsGamepadAvailable(gamepad: int,) -> bool:
|
|
1622
1628
|
"""Check if a gamepad is available"""
|
|
@@ -1636,8 +1642,8 @@ def IsGamepadButtonUp(gamepad: int,button: int,) -> bool:
|
|
|
1636
1642
|
def IsGestureDetected(gesture: int,) -> bool:
|
|
1637
1643
|
"""Check if a gesture have been detected"""
|
|
1638
1644
|
...
|
|
1639
|
-
def
|
|
1640
|
-
"""Check if an image is
|
|
1645
|
+
def IsImageValid(image: Image,) -> bool:
|
|
1646
|
+
"""Check if an image is valid (data and parameters)"""
|
|
1641
1647
|
...
|
|
1642
1648
|
def IsKeyDown(key: int,) -> bool:
|
|
1643
1649
|
"""Check if a key is being pressed"""
|
|
@@ -1654,14 +1660,14 @@ def IsKeyReleased(key: int,) -> bool:
|
|
|
1654
1660
|
def IsKeyUp(key: int,) -> bool:
|
|
1655
1661
|
"""Check if a key is NOT being pressed"""
|
|
1656
1662
|
...
|
|
1657
|
-
def
|
|
1658
|
-
"""Check if a material is
|
|
1663
|
+
def IsMaterialValid(material: Material,) -> bool:
|
|
1664
|
+
"""Check if a material is valid (shader assigned, map textures loaded in GPU)"""
|
|
1659
1665
|
...
|
|
1660
1666
|
def IsModelAnimationValid(model: Model,anim: ModelAnimation,) -> bool:
|
|
1661
1667
|
"""Check model animation skeleton match"""
|
|
1662
1668
|
...
|
|
1663
|
-
def
|
|
1664
|
-
"""Check if a model is
|
|
1669
|
+
def IsModelValid(model: Model,) -> bool:
|
|
1670
|
+
"""Check if a model is valid (loaded in GPU, VAO/VBOs)"""
|
|
1665
1671
|
...
|
|
1666
1672
|
def IsMouseButtonDown(button: int,) -> bool:
|
|
1667
1673
|
"""Check if a mouse button is being pressed"""
|
|
@@ -1675,32 +1681,32 @@ def IsMouseButtonReleased(button: int,) -> bool:
|
|
|
1675
1681
|
def IsMouseButtonUp(button: int,) -> bool:
|
|
1676
1682
|
"""Check if a mouse button is NOT being pressed"""
|
|
1677
1683
|
...
|
|
1678
|
-
def IsMusicReady(music: Music,) -> bool:
|
|
1679
|
-
"""Checks if a music stream is ready"""
|
|
1680
|
-
...
|
|
1681
1684
|
def IsMusicStreamPlaying(music: Music,) -> bool:
|
|
1682
1685
|
"""Check if music is playing"""
|
|
1683
1686
|
...
|
|
1687
|
+
def IsMusicValid(music: Music,) -> bool:
|
|
1688
|
+
"""Checks if a music stream is valid (context and buffers initialized)"""
|
|
1689
|
+
...
|
|
1684
1690
|
def IsPathFile(path: str,) -> bool:
|
|
1685
1691
|
"""Check if a given path is a file or a directory"""
|
|
1686
1692
|
...
|
|
1687
|
-
def
|
|
1688
|
-
"""Check if a render texture is
|
|
1693
|
+
def IsRenderTextureValid(target: RenderTexture,) -> bool:
|
|
1694
|
+
"""Check if a render texture is valid (loaded in GPU)"""
|
|
1689
1695
|
...
|
|
1690
|
-
def
|
|
1691
|
-
"""Check if a shader is
|
|
1696
|
+
def IsShaderValid(shader: Shader,) -> bool:
|
|
1697
|
+
"""Check if a shader is valid (loaded on GPU)"""
|
|
1692
1698
|
...
|
|
1693
1699
|
def IsSoundPlaying(sound: Sound,) -> bool:
|
|
1694
1700
|
"""Check if a sound is currently playing"""
|
|
1695
1701
|
...
|
|
1696
|
-
def
|
|
1697
|
-
"""Checks if a sound is
|
|
1702
|
+
def IsSoundValid(sound: Sound,) -> bool:
|
|
1703
|
+
"""Checks if a sound is valid (data loaded and buffers initialized)"""
|
|
1698
1704
|
...
|
|
1699
|
-
def
|
|
1700
|
-
"""Check if a texture is
|
|
1705
|
+
def IsTextureValid(texture: Texture,) -> bool:
|
|
1706
|
+
"""Check if a texture is valid (loaded in GPU)"""
|
|
1701
1707
|
...
|
|
1702
|
-
def
|
|
1703
|
-
"""Checks if wave data is
|
|
1708
|
+
def IsWaveValid(wave: Wave,) -> bool:
|
|
1709
|
+
"""Checks if wave data is valid (data loaded and parameters)"""
|
|
1704
1710
|
...
|
|
1705
1711
|
def IsWindowFocused() -> bool:
|
|
1706
1712
|
"""Check if window is currently focused (only PLATFORM_DESKTOP)"""
|
|
Binary file
|
raylib/raylib.h.modified
CHANGED
|
@@ -849,7 +849,7 @@ typedef bool (*SaveFileTextCallback)(const char *fileName, char *text); // FileI
|
|
|
849
849
|
// NOTE: Shader functionality is not available on OpenGL 1.1
|
|
850
850
|
Shader LoadShader(const char *vsFileName, const char *fsFileName); // Load shader from files and bind default locations
|
|
851
851
|
Shader LoadShaderFromMemory(const char *vsCode, const char *fsCode); // Load shader from code strings and bind default locations
|
|
852
|
-
bool
|
|
852
|
+
bool IsShaderValid(Shader shader); // Check if a shader is valid (loaded on GPU)
|
|
853
853
|
int GetShaderLocation(Shader shader, const char *uniformName); // Get shader uniform location
|
|
854
854
|
int GetShaderLocationAttrib(Shader shader, const char *attribName); // Get shader attribute location
|
|
855
855
|
void SetShaderValue(Shader shader, int locIndex, const void *value, int uniformType); // Set shader uniform value
|
|
@@ -938,6 +938,8 @@ typedef bool (*SaveFileTextCallback)(const char *fileName, char *text); // FileI
|
|
|
938
938
|
unsigned char *DecompressData(const unsigned char *compData, int compDataSize, int *dataSize); // Decompress data (DEFLATE algorithm), memory must be MemFree()
|
|
939
939
|
char *EncodeDataBase64(const unsigned char *data, int dataSize, int *outputSize); // Encode data to Base64 string, memory must be MemFree()
|
|
940
940
|
unsigned char *DecodeDataBase64(const unsigned char *data, int *outputSize); // Decode Base64 string data, memory must be MemFree()
|
|
941
|
+
unsigned int ComputeCRC32(unsigned char *data, int dataSize); // Compute CRC32 hash code
|
|
942
|
+
unsigned int *ComputeMD5(unsigned char *data, int dataSize); // Compute MD5 hash code, returns static int[4] (16 bytes)
|
|
941
943
|
// Automation events functionality
|
|
942
944
|
AutomationEventList LoadAutomationEventList(const char *fileName); // Load automation events list from file, NULL for empty list, capacity = MAX_AUTOMATION_EVENTS
|
|
943
945
|
void UnloadAutomationEventList(AutomationEventList list); // Unload automation events list from file
|
|
@@ -1096,7 +1098,7 @@ typedef bool (*SaveFileTextCallback)(const char *fileName, char *text); // FileI
|
|
|
1096
1098
|
Image LoadImageFromMemory(const char *fileType, const unsigned char *fileData, int dataSize); // Load image from memory buffer, fileType refers to extension: i.e. '.png'
|
|
1097
1099
|
Image LoadImageFromTexture(Texture2D texture); // Load image from GPU texture data
|
|
1098
1100
|
Image LoadImageFromScreen(void); // Load image from screen buffer and (screenshot)
|
|
1099
|
-
bool
|
|
1101
|
+
bool IsImageValid(Image image); // Check if an image is valid (data and parameters)
|
|
1100
1102
|
void UnloadImage(Image image); // Unload image from CPU memory (RAM)
|
|
1101
1103
|
bool ExportImage(Image image, const char *fileName); // Export image data to file, returns true on success
|
|
1102
1104
|
unsigned char *ExportImageToMemory(Image image, const char *fileType, int *fileSize); // Export image to memory buffer
|
|
@@ -1178,9 +1180,9 @@ typedef bool (*SaveFileTextCallback)(const char *fileName, char *text); // FileI
|
|
|
1178
1180
|
Texture2D LoadTextureFromImage(Image image); // Load texture from image data
|
|
1179
1181
|
TextureCubemap LoadTextureCubemap(Image image, int layout); // Load cubemap from image, multiple image cubemap layouts supported
|
|
1180
1182
|
RenderTexture2D LoadRenderTexture(int width, int height); // Load texture for rendering (framebuffer)
|
|
1181
|
-
bool
|
|
1183
|
+
bool IsTextureValid(Texture2D texture); // Check if a texture is valid (loaded in GPU)
|
|
1182
1184
|
void UnloadTexture(Texture2D texture); // Unload texture from GPU memory (VRAM)
|
|
1183
|
-
bool
|
|
1185
|
+
bool IsRenderTextureValid(RenderTexture2D target); // Check if a render texture is valid (loaded in GPU)
|
|
1184
1186
|
void UnloadRenderTexture(RenderTexture2D target); // Unload render texture from GPU memory (VRAM)
|
|
1185
1187
|
void UpdateTexture(Texture2D texture, const void *pixels); // Update GPU texture with new data
|
|
1186
1188
|
void UpdateTextureRec(Texture2D texture, Rectangle rec, const void *pixels); // Update GPU texture rectangle with new data
|
|
@@ -1222,7 +1224,7 @@ typedef bool (*SaveFileTextCallback)(const char *fileName, char *text); // FileI
|
|
|
1222
1224
|
Font LoadFontEx(const char *fileName, int fontSize, int *codepoints, int codepointCount); // Load font from file with extended parameters, use NULL for codepoints and 0 for codepointCount to load the default character set, font size is provided in pixels height
|
|
1223
1225
|
Font LoadFontFromImage(Image image, Color key, int firstChar); // Load font from Image (XNA style)
|
|
1224
1226
|
Font LoadFontFromMemory(const char *fileType, const unsigned char *fileData, int dataSize, int fontSize, int *codepoints, int codepointCount); // Load font from memory buffer, fileType refers to extension: i.e. '.ttf'
|
|
1225
|
-
bool
|
|
1227
|
+
bool IsFontValid(Font font); // Check if a font is valid (font data loaded, WARNING: GPU texture not checked)
|
|
1226
1228
|
GlyphInfo *LoadFontData(const unsigned char *fileData, int dataSize, int fontSize, int *codepoints, int codepointCount, int type); // Load font data for further use
|
|
1227
1229
|
Image GenImageFontAtlas(const GlyphInfo *glyphs, Rectangle **glyphRecs, int glyphCount, int fontSize, int padding, int packMethod); // Generate image font atlas using chars info
|
|
1228
1230
|
void UnloadFontData(GlyphInfo *glyphs, int glyphCount); // Unload font chars info data (RAM)
|
|
@@ -1303,7 +1305,7 @@ typedef bool (*SaveFileTextCallback)(const char *fileName, char *text); // FileI
|
|
|
1303
1305
|
// Model management functions
|
|
1304
1306
|
Model LoadModel(const char *fileName); // Load model from files (meshes and materials)
|
|
1305
1307
|
Model LoadModelFromMesh(Mesh mesh); // Load model from generated mesh (default material)
|
|
1306
|
-
bool
|
|
1308
|
+
bool IsModelValid(Model model); // Check if a model is valid (loaded in GPU, VAO/VBOs)
|
|
1307
1309
|
void UnloadModel(Model model); // Unload model (including meshes) from memory (RAM and/or VRAM)
|
|
1308
1310
|
BoundingBox GetModelBoundingBox(Model model); // Compute model bounding box limits (considers all meshes)
|
|
1309
1311
|
// Model drawing functions
|
|
@@ -1342,7 +1344,7 @@ typedef bool (*SaveFileTextCallback)(const char *fileName, char *text); // FileI
|
|
|
1342
1344
|
// Material loading/unloading functions
|
|
1343
1345
|
Material *LoadMaterials(const char *fileName, int *materialCount); // Load materials from model file
|
|
1344
1346
|
Material LoadMaterialDefault(void); // Load default material (Supports: DIFFUSE, SPECULAR, NORMAL maps)
|
|
1345
|
-
bool
|
|
1347
|
+
bool IsMaterialValid(Material material); // Check if a material is valid (shader assigned, map textures loaded in GPU)
|
|
1346
1348
|
void UnloadMaterial(Material material); // Unload material from GPU memory (VRAM)
|
|
1347
1349
|
void SetMaterialTexture(Material *material, int mapType, Texture2D texture); // Set texture for a material map type (MATERIAL_MAP_DIFFUSE, MATERIAL_MAP_SPECULAR...)
|
|
1348
1350
|
void SetModelMeshMaterial(Model *model, int meshId, int materialId); // Set material for a mesh
|
|
@@ -1375,11 +1377,11 @@ typedef void (*AudioCallback)(void *bufferData, unsigned int frames);
|
|
|
1375
1377
|
// Wave/Sound loading/unloading functions
|
|
1376
1378
|
Wave LoadWave(const char *fileName); // Load wave data from file
|
|
1377
1379
|
Wave LoadWaveFromMemory(const char *fileType, const unsigned char *fileData, int dataSize); // Load wave from memory buffer, fileType refers to extension: i.e. '.wav'
|
|
1378
|
-
bool
|
|
1380
|
+
bool IsWaveValid(Wave wave); // Checks if wave data is valid (data loaded and parameters)
|
|
1379
1381
|
Sound LoadSound(const char *fileName); // Load sound from file
|
|
1380
1382
|
Sound LoadSoundFromWave(Wave wave); // Load sound from wave data
|
|
1381
1383
|
Sound LoadSoundAlias(Sound source); // Create a new sound that shares the same sample data as the source sound, does not own the sound data
|
|
1382
|
-
bool
|
|
1384
|
+
bool IsSoundValid(Sound sound); // Checks if a sound is valid (data loaded and buffers initialized)
|
|
1383
1385
|
void UpdateSound(Sound sound, const void *data, int sampleCount); // Update sound buffer with new data
|
|
1384
1386
|
void UnloadWave(Wave wave); // Unload wave data
|
|
1385
1387
|
void UnloadSound(Sound sound); // Unload sound
|
|
@@ -1403,7 +1405,7 @@ typedef void (*AudioCallback)(void *bufferData, unsigned int frames);
|
|
|
1403
1405
|
// Music management functions
|
|
1404
1406
|
Music LoadMusicStream(const char *fileName); // Load music stream from file
|
|
1405
1407
|
Music LoadMusicStreamFromMemory(const char *fileType, const unsigned char *data, int dataSize); // Load music stream from data
|
|
1406
|
-
bool
|
|
1408
|
+
bool IsMusicValid(Music music); // Checks if a music stream is valid (context and buffers initialized)
|
|
1407
1409
|
void UnloadMusicStream(Music music); // Unload music stream
|
|
1408
1410
|
void PlayMusicStream(Music music); // Start music playing
|
|
1409
1411
|
bool IsMusicStreamPlaying(Music music); // Check if music is playing
|
|
@@ -1419,7 +1421,7 @@ typedef void (*AudioCallback)(void *bufferData, unsigned int frames);
|
|
|
1419
1421
|
float GetMusicTimePlayed(Music music); // Get current music time played (in seconds)
|
|
1420
1422
|
// AudioStream management functions
|
|
1421
1423
|
AudioStream LoadAudioStream(unsigned int sampleRate, unsigned int sampleSize, unsigned int channels); // Load audio stream (to stream raw audio pcm data)
|
|
1422
|
-
bool
|
|
1424
|
+
bool IsAudioStreamValid(AudioStream stream); // Checks if an audio stream is valid (buffers initialized)
|
|
1423
1425
|
void UnloadAudioStream(AudioStream stream); // Unload audio stream and free memory
|
|
1424
1426
|
void UpdateAudioStream(AudioStream stream, const void *data, int frameCount); // Update audio stream buffers with data
|
|
1425
1427
|
bool IsAudioStreamProcessed(AudioStream stream); // Check if any audio stream buffers requires refill
|
raylib/version.py
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
__version__ = "5.5.0.0.
|
|
1
|
+
__version__ = "5.5.0.0.dev3"
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.1
|
|
2
2
|
Name: raylib
|
|
3
|
-
Version: 5.5.0.0.
|
|
3
|
+
Version: 5.5.0.0.dev3
|
|
4
4
|
Summary: Python CFFI bindings for Raylib
|
|
5
5
|
Home-page: https://github.com/electronstudio/raylib-python-cffi
|
|
6
6
|
Author: Electron Studio
|
|
@@ -23,7 +23,7 @@ Requires-Dist: cffi>=1.17.1
|
|
|
23
23
|
## Libraries: raymath, raygui, rlgl, physac and GLFW
|
|
24
24
|
## Backends: Desktop, SDL, DRM, Web
|
|
25
25
|
|
|
26
|
-
Chatroom: [Discord](https://discord.gg/fKDwt85aX6)
|
|
26
|
+
Chatroom: [Discord](https://discord.gg/fKDwt85aX6)
|
|
27
27
|
|
|
28
28
|
New CFFI API static bindings.
|
|
29
29
|
* Automatically generated to be as close as possible to
|
|
@@ -60,7 +60,8 @@ Then install
|
|
|
60
60
|
python3 -m pip install setuptools
|
|
61
61
|
python3 -m pip install raylib==5.0.0.4
|
|
62
62
|
|
|
63
|
-
On most platforms it should install a binary wheel. If yours isn't available then pip will attempt to build from
|
|
63
|
+
On most platforms it should install a binary wheel. If yours isn't available then pip will attempt to build from
|
|
64
|
+
source, in which case you will need to have Raylib development libs installed, e.g.
|
|
64
65
|
using homebrew, apt, etc.
|
|
65
66
|
|
|
66
67
|
## Windows
|
|
@@ -73,7 +74,7 @@ Use an [official Windows Python release](https://www.python.org/downloads/window
|
|
|
73
74
|
|
|
74
75
|
Binaries require:
|
|
75
76
|
* arm64 MacOS 14
|
|
76
|
-
* x64 MacOS
|
|
77
|
+
* x64 MacOS 10.13, or newer.
|
|
77
78
|
|
|
78
79
|
Older MacOS requires building from source but this is usually simple:
|
|
79
80
|
|
|
@@ -81,12 +82,15 @@ Older MacOS requires building from source but this is usually simple:
|
|
|
81
82
|
brew install raylib
|
|
82
83
|
python3 -m pip install raylib==5.0.0.4
|
|
83
84
|
|
|
85
|
+
(I do have binaries for arm64 MacOS 11, 12 and 13 but I have no way of testing they work, so post an issue
|
|
86
|
+
if you want to test them.)
|
|
87
|
+
|
|
84
88
|
## Linux
|
|
85
89
|
|
|
86
90
|
Binaries require OS newer than Ubuntu 2020, x64 or arm64. Otherwise build from source.
|
|
87
91
|
(Pip should attempt automatically but will need Raylib itself installed and also pkg-config.)
|
|
88
92
|
|
|
89
|
-
The arm64
|
|
93
|
+
The arm64 binaries are built on Raspberry Pi arm64 Bullseye with OpenGL 2.0
|
|
90
94
|
so may not work on other boards.
|
|
91
95
|
|
|
92
96
|
## Raspberry Pi
|
|
@@ -97,6 +101,7 @@ so may not work on other boards.
|
|
|
97
101
|
|
|
98
102
|
There is now a separate dynamic version of this binding:
|
|
99
103
|
|
|
104
|
+
python3 -m pip uninstall raylib
|
|
100
105
|
python3 -m pip install raylib_dynamic
|
|
101
106
|
|
|
102
107
|
It works on some systems where the static version doesn't, [but be sure to read these caveats before using it](https://electronstudio.github.io/raylib-python-cffi/dynamic.html)
|
|
@@ -108,7 +113,7 @@ This is not well tested but has better support for controllers:
|
|
|
108
113
|
python3 -m pip uninstall raylib
|
|
109
114
|
python3 -m pip install raylib_sdl
|
|
110
115
|
|
|
111
|
-
You can't have multiple
|
|
116
|
+
You can't have multiple raylib packages installed at once.
|
|
112
117
|
|
|
113
118
|
## DRM backend
|
|
114
119
|
|
|
@@ -117,29 +122,31 @@ This uses the Linux framebuffer for devices that don't run X11/Wayland:
|
|
|
117
122
|
python3 -m pip uninstall raylib
|
|
118
123
|
python3 -m pip install raylib_drm
|
|
119
124
|
|
|
120
|
-
You can't have multiple
|
|
125
|
+
You can't have multiple raylib packages installed at once.
|
|
121
126
|
|
|
122
127
|
## Problems?
|
|
123
128
|
|
|
124
129
|
If it doesn't work, [try to build manually.](BUILDING.rst). If that works then [submit an issue](https://github.com/electronstudio/raylib-python-cffi/issues)
|
|
125
130
|
to let us know what you did.
|
|
126
131
|
|
|
127
|
-
If you need help you can try asking
|
|
132
|
+
If you need help you can try asking on [our discord](https://discord.gg/fKDwt85aX6). There is also a large [Raylib discord](https://discord.gg/raylib)
|
|
133
|
+
for issues that are not Python-specific.
|
|
128
134
|
|
|
129
135
|
If it still doesn't work, [submit an issue](https://github.com/electronstudio/raylib-python-cffi/issues).
|
|
130
136
|
|
|
131
137
|
|
|
132
138
|
# How to use
|
|
133
139
|
|
|
134
|
-
There are two
|
|
140
|
+
There are two modules in the raylib package, `raylib` and `pyray`. (There is no separate package for
|
|
141
|
+
pyray). You can use either or both:
|
|
135
142
|
|
|
136
143
|
### If you are familiar with C coding and the Raylib C library and you want to use an exact copy of the C API
|
|
137
144
|
|
|
138
|
-
Use [the
|
|
145
|
+
Use [the raylib module](https://electronstudio.github.io/raylib-python-cffi/raylib.html).
|
|
139
146
|
|
|
140
|
-
### If you prefer a
|
|
147
|
+
### If you prefer a more Pythonistic API
|
|
141
148
|
|
|
142
|
-
Use [the
|
|
149
|
+
Use [the pyray module](https://electronstudio.github.io/raylib-python-cffi/pyray.html).
|
|
143
150
|
|
|
144
151
|
# Running in a web browser
|
|
145
152
|
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
pyray/__init__.py,sha256=6sEm8KxRaK2B2PQo7ZlbXkHoxBDLW43wYSs_Cl7rUMg,7119
|
|
2
|
-
pyray/__init__.pyi,sha256=
|
|
2
|
+
pyray/__init__.pyi,sha256=FcO-AAvJVTyfYlM5ddXSAXTP3y0J5lj7lYz6ZjBxVxM,158204
|
|
3
3
|
raylib/__init__.py,sha256=DWXPmoq7tC5wzZsrt6rReGy1RflyZwk-SdF-9lBZHok,919
|
|
4
|
-
raylib/__init__.pyi,sha256=
|
|
5
|
-
raylib/_raylib_cffi.cpython-311-x86_64-linux-gnu.so,sha256=
|
|
4
|
+
raylib/__init__.pyi,sha256=0jozQX2T1oJgjIF65v0x1BaMDaAxcgoSMIyI_khuKj8,146157
|
|
5
|
+
raylib/_raylib_cffi.cpython-311-x86_64-linux-gnu.so,sha256=gEewhKJxaXMJIoDAJF6YvPUeDwi0hkTLQvvjaqjl-60,6383360
|
|
6
6
|
raylib/build.py,sha256=vF0eAp5y3CZv6dLM-4EQnXWmkXwohQ9Z17vTy9AD2cY,9964
|
|
7
7
|
raylib/colors.py,sha256=_u-mYrpdx7_v_4wnJrnSu_m36ixKJWbort780_V6rTw,1523
|
|
8
8
|
raylib/defines.py,sha256=_brO9OSA1Kzg9aiGXhiYyMmiJxbOkvHU_kLjLLNLJB4,16983
|
|
@@ -10,12 +10,12 @@ raylib/enums.py,sha256=pT4AwJYqrjVKVyWtYdgDStGY35X1q-pT7kEP3jPxTkk,17818
|
|
|
10
10
|
raylib/glfw3.h.modified,sha256=jC6-1XuWxG2FMnRhuXTKuI7KIEhPTwwO2OtNGEDOcvs,213261
|
|
11
11
|
raylib/physac.h.modified,sha256=UG9-bqfL71k4MxaW3DcaP9a5Mcga66CrufVHaUhgYjM,9724
|
|
12
12
|
raylib/raygui.h.modified,sha256=75djppnwPjTjTfNVcUaXKxGau2PqUisL9oy_yVXQgV8,46107
|
|
13
|
-
raylib/raylib.h.modified,sha256=
|
|
13
|
+
raylib/raylib.h.modified,sha256=HNhnWJtQrifFgqGxo9bljHC9bgrf8uH_n6jMwg-uOpY,104779
|
|
14
14
|
raylib/raymath.h.modified,sha256=jV6K62Nck8nTv89pqJoBVMouhwuj4yJAodjP7fQk128,28166
|
|
15
15
|
raylib/rlgl.h.modified,sha256=CWlw2nho5Yzn-CizWGqhEVNfp4_lFB30HjSlV6he1EM,36729
|
|
16
|
-
raylib/version.py,sha256=
|
|
17
|
-
raylib-5.5.0.0.
|
|
18
|
-
raylib-5.5.0.0.
|
|
19
|
-
raylib-5.5.0.0.
|
|
20
|
-
raylib-5.5.0.0.
|
|
21
|
-
raylib-5.5.0.0.
|
|
16
|
+
raylib/version.py,sha256=xA5FaUfbrXveqp9pWJaECG35S4zfEyItHUpEpZUlYGE,28
|
|
17
|
+
raylib-5.5.0.0.dev3.dist-info/LICENSE,sha256=C-zxZWe-t3-iUrdmRjHdF3yPmhiJ5ImVtFN5xxMOUwM,14198
|
|
18
|
+
raylib-5.5.0.0.dev3.dist-info/METADATA,sha256=TonyD-nnB4muy2lJgk-KX99hWZOugc79u0jltOaYZm0,9189
|
|
19
|
+
raylib-5.5.0.0.dev3.dist-info/WHEEL,sha256=psqLctY23KHVzJBRA0eV4Xgo09aO-tWXBAEHEiSxnw8,113
|
|
20
|
+
raylib-5.5.0.0.dev3.dist-info/top_level.txt,sha256=PnMBDWaUP4jsbn_NewagcC9FjHYpzSAIQuhxNzt9hkg,13
|
|
21
|
+
raylib-5.5.0.0.dev3.dist-info/RECORD,,
|
|
File without changes
|
|
File without changes
|
|
File without changes
|