|
|
- changelog
- ---------
-
- Current Release: raylib 1.5.0 (18 July 2016)
-
- NOTE: Only versions marked as 'Release' are available in installer, updates are only available as source.
- NOTE: Current Release includes all previous updates.
-
- -----------------------------------------------
- Release: raylib 1.5.0 (18 July 2016)
- -----------------------------------------------
- NOTE:
- Probably this new version is the biggest boost of the library ever, lots of parts of the library have been redesigned,
- lots of bugs have been solved and some **AMAZING** new features have been added.
-
- HUGE changes:
- [rlgl] OCULUS RIFT CV1: Added support for VR, not oly Oculus Rift CV1 but also stereo rendering simulator (multiplatform).
- [rlgl] MATERIALS SYSTEM: Added support for Materials (.mtl) and multiple material properties: diffuse, specular, normal.
- [rlgl] LIGHTING SYSTEM: Added support for up to 8 lights of 3 different types: Omni, Directional and Spot.
- [physac] REDESIGNED: Improved performance and simplified usage, physic objects now are managed internally in a second thread!
- [audio] CHIPTUNES: Added support for module audio music (.xm, .mod) loading and playing. Multiple mixing channels supported.
-
- other changes:
-
- [core] Review Android button inputs
- [core] Support Android internal data storage
- [core] Renamed WorldToScreen() to GetWorldToScreen()
- [core] Removed function SetCustomCursor()
- [core] Removed functions BeginDrawingEx(), BeginDrawingPro()
- [core] Replaced functions InitDisplay() + InitGraphics() with: InitGraphicsDevice()
- [core] Added support for field-of-view Y (fovy) on 3d Camera
- [core] Added 2D camera mode functions: Begin2dMode() - End2dMode()
- [core] Translate mouse inputs to Android touch/gestures internally
- [core] Translate mouse inputs as touch inputs in HTML5
- [core] Improved function GetKeyPressed() to support multiple keys (including function keys)
- [core] Improved gamepad support, specially for RaspberryPi (including multiple gamepads support)
- [rlgl] Support stereo rendering simulation (duplicate draw calls by viewport, optimized)
- [rlgl] Added distortion shader (embeded) to support custom VR simulator: shader_distortion.h
- [rlgl] Added support for OpenGL 2.1 on desktop
- [rlgl] Improved 2D vs 3D drawing system (lines, triangles, quads)
- [rlgl] Improved DXT-ETC1 support on HTML5
- [rlgl] Review function: rlglUnproject()
- [rlgl] Removed function: rlglInitGraphics(), integrated into rlglInit()
- [rlgl] Updated Mesh and Shader structs
- [rlgl] Simplified internal (default) dynamic buffers
- [rlgl] Added support for indexed and dynamic mesh data
- [rlgl] Set fixed vertex attribs location points
- [rlgl] Improved mesh data loading support
- [rlgl] Added standard shader (embeded) to support materials and lighting: shader_standard.h
- [rlgl] Added light functions: CreateLight(), DestroyLight()
- [rlgl] Added wire mode functions: rlDisableWireMode(), rlEnableWireMode()
- [rlgl] Review function consistency, added: rlglLoadMesh(), rlglUpdateMesh(), rlglDrawMesh(), rlglUnloadMesh()
- [rlgl] Replaced SetCustomShader() by: BeginShaderMode() - EndShaderMode()
- [rlgl] Replaced SetBlendMode() by: BeginBlendMode() - EndBlendMode()
- [rlgl] Added functions to customize internal matrices: SetMatrixProjection(), SetMatrixModelview()
- [rlgl] Unified internal shaders to only one default shader
- [rlgl] Added support for render to texture (RenderTexture2D):
- LoadRenderTexture() - UnloadRenderTexture()
- BeginTextureMode() - EndTextureMode()
- [rlgl] Removed SetShaderMap*() functions
- [rlgl] Redesigned default buffers usage functions:
- LoadDefaultBuffers() - UnloadDefaultBuffers()
- UpdateDefaultBuffers() - DrawDefaultBuffers()
- [shapes] Corrected bug on GetCollisionRec()
- [textures] Added support for Nearest-Neighbor image scaling
- [textures] Added functions to draw text on image: ImageDrawText(), ImageDrawTextEx()
- [text] Reorganized internal functions: Added LoadImageFont()
- [text] Security check for unsupported BMFonts
- [models] Split mesh creation from model loading on heightmap and cubicmap
- [models] Updated BoundingBox collision detections
- [models] Added color parameter to DrawBoundigBox()
- [models] Removed function: DrawQuad()
- [models] Removed function: SetModelTexture()
- [models] Redesigned DrawPlane() to use RL_TRIANGLES
- [models] Redesigned DrawRectangleV() to use RL_TRIANGLES
- [models] Redesign to accomodate new materials system: LoadMaterial()
- [models] Added material functions: LoadDefaultMaterial(), LoadStandardMaterial()
- [models] Added MTL material loading support: LoadMTL()
- [models] Added function: DrawLight()
- [audio] Renamed SoundIsPlaying() to IsSoundPlaying()
- [audio] Renamed MusicIsPlaying() to IsMusicPlaying()
- [audio] Support multiple Music streams (indexed)
- [audio] Support multiple mixing channels
- [gestures] Improved and reviewed gestures system
- [raymath] Added QuaternionInvert()
- [raymath] Removed function: PrintMatrix()
- [raygui] Ported to header-only library (https://github.com/raysan5/raygui)
- [shaders] Added depth drawing shader (requires a depth texture)
- [shaders] Reviewed included shaders and added comments
- [OpenAL Soft] Updated to latest version (1.17.2)
- [GLFW3] Updated to latest version (3.2)
- [stb] Updated to latest headers versions
- [GLAD] Converted to header only library and simplified to only used extensions
- [*] Reorganize library folders: external libs moved to src/external folder
- [*] Reorganize src folder for Android library
- [*] Review external dependencies usage
- [*] Improved Linux and OSX build systems
- [*] Lots of tweaks and bugs corrected all around
-
- -----------------------------------------------
- Release: raylib 1.4.0 (22 February 2016)
- -----------------------------------------------
- NOTE:
- This version supposed another big improvement for raylib, including new modules and new features.
- More than 30 new functions have been added to previous raylib version.
- Around 8 new examples and +10 new game samples have been added.
-
- BIG changes:
- [textures] IMAGE MANIPULATION: Functions to crop, resize, colorize, flip, dither and even draw image-to-image or text-to-image.
- [text] SPRITEFONT SUPPORT: Added support for AngelCode fonts (.fnt) and TrueType fonts (.ttf).
- [gestures] REDESIGN: Gestures system simplified and prepared to process generic touch events, including mouse events (multiplatform).
- [physac] NEW MODULE: Basic 2D physics support, use colliders and rigidbodies; apply forces to physic objects.
-
- other changes:
- [rlgl] Removed GLEW library dependency, now using GLAD
- [rlgl] Implemented alternative to glGetTexImage() on OpenGL ES
- [rlgl] Using depth data on batch drawing
- [rlgl] Reviewed glReadPixels() function
- [core][rlgl] Reviewed raycast system, now 3D picking works
- [core] Android: Reviewed Android App cycle, paused if inactive
- [shaders] Implemented Blinn-Phong lighting shading model
- [textures] Implemented Floyd-Steinberg dithering - ImageDither()
- [text] Added line-break support to DrawText()
- [text] Added TrueType Fonts support (using stb_truetype)
- [models] Implement function: CalculateBoundingBox(Mesh mesh)
- [models] Added functions to check Ray collisions
- [models] Improve map resolution control on LoadHeightmap()
- [camera] Corrected small-glitch on zoom-in with mouse-wheel
- [gestures] Implemented SetGesturesEnabled() to enable only some gestures
- [gestures] Implemented GetElapsedTime() on Windows system
- [gestures] Support mouse gestures for desktop platforms
- [raymath] Complete review of the module and converted to header-only
- [easings] Added new module for easing animations
- [stb] Updated to latest headers versions
- [*] Lots of tweaks around
-
- -----------------------------------------------
- Release: raylib 1.3.0 (01 September 2015)
- -----------------------------------------------
- NOTE:
- This version supposed a big boost for raylib, new modules have been added with lots of features.
- Most of the modules have been completely reviewed to accomodate to the new features.
- Over 50 new functions have been added to previous raylib version.
- Most of the examples have been redone and +10 new advanced examples have been added.
-
- BIG changes:
- [rlgl] SHADERS: Support for model shaders and postprocessing shaders (multiple functions)
- [textures] FORMATS: Support for multiple internal formats, including compressed formats
- [camera] NEW MODULE: Set of cameras for 3d view: Free, Orbital, 1st person, 3rd person
- [gestures] NEW MODULE: Gestures system for Android and HTML5 platforms
- [raygui] NEW MODULE: Set of IMGUI elements for tools development (experimental)
-
- smaller changes:
- [rlgl] Added check for OpenGL supported extensions
- [rlgl] Added function SetBlenMode() to select some predefined blending modes
- [core] Added support for drop&drag of external files into running program
- [core] Added functions ShowCursor(), HideCursor(), IsCursorHidden()
- [core] Renamed function SetFlags() to SetConfigFlags()
- [shapes] Simplified some functions to improve performance
- [textures] Review of Image struct to support multiple data formats
- [textures] Added function LoadImageEx()
- [textures] Added function LoadImageRaw()
- [textures] Added function LoadTextureEx()
- [textures] Simplified function parameters LoadTextureFromImage()
- [textures] Added function GetImageData()
- [textures] Added function GetTextureData()
- [textures] Renamed function ConvertToPOT() to ImageConvertToPOT()
- [textures] Added function ImageConvertFormat()
- [textures] Added function GenTextureMipmaps()
- [text] Added support for Latin-1 Extended characters for default font
- [text] Redesigned SpriteFont struct, replaced Character struct by Rectangle
- [text] Removed function GetFontBaseSize(), use directly spriteFont.size
- [models] Review of struct: Model (added shaders support)
- [models] Added 3d collision functions (sphere vs sphere vs box vs box)
- [models] Added function DrawCubeTexture()
- [models] Added function DrawQuad()
- [models] Added function DrawRay()
- [models] Simplified funtion DrawPlane()
- [models] Removed function DrawPlaneEx()
- [models] Simplified funtion DrawGizmo()
- [models] Removed function DrawGizmoEx()
- [models] Added function LoadModelEx()
- [models] Review of function LoadCubicMap()
- [models] Added function ResolveCollisionCubicmap()
- [audio] Decopupled from raylib, now this module can be used as standalone
- [audio] Added function UpdateMusicStream()
- [raymath] Complete review of the module
- [stb] Updated to latest headers versions
- [*] Lots of tweaks around
-
- -----------------------------------------------
- Release: raylib 1.2.2 (31 December 2014)
- -----------------------------------------------
- [*] Added support for HTML5 compiling (emscripten, asm.js)
- [core] Corrected bug on input handling (keyboard and mouse)
- [textures] Renamed function CreateTexture() to LoadTextureFromImage()
- [textures] Added function ConvertToPOT()
- [rlgl] Added support for color tint on models on GL 3.3+ and ES2
- [rlgl] Added support for normals on models
- [models] Corrected bug on DrawBillboard()
- [models] Corrected bug on DrawHeightmap()
- [models] Renamed LoadCubesmap() to LoadCubicmap()
- [audio] Added function LoadSoundFromWave()
- [makefile] Added support for Linux and OSX compiling
- [stb] Updated to latest headers versions
- [*] Lots of tweaks around
-
- ---------------------------------------------------------------
- Update: raylib 1.2.1 (17 October 2014) (Small Fixes Update)
- ---------------------------------------------------------------
- [core] Added function SetupFlags() to preconfigure raylib Window
- [core] Corrected bug on fullscreen mode
- [rlgl] rlglDrawmodel() - Added rotation on Y axis
- [text] MeasureTextEx() - Corrected bug on measures for default font
-
- -----------------------------------------------
- Release: raylib 1.2 (16 September 2014)
- -----------------------------------------------
- NOTE:
- This version supposed a complete redesign of the [core] module to support Android and Raspberry Pi.
- Multiples modules have also been tweaked to accomodate to the new platforms, specially [rlgl]
-
- [core] Added multiple platforms support: Android and Raspberry Pi
- [core] InitWindow() - Complete rewrite and split for Android
- [core] InitDisplay() - Internal function added to calculate proper display size
- [core] InitGraphics() - Internal function where OpenGL graphics are initialized
- [core] Complete refactoring of input functions to accomodate to new platforms
- [core] Mouse and Keyboard raw data reading functions added for Raspberry Pi
- [core] GetTouchX(), GetTouchY() - Added for Android
- [core] Added Android callbacks to process inputs and Android activity commands
- [rlgl] Adjusted buffers depending on platform
- [rlgl] Added security check in case deployed vertex excess buffer size
- [rlgl] Adjusted indices type depending on GL version (int or short)
- [rlgl] Fallback to VBOs only usage if VAOs not supported on ES2
- [rlgl] rlglLoadModel() stores vbo ids on new Model struct
- [textures] Added support for PKM files (ETC1, ETC2 compression support)
- [shapes] DrawRectangleV() - Modified, depending on OGL version uses TRIANGLES or QUADS
- [text] LoadSpriteFont() - Modified to use LoadImage()
- [models] Minor changes on models loading to accomodate to new Model struct
- [audio] PauseMusicStream(), ResumeMusicStream() - Added
- [audio] Reduced music buffer size to avoid stalls on Raspberry Pi
- [src] Added makefile for Windows and RPI
- [src] Added resources file (raylib icon and executable info)
- [examples] Added makefile for Windows and RPI
- [examples] Renamed and merged with test examples for coherence with module names
- [templates] Added multiple templates to be use as a base-code for games
-
- -----------------------------------------------
- Release: raylib 1.1.1 (22 July 2014)
- -----------------------------------------------
- [core] ShowLogo() - To enable raylib logo animation at startup
- [core] Corrected bug with window resizing
- [rlgl] Redefined colors arrays to use byte instead of float
- [rlgl] Removed double buffer system (no performance improvement)
- [rlgl] rlglDraw() - Reorganized buffers drawing order
- [rlgl] Corrected bug on screen resizing
- [shapes] DrawRectangle() - Use QUADS instead of TRIANGLES
- [models] DrawSphereWires() - Corrected some issues
- [models] LoadOBJ() - Redesigned to support multiple meshes
- [models] LoadCubesMap() - Loading a map as cubes (by pixel color)
- [textures] Added security check if file doesn't exist
- [text] Corrected bug on SpriteFont loading
- [examples] Corrected some 3d examples
- [test] Added cubesmap loading test
-
- -----------------------------------------------
- Release: raylib 1.1.0 (19 April 2014)
- -----------------------------------------------
- NOTE:
- This version supposed a complete internal redesign of the library to support OpenGL 3.3+ and OpenGL ES 2.0.
- New module [rlgl] has been added to 'translate' immediate mode style functions (i.e. rlVertex3f()) to GL 1.1, 3.3+ or ES2.
- Another new module [raymath] has also been added with lot of useful 3D math vector-matrix-quaternion functions.
-
- [rlgl] New module, abstracts OpenGL rendering (multiple versions support)
- [raymath] New module, useful 3D math vector-matrix-quaternion functions
- [core] Adapt all OpenGL code (initialization, drawing) to use [rlgl]
- [shapes] Rewrite all shapes drawing functions to use [rlgl]
- [textures] Adapt texture GPU loading to use [rlgl]
- [textures] Added support for DDS images (compressed and uncompressed)
- [textures] CreateTexture() - Redesigned to add mipmap automatic generation
- [textures] DrawTexturePro() - Redesigned and corrected bugs
- [models] Rewrite all 3d-shapes drawing functions to use [rlgl]
- [models] Adapt model loading and drawing to use [rlgl]
- [models] Model struct updated to include texture id
- [models] SetModelTexture() - Added, link a texture to a model
- [models] DrawModelEx() - Redesigned with extended parameters
- [audio] Added music streaming support (OGG files)
- [audio] Added support for OGG files as Sound
- [audio] PlayMusicStream() - Added, open a new music stream and play it
- [audio] StopMusicStream() - Added, stop music stream playing and close stream
- [audio] PauseMusicStream() - Added, pause music stream playing
- [audio] MusicIsPlaying() - Added, to check if music is playing
- [audio] SetMusicVolume() - Added, set volume for music
- [audio] GetMusicTimeLength() - Added, get current music time length (in seconds)
- [audio] GetMusicTimePlayed() - Added, get current music time played (in seconds)
- [utils] Added log tracing functionality - TraceLog(), TraceLogOpen(), TraceLogClose()
- [*] Log tracing messages all around the code
-
- -----------------------------------------------
- Release: raylib 1.0.6 (16 March 2014)
- -----------------------------------------------
- [core] Removed unused lighting-system code
- [core] Removed SetPerspective() function, calculated directly
- [core] Unload and reload default font on fullscreen toggle
- [core] Corrected bug gamepad buttons checking if no gamepad available
- [texture] DrawTextureV() - Added, to draw using Vector2 for position
- [texture] LoadTexture() - Redesigned, now uses LoadImage() + CreateTexture()
- [text] FormatText() - Corrected memory leak bug
- [models] Added Matrix struct and related functions
- [models] DrawBillboard() - Reviewed, now it works!
- [models] DrawBillboardRec() - Reviewed, now it works!
- [tests] Added folder with multiple tests for new functions
-
- -----------------------------------------------
- Update: raylib 1.0.5 (28 January 2014)
- -----------------------------------------------
- [audio] LoadSound() - Corrected a bug, WAV file was not closed!
- [core] GetMouseWheelMove() - Added, check mouse wheel Y movement
- [texture] CreateTexture2D() renamed to CreateTexture()
- [models] LoadHeightmap() - Added, Heightmap can be loaded as a Model
- [tool] rREM updated, now supports (partially) drag and drop of files
-
- -----------------------------------------------
- Release: raylib 1.0.4 (23 January 2014)
- -----------------------------------------------
- [tool] Published a first alpha version of rREM tool (raylib Resource Embedder)
- [core] GetRandomValue() - Bug corrected, now works right
- [core] Fade() - Added, fades a color to an alpha percentadge
- [core] WriteBitmap() - Moved to new module: utils.c, not used anymore
- [core] TakeScreenshot() - Now uses WritePNG() (utils.c)
- [utils] New module created with utility functions
- [utils] WritePNG() - Write a PNG file (used by TakeScreenshot() on core)
- [utils] DecompressData() - Added, used for rRES resource data decompresion
- [textures] LoadImageFromRES() - Added, load an image from a rRES resource file
- [textures] LoadTextureFromRES() - Added, load a texture from a rRES resource file
- [audio] LoadSoundFromRES() - Added, load a sound from a rRES resource file
- [audio] IsPlaying() - Added, check if a sound is currently playing
- [audio] SetVolume() - Added, set the volume for a sound
- [audio] SetPitch() - Added, set the pitch for a sound
- [examples] ex06a_color_select completed
- [examples] ex06b_logo_anim completed
- [examples] ex06c_font select completed
-
- -----------------------------------------------
- Release: raylib 1.0.3 (19 December 2013)
- -----------------------------------------------
- [fonts] Added 8 rBMF free fonts to be used on projects!
- [text] LoadSpriteFont() - Now supports rBMF file loading (raylib Bitmap Font)
- [examples] ex05a_sprite_fonts completed
- [examples] ex05b_rbmf_fonts completed
- [core] InitWindowEx() - InitWindow with extended parameters, resizing option and custom cursor!
- [core] GetRandomValue() - Added, returns a random value within a range (int)
- [core] SetExitKey() - Added, sets a key to exit program (default is ESC)
- [core] Custom cursor not drawn when mouse out of screen
- [shapes] CheckCollisionPointRec() - Added, check collision between point and rectangle
- [shapes] CheckCollisionPointCircle() - Added, check collision between point and circle
- [shapes] CheckCollisionPointTriangle() - Added, check collision between point and triangle
- [shapes] DrawPoly() - Added, draw regular polygons of n sides, rotation can be defined!
-
- -----------------------------------------------
- Release: raylib 1.0.2 (1 December 2013)
- -----------------------------------------------
- [text] GetDefaultFont() - Added, get default SpriteFont to be used on DrawTextEx()
- [shapes] CheckCollisionRecs() - Added, check collision between rectangles
- [shapes] CheckCollisionCircles() - Added, check collision between circles
- [shapes] CheckCollisionCircleRec() - Added, check collision circle-rectangle
- [shapes] GetCollisionRec() - Added, get collision rectangle
- [textures] CreateTexture2D() - Added, create Texture2D from Image data
- [audio] Fixed WAV loading function, now audio works!
-
- -----------------------------------------------
- Update: raylib 1.0.1 (28 November 2013)
- -----------------------------------------------
- [text] DrawText() - Removed spacing parameter
- [text] MeasureText() - Removed spacing parameter
- [text] DrawFps() - Renamed to DrawFPS() for coherence with similar function
- [core] IsKeyPressed() - Change functionality, check if key pressed once
- [core] IsKeyDown() - Added, check if key is being pressed
- [core] IsKeyReleased() - Change functionality, check if key released once
- [core] IsKeyUp() - Added, check if key is being NOT pressed
- [core] IsMouseButtonDown() - Added, check if mouse button is being pressed
- [core] IsMouseButtonPressed() - Change functionality, check if mouse button pressed once
- [core] IsMouseButtonUp() - Added, check if mouse button is NOT being pressed
- [core] IsMouseButtonReleased() - Change functionality, check if mouse button released once
- [textures] DrawTexturePro() - Added, texture drawing with 'pro' parameters
- [examples] Function changes applied to ALL examples
-
- -----------------------------------------------
- Release: raylib 1.0.0 (18 November 2013)
- -----------------------------------------------
- * Initial version
- * 6 Modules provided:
- - core: basic window/context creation functions, input management, timming functions
- - shapes: basic shapes drawing functions
- - textures: image data loading and conversion to OpenGL textures
- - text: text drawing, sprite fonts loading, default font loading
- - models: basic 3d shapes drawing, OBJ models loading and drawing
- - audio: audio device initialization, WAV files loading and playing
|