From df67e799ddab275006bc264b9672d83d2e7ed5a4 Mon Sep 17 00:00:00 2001 From: Ray San Date: Fri, 20 Oct 2017 17:14:58 +0200 Subject: Updated release versions for raylib 1.8 --- release/include/raylib.h | 45 ++++++++++++++++++-------- release/libs/android/armeabi-v7a/libraylib.a | Bin 759594 -> 760182 bytes release/libs/android/armeabi-v7a/libraylib.so | Bin 477744 -> 477808 bytes release/libs/html5/libraylib.bc | Bin 763604 -> 763552 bytes release/libs/win32/mingw32/libraylib.a | Bin 700748 -> 671510 bytes release/libs/win32/mingw32/libraylibdll.a | Bin 193632 -> 293464 bytes release/libs/win32/mingw32/raylib.dll | Bin 721385 -> 1552376 bytes 7 files changed, 31 insertions(+), 14 deletions(-) (limited to 'release') diff --git a/release/include/raylib.h b/release/include/raylib.h index 7d656ec8..392e0a24 100644 --- a/release/include/raylib.h +++ b/release/include/raylib.h @@ -5,21 +5,22 @@ * A simple and easy-to-use library to learn videogames programming (www.raylib.com) * * FEATURES: -* - Library written in plain C code (C99) -* - Multiple platforms supported: Windows, Linux, Mac, Android, Raspberry Pi, HTML5. +* - Written in plain C code (C99) in PascalCase/camelCase notation +* - Multiple platforms support: Windows, Linux, Mac, Android, Raspberry Pi and HTML5 * - Hardware accelerated with OpenGL (1.1, 2.1, 3.3 or ES 2.0) * - Unique OpenGL abstraction layer (usable as standalone module): [rlgl] * - Powerful fonts module with SpriteFonts support (XNA bitmap fonts, AngelCode fonts, TTF) -* - Multiple textures support, including compressed formats and mipmaps generation -* - Basic 3d support for Shapes, Models, Billboards, Heightmaps and Cubicmaps +* - Outstanding texture formats support, including compressed formats (DXT, ETC, PVRT, ASTC) +* - Basic 3d support for Geometrics, Models, Billboards, Heightmaps and Cubicmaps +* - Flexible Materials system, supporting classic maps and PBR maps +* - Shaders support, including Model shaders and Postprocessing shaders * - Powerful math module for Vector2, Vector3, Matrix and Quaternion operations: [raymath] * - Audio loading and playing with streaming support and mixing channels: [audio] * - VR stereo rendering support with configurable HMD device parameters * - Minimal external dependencies (GLFW3, OpenGL, OpenAL) -* - Complete bindings for Lua, Go and Pascal +* - Complete bindings to LUA (raylib-lua) and Go (raylib-go) * * NOTES: -* 32bit Colors - Any defined Color is always RGBA (4 byte) * One custom font is loaded by default when InitWindow() [core] * If using OpenGL 3.3 or ES2, one default shader is loaded automatically (internally defined) [rlgl] * If using OpenGL 3.3 or ES2, several vertex buffers (VAO/VBO) are created to manage lines-triangles-quads @@ -31,12 +32,16 @@ * * OPTIONAL DEPENDENCIES: * stb_image (Sean Barret) for images loading (JPEG, PNG, BMP, TGA) [textures] +* stb_image_resize (Sean Barret) for image resizing algorythms [textures] * stb_image_write (Sean Barret) for image writting (PNG) [utils] * stb_truetype (Sean Barret) for ttf fonts loading [text] * stb_vorbis (Sean Barret) for ogg audio loading [audio] +* stb_perlin (Sean Barret) for Perlin noise image generation [textures] +* par_shapes (Philip Rideout) for parametric 3d shapes generation [models] * jar_xm (Joshua Reisenauer) for XM audio module loading [audio] * jar_mod (Joshua Reisenauer) for MOD audio module loading [audio] * dr_flac (David Reid) for FLAC audio file loading [audio] +* rgif (Charlie Tangora, Ramon Santamaria) for GIF recording [core] * tinfl for data decompression (DEFLATE algorithm) [rres] * * @@ -303,7 +308,7 @@ //---------------------------------------------------------------------------------- #ifndef __cplusplus // Boolean type - #if !defined(_STDBOOL_H) || !defined(__STDBOOL_H) // CLang uses second form + #ifndef bool typedef enum { false, true } bool; #endif #endif @@ -518,6 +523,20 @@ typedef struct RRESData { // RRES type (pointer to RRESData array) typedef struct RRESData *RRES; +// Head-Mounted-Display device parameters +typedef struct VrDeviceInfo { + int hResolution; // HMD horizontal resolution in pixels + int vResolution; // HMD vertical resolution in pixels + float hScreenSize; // HMD horizontal size in meters + float vScreenSize; // HMD vertical size in meters + float vScreenCenter; // HMD screen center in meters + float eyeToScreenDistance; // HMD distance between eye and display in meters + float lensSeparationDistance; // HMD lens separation distance in meters + float interpupillaryDistance; // HMD IPD (distance between pupils) in meters + float lensDistortionValues[4]; // HMD lens distortion constant parameters + float chromaAbCorrection[4]; // HMD chromatic aberration correction parameters +} VrDeviceInfo; + //---------------------------------------------------------------------------------- // Enumerators Definition //---------------------------------------------------------------------------------- @@ -660,13 +679,10 @@ typedef enum { HMD_DEFAULT_DEVICE = 0, HMD_OCULUS_RIFT_DK2, HMD_OCULUS_RIFT_CV1, + HMD_OCULUS_GO, HMD_VALVE_HTC_VIVE, - HMD_SAMSUNG_GEAR_VR, - HMD_GOOGLE_CARDBOARD, - HMD_SONY_PLAYSTATION_VR, - HMD_RAZER_OSVR, - HMD_FOVE_VR, -} VrDevice; + HMD_SONY_PSVR +} VrDeviceType; // RRESData type typedef enum { @@ -1078,7 +1094,8 @@ RLAPI void BeginBlendMode(int mode); // Beg RLAPI void EndBlendMode(void); // End blending mode (reset to default: alpha blending) // VR control functions -RLAPI void InitVrSimulator(int vrDevice); // Init VR simulator for selected device +VrDeviceInfo GetVrDeviceInfo(int vrDeviceType); // Get VR device information for some standard devices +void InitVrSimulator(VrDeviceInfo info); // Init VR simulator for selected device parameters RLAPI void CloseVrSimulator(void); // Close VR simulator for current device RLAPI bool IsVrSimulatorReady(void); // Detect if VR simulator is ready RLAPI void UpdateVrTracking(Camera *camera); // Update VR tracking (position and orientation) and camera diff --git a/release/libs/android/armeabi-v7a/libraylib.a b/release/libs/android/armeabi-v7a/libraylib.a index 3406efc6..4802cda0 100644 Binary files a/release/libs/android/armeabi-v7a/libraylib.a and b/release/libs/android/armeabi-v7a/libraylib.a differ diff --git a/release/libs/android/armeabi-v7a/libraylib.so b/release/libs/android/armeabi-v7a/libraylib.so index a9cbca41..d90a30c5 100644 Binary files a/release/libs/android/armeabi-v7a/libraylib.so and b/release/libs/android/armeabi-v7a/libraylib.so differ diff --git a/release/libs/html5/libraylib.bc b/release/libs/html5/libraylib.bc index 2021d0de..a92e7d17 100644 Binary files a/release/libs/html5/libraylib.bc and b/release/libs/html5/libraylib.bc differ diff --git a/release/libs/win32/mingw32/libraylib.a b/release/libs/win32/mingw32/libraylib.a index a89aa94d..da618b7b 100644 Binary files a/release/libs/win32/mingw32/libraylib.a and b/release/libs/win32/mingw32/libraylib.a differ diff --git a/release/libs/win32/mingw32/libraylibdll.a b/release/libs/win32/mingw32/libraylibdll.a index 09b7f008..7d910eeb 100644 Binary files a/release/libs/win32/mingw32/libraylibdll.a and b/release/libs/win32/mingw32/libraylibdll.a differ diff --git a/release/libs/win32/mingw32/raylib.dll b/release/libs/win32/mingw32/raylib.dll index d7a6ebbb..c5387654 100644 Binary files a/release/libs/win32/mingw32/raylib.dll and b/release/libs/win32/mingw32/raylib.dll differ -- cgit v1.2.3 From ad31730b6abdb07cb2450c4e3795ba921709da19 Mon Sep 17 00:00:00 2001 From: Ray Date: Sun, 22 Oct 2017 20:00:38 +0200 Subject: Added cross-compiler RPI libs --- release/libs/rpi/ADDLIBS | 0 release/libs/rpi/libraylib.a | Bin 0 -> 451046 bytes src/Makefile | 36 ++++++++++++++++++++++++------------ 3 files changed, 24 insertions(+), 12 deletions(-) delete mode 100644 release/libs/rpi/ADDLIBS create mode 100644 release/libs/rpi/libraylib.a (limited to 'release') diff --git a/release/libs/rpi/ADDLIBS b/release/libs/rpi/ADDLIBS deleted file mode 100644 index e69de29b..00000000 diff --git a/release/libs/rpi/libraylib.a b/release/libs/rpi/libraylib.a new file mode 100644 index 00000000..8fe4e244 Binary files /dev/null and b/release/libs/rpi/libraylib.a differ diff --git a/src/Makefile b/src/Makefile index 1da4557d..13be7844 100644 --- a/src/Makefile +++ b/src/Makefile @@ -46,7 +46,7 @@ RAYLIB_PATH ?= .. # Library type used for raylib and OpenAL Soft: STATIC (.a) or SHARED (.so/.dll) # NOTE: OpenAL Soft library should be provided in the selected form -RAYLIB_LIBTYPE ?= SHARED +RAYLIB_LIBTYPE ?= STATIC OPENAL_LIBTYPE ?= STATIC # On PLATFORM_WEB force OpenAL Soft shared library @@ -54,6 +54,13 @@ ifeq ($(PLATFORM),PLATFORM_WEB) OPENAL_LIBTYPE = SHARED endif +# Use cross-compiler for PLATFORM_RPI +ifeq ($(PLATFORM),PLATFORM_RPI) + RPI_CROSS_COMPILE ?= YES + RPI_TOOLCHAIN ?= C:/SysGCC/Raspberry + RPI_TOOLCHAIN_SYSROOT ?= $(RPI_TOOLCHAIN)/arm-linux-gnueabihf/sysroot +endif + # Determine if the file has root access (only for installing raylib) # "whoami" prints the name of the user that calls him (so, if it is the root # user, "whoami" prints "root"). @@ -77,11 +84,6 @@ ifeq ($(PLATFORM),PLATFORM_DESKTOP) endif endif -ifeq ($(PLATFORM),PLATFORM_RPI) - # RPI cross-compiler - RPI_CROSS_COMPILE ?= NO -endif - ifeq ($(PLATFORM),PLATFORM_WEB) # Emscripten required variables EMSDK_PATH = C:/emsdk @@ -166,8 +168,9 @@ ifeq ($(PLATFORM),PLATFORM_DESKTOP) endif ifeq ($(PLATFORM),PLATFORM_RPI) ifeq ($(RPI_CROSS_COMPILE),YES) - # RPI cross-compiler - CC = armv6j-hardfloat-linux-gnueabi-gcc + # Define RPI cross-compiler + #CC = armv6j-hardfloat-linux-gnueabi-gcc + CC = $(RPI_TOOLCHAIN)/bin/arm-linux-gnueabihf-gcc endif endif ifeq ($(PLATFORM),PLATFORM_WEB) @@ -188,6 +191,14 @@ endif # Default archiver program to pack libraries AR = ar +ifeq ($(PLATFORM),PLATFORM_RPI) + ifeq ($(RPI_CROSS_COMPILE),YES) + # Define RPI cross-archiver + #CC = armv6j-hardfloat-linux-gnueabi-gcc + AR = $(RPI_TOOLCHAIN)/bin/arm-linux-gnueabihf-ar + endif +endif + # Android archiver (also depends on desired architecture) ifeq ($(PLATFORM),PLATFORM_ANDROID) ifeq ($(ANDROID_ARCH),ARM) @@ -251,9 +262,10 @@ INCLUDE_PATHS = -I. -Iexternal -Iexternal/include # Define additional directories containing required header files ifeq ($(PLATFORM),PLATFORM_RPI) # RPI requried libraries - INCLUDE_PATHS += -I/opt/vc/include - INCLUDE_PATHS += -I/opt/vc/include/interface/vmcs_host/linux - INCLUDE_PATHS += -I/opt/vc/include/interface/vcos/pthreads + INCLUDE_PATHS += -I$(RPI_TOOLCHAIN_SYSROOT)/opt/vc/include + INCLUDE_PATHS += -I$(RPI_TOOLCHAIN_SYSROOT)/opt/vc/include/interface/vmcs_host/linux + INCLUDE_PATHS += -I$(RPI_TOOLCHAIN_SYSROOT)/opt/vc/include/interface/vcos/pthreads + INCLUDE_PATHS += -I$(RPI_TOOLCHAIN_SYSROOT)/opt/vc/include/interface/vcos/pthreads endif ifeq ($(PLATFORM),PLATFORM_ANDROID) # Android required libraries @@ -326,7 +338,7 @@ else @echo "raylib shared library generated (libraylib.so)!" endif else - # Compile raylib static library. + # Compile raylib static library @echo raylib library release path is $(RAYLIB_RELEASE_PATH) $(AR) rcs $(RAYLIB_RELEASE_PATH)/libraylib.a $(OBJS) @echo "raylib static library generated (libraylib.a)!" -- cgit v1.2.3