diff options
Diffstat (limited to 'libs/raylib/CHANGELOG')
-rw-r--r-- | libs/raylib/CHANGELOG | 1077 |
1 files changed, 0 insertions, 1077 deletions
diff --git a/libs/raylib/CHANGELOG b/libs/raylib/CHANGELOG deleted file mode 100644 index 780f808..0000000 --- a/libs/raylib/CHANGELOG +++ /dev/null @@ -1,1077 +0,0 @@ -changelog ---------- - -Current Release: raylib 3.0.0 (01 April 2020) - ------------------------------------------------ -Release: raylib 3.0 (01 April 2020) ------------------------------------------------ -KEY CHANGES: - - Global context states used on all modules. - - Custom memory allocators for all modules and dependencies. - - Centralized file access system and memory data loading. - - Structures reviewed to reduce size and always be used as pass-by-value. - - Tracelog messages completely reviewed and categorized. - - raudio module reviewed to accomodate new Music struct and new miniaudio. - - text module reviewed to improve fonts generation and text management functions. - - Multiple new examples added and categorized examples table. - - GitHub Actions CI implemented for Windows, Linux and macOS. - -Detailed changes: -[build] ADDED: VS2017.ANGLE project, by @msmshazan -[build] ADDED: VS2017 project support for x64 platform configuration -[build] ADDED: Makefile for Android building on macOS, by @Yunoinsky -[build] ADDED: Makefile for Android building on Linux, by @pamarcos -[build] REMOVED: VS2015 project -[build] REVIEWED: VSCode project -[build] REVIEWED: Makefile build system -[build] REVIEWED: Android building, by @NimbusFox -[build] REVIEWED: Compilation with CLion IDE, by @Rover656 -[build] REVIEWED: Generation of web examples, by @pamarcos -[build] REVIEWED: Makefiles path to 'shell.html', by @niorad -[build] REVIEWED: VS2017 64bit compilation issues, by @spec-chum -[build] REVIEWED: Multiple fixes on projects building, by @ChrisDill, @JuDelCo, @electronstudio -[core] ADDED: Support touch/mouse indistinctly -[core] ADDED: FLAG_WINDOW_ALWAYS_RUN to avoid pause on minimize -[core] ADDED: Config flag SUPPORT_HALFBUSY_WAIT_LOOP -[core] ADDED: RPI mouse cursor point support on native mode -[core] ADDED: GetWorldToScreen2D()- Get screen space position for a 2d camera world space position, by @arvyy -[core] ADDED: GetScreenToWorld2D() - Get world space position for a 2d camera screen space position, by @arvyy -[core] ADDED: GetWorldToScreenEx() - Get size position for a 3d world space position -[core] ADDED: DirectoryExists() - Check if a directory path exists -[core] ADDED: GetPrevDirectoryPath() - Get previous directory path for a given path -[core] ADDED: CompressData() - Compress data (DEFLATE algorythm) -[core] ADDED: DecompressData() - Decompress data (DEFLATE algorythm) -[core] ADDED: GetWindowPosition() - Get window position XY on monitor -[core] ADDED: LoadFileData() - Load file data as byte array (read) -[core] ADDED: SaveFileData() - Save data to file from byte array (write) -[core] ADDED: LoadFileText() - Load text data from file (read), returns a '\0' terminated string -[core] ADDED: SaveFileText() - Save text data to file (write), string must be '\0' terminated -[core] REMOVED: Show raylib logo at initialization -[core] REVIEWED: GetFileName(), security checks -[core] REVIEWED: LoadStorageValue(), by @danimartin82 -[core] REVIEWED: SaveStorageValue(), by @danimartin82 -[core] REVIEWED: IsMouseButtonReleased(), when press/release events come too fast, by @oswjk -[core] REVIEWED: SetWindowMonitor(), by @DropsOfSerenity -[core] REVIEWED: IsFileExtension() to be case-insensitive -[core] REVIEWED: IsFileExtension() when checking no-extension files -[core] REVIEWED: Default font scale filter for HighDPI mode -[core] REVIEWED: Touch input scaling for PLATFORM_WEB -[core] REVIEWED: RPI input system, by @DarkElvenAngel -[core] REVIEWED: RPI input threads issues -[core] REVIEWED: OpenGL extensions loading and freeing -[core] REVIEWED: GetDirectoryPath() -[core] REVIEWED: Camera2D behavior, by @arvyy -[core] REVIEWED: OpenGL ES 2.0 extensions check -[rlgl] ADDED: Flags to allow frustrum culling near/far distance configuration at compile time -[rlgl] ADDED: Flags to sllow MAX_BATCH_BUFFERING config at compile time -[rlgl] ADDED: GetMatrixProjection(), by @chriscamacho -[rlgl] ADDED: rlUpdateMeshAt() - Update vertex or index data on GPU, at index, by @brankoku -[rlgl] REVIEWED: Vertex padding not zeroed for quads, by @kawa-yoiko -[rlgl] REVIEWED: Read texture data as RGBA from FBO on GLES 2.0 -[rlgl] REVIEWED: LoadShaderCode() for const correctness, by @heretique -[rlgl] REVIEWED: rlLoadTexture() -[rlgl] REVIEWED: rlReadTexturePixels() -[rlgl] REVIEWED: rlUpdateMesh() to supports updating indices, by @brankoku -[rlgl] REVIEWED: GenTextureCubemap(), renamed parameters for consistency -[rlgl] REVIEWED: HDR pixels loading -[raymath] ADDED: MatrixRotateXYZ(), by @chriscamacho -[raymath] RENAMED: Vector3Multiply() to Vector3Scale() -[camera] REVIEWED: Free camera pitch, by @chriscamacho -[camera] REVIEWED: Camera not working properly at z-align, by @Ushio -[shapes] ADDED: DrawTriangleStrip() - Draw a triangle strip defined by points -[shapes] ADDED: DrawEllipse() - Draw ellipse -[shapes] ADDED: DrawEllipseLines() - Draw ellipse outline -[shapes] ADDED: DrawPolyLines() - Draw a polygon outline of n sides -[shapes] REVIEWED: DrawPoly() shape rendering, by @AlexHCC -[textures] ADDED: LoadAnimatedGIF() - Load animated GIF file -[textures] ADDED: GetImageAlphaBorder() - Get image alpha border rectangle -[textures] ADDED: ImageFromImage() - Create an image from another image piece -[textures] ADDED: ImageClearBackground(), by @iamsouravgupta -[textures] ADDED: ImageDrawPixel(), by @iamsouravgupta -[textures] ADDED: ImageDrawCircle(), by @iamsouravgupta -[textures] ADDED: ImageDrawLineEx(), by @iamsouravgupta -[textures] ADDED: ImageDrawPixelV(), by @RobLoach -[textures] ADDED: ImageDrawCircleV(), by @RobLoach -[textures] ADDED: ImageDrawLineV(), by @RobLoach -[textures] ADDED: ImageDrawRectangleV(), by @RobLoach -[textures] ADDED: ImageDrawRectangleRec(), by @RobLoach -[textures] REVIEWED: ImageDrawPixel(), by @RobLoach -[textures] REVIEWED: ImageDrawLine(), by @RobLoach -[textures] REVIEWED: ImageDrawCircle(), by @RobLoach -[textures] REVIEWED: ImageDrawRectangle(), by @RobLoach -[textures] REVIEWED: ImageDraw(), now it supports color tint parameter -[textures] REVIEWED: ImageResizeCanvas() -[textures] REVIEWED: ImageCrop() with security checks -[textures] REVIEWED: ImageAlphaMask() -[textures] REVIEWED: ImageDrawRectangleLines() -[textures] REVIEWED: GetImageData() -[text] ADDED: TextCopy() - Copy one string to another, returns bytes copied -[text] ADDED: GetCodepoints() - Get all codepoints in a string -[text] ADDED: CodepointToUtf8() - Encode codepoint into utf8 text -[text] ADDED: DrawTextCodepoint() - Draw one character (codepoint) -[text] RENAMED: LoadDefaultFont() -> LoadFontDefault() -[text] RENAMED: TextCountCodepoints() -> GetCodepointsCount() -[text] REVIEWED: TextFormat(), to support caching, by @brankoku -[text] REVIEWED: LoadFontData(), generate empty image for space character -[text] REVIEWED: TextSplit() -[text] REVIEWED: TextToInteger() -[text] REVIEWED: GetNextCodepoint(), renamed parameters for clarity -[text] REVIEWED: GenImageFontAtlas(), improved atlas size computing -[text] REDESIGNED: struct Font, character rectangles have been moved out from CharInfo to Font -[text] REDESIGNED: struct CharInfo, now includes directly an Image of the glyph -[text] REDESIGNED: GenImageFontAtlas(), additional recs parameter added -[text] REDESIGNED: ImageTextEx(), to avoid font retrieval from GPU -[models] ADDED: Support rlPushMatrix() and rlPopMatrix() on mesh drawing -[models] ADDED: DrawPoint3D() - Draw a point in 3D space, actually a small line, by @ProfJski -[models] ADDED: Multi texture support for materials in GLTF format, by @Gamerfiend, @chriscamacho -[models] REVIEWED: LoadGLTF(), fixed memory leak, by @jubalh -[models] REVIEWED: LoadIQM(), support multiple animations loading, by @culacant -[models] REVIEWED: GetCollisionRayModel(), to avoid pointers -[models] REVIEWED: CheckCollisionRay*(), parameters renamed -[models] REVIEWED: UnloadMesh(), to avoid pointers -[models] REVIEWED: LoadModel(), memory initialization -[models] REVIEWED: UpdateModelAnimation(), added security checks -[models] REVIEWED: Multiple fixes on models loading, by @jubalh -[models] REVIEWED: Normals updated when using animated meshes, by @@las3rlars -[models] REVIEWED: Compilation when the SUPPORT_MESH_GENERATION not set, by @@Elkantor -[raudio] ADDED: Multi-channel audio playing, by @chriscamacho -[raudio] REMOVED: LoadWaveEx() -[raudio] RENAMED: IsAudioBufferProcessed() to IsAudioStreamProcessed() -[raudio] REVIEWED: Ensure .xm playback starts in the right place, by @illegalinstruction -[raudio] REVIEWED: Fix short non-looping sounds, by @jbosh -[raudio] REVIEWED: Modules playing time to full length -[raudio] REDESIGNED: Replaced Music pointer by struct -[raudio] REDESIGNED: Removed sampleLeft from Music struct -[examples] ADDED: core_scissor_test, by @ChrisDill -[examples] ADDED: core_2d_camera_platformer, by @arvyy -[examples] ADDED: textures_mouse_painting, by @ChrisDill -[examples] ADDED: models_waving_cubes, by @codecat -[examples] ADDED: models_solar_system, by @aldrinmartoq -[examples] ADDED: shaders_fog, by @chriscamacho -[examples] ADDED: shaders_texture_waves, by @Anata -[examples] ADDED: shaders_basic_lighting, by @chriscamacho -[examples] ADDED: shaders_simple_mask, by @chriscamacho -[examples] ADDED: audio_multichannel_sound, by @chriscamacho -[examples] ADDED: shaders_spotlight, by @chriscamacho -[examples] RENAMED: text_sprite_font > text_font_spritefont -[examples] RENAMED: text_ttf_loading > text_font_filters -[examples] RENAMED: text_bmfont_ttf > text_font_loading -[examples] REMOVED: models_obj_viewer -[examples] REMOVED: models_solar_system -[examples] REVIEWED: models_obj_loading > models_loading -[examples] REVIEWED: models_materials_pbr, shader issues -[examples] REVIEWED: core_window_letterbox, detailed explanation, by @jotac0 -[examples] REVIEWED: core_window_letterbox, virtual mouse, by @anatagawa -[games] ADDED: GGJ2020 game - RE-PAIR -[*] Misc fixes and tweaks, by @yaram, @oraoto, @zatherz, @piecedigital, @Shylie -[*] Update ALL supported projects (Notepad++, VS2017) -[*] Update ALL external libraries to latest versions (29.Jan.2020) -[*] Update ALL examples and games -[*] Update BINDINGS list - ------------------------------------------------ -Release: raylib 2.5 (May 2019) ------------------------------------------------ -KEY CHANGES: - - [core] Redesigned Gamepad mechanism, now common to all platforms and gamepads - - [core] HighDPI monitors support with automatic content scaling - - [rlgl] Complete module redesign to use one single internal buffer - - [rlgl] VR system redesign to allow custom device parameters and distortion shader - - [shapes] New drawing shapes available: CircleSector, Ring and RectangleRounded - - [text] New text management API (multiple functions) - - [text] Full Unicode support (utf8 text) - - [textures] Cubemap textures support - - [textures] Quad and N-Patch drawing - - [models] Skeletal model animation support - - [models] Support multiple meshes per model - - [models] Support glTF model loading - -Detailed changes: -[build] REVIEWED: Default raylib and examples Makefile -[build] REVIEWED: Notepad++ NppExec scripts -[build] REVIEWED: VS2015 and VS2017 projects -[build] REVIEWED: Android APK build pipeline -[core] Converted most #defined values as enum values -[core] Complete redesign of RPI input system to use evdev events -[core] ADDED: IsWindowResized() - Check if window has been resized -[core] ADDED: IsWindowHidden() - Check if window is currently hidden -[core] ADDED: UnhideWindow() - Show the window -[core] ADDED: HideWindow() - Hide the window -[core] ADDED: GetWindowHandle() - Get native window handle -[core] ADDED: GetMonitorCount() - Get number of connected monitors -[core] ADDED: GetMonitorWidth() - Get primary monitor width -[core] ADDED: GetMonitorHeight() - Get primary monitor height -[core] ADDED: GetMonitorPhysicalWidth() - Get primary monitor physical width in millimetres -[core] ADDED: GetMonitorPhysicalHeight() - Get primary monitor physical height in millimetres -[core] ADDED: GetMonitorName() - Get the human-readable, UTF-8 encoded name of the primary monitor -[core] ADDED: GetClipboardText() - Get clipboard text content -[core] ADDED: SetClipboardText() - Set clipboard text content -[core] ADDED: ColorFromHSV() - Returns a Color from HSV values -[core] ADDED: FileExists() - Check if file exists -[core] ADDED: GetFileNameWithoutExt() - Get filename string without extension (memory should be freed) -[core] ADDED: GetDirectoryFiles() - Get filenames in a directory path (memory should be freed) -[core] ADDED: ClearDirectoryFiles() - Clear directory files paths buffers (free memory) -[core] ADDED: OpenURL() - Open URL with default system browser (if available) -[core] ADDED: SetMouseOffset() - Set mouse offset -[core] ADDED: SetMouseScale() - Set mouse scaling -[core] REMOVED: ShowLogo() - Activate raylib logo at startup (can be done with flags) -[shapes] ADDED: DrawCircleSector() - Draw a piece of a circle -[shapes] ADDED: DrawCircleSectorLines() - Draw circle sector outline -[shapes] ADDED: DrawRing() - Draw ring -[shapes] ADDED: DrawRingLines() - Draw ring outline -[shapes] ADDED: DrawRectangleRounded() - Draw rectangle with rounded edges -[shapes] ADDED: DrawRectangleRoundedLines() - Draw rectangle with rounded edges outline -[shapes] ADDED: SetShapesTexture() - Define default texture used to draw shapes -[textures] REVIEWED: ExportImage() - Reorder function parameters -[textures] REVIEWED: ImageDrawRectangle() - Remove unneeded parameter -[textures] ADDED: ExportImageAsCode() - Export image as code file defining an array of bytes -[textures] ADDED: LoadTextureCubemap() - Load cubemap from image, multiple image cubemap layouts supported -[textures] ADDED: ImageExtractPalette() - Extract color palette from image to maximum size (memory should be freed) -[textures] ADDED: ImageDrawRectangleLines() - Draw rectangle lines within an image -[textures] ADDED: DrawTextureQuad() - Draw texture quad with tiling and offset parameters -[textures] ADDED: DrawTextureNPatch() - Draws a texture (or part of it) that stretches or shrinks nicely -[models] REVIEWED: LoadMesh() -> LoadMeshes() - Support multiple meshes loading -[models] REVIEWED: LoadMaterial() -> LoadMaterials() - Support multiple materials loading -[models] REVIEWED: ExportMesh() - Reorder parameters -[models] ADDED: DrawCubeWiresV() - Draw cube wires (Vector version) -[models] ADDED: GenMeshPoly() - Generate polygonal mesh -[models] ADDED: SetMaterialTexture() - Set texture for a material map type (MAP_DIFFUSE, MAP_SPECULAR...) -[models] ADDED: SetModelMeshMaterial() - Set material for a mesh -[models] ADDED: LoadModelAnimations() - Load model animations from file -[models] ADDED: UpdateModelAnimation() - Update model animation pose -[models] ADDED: UnloadModelAnimation() - Unload animation data -[models] ADDED: IsModelAnimationValid() - Check model animation skeleton match -[rlgl] Improved internal batching mechanism (multibuffering support, triangle texcoords...) -[rlgl] REVIEWED: rlPushMatrix()/rlPopMatrix() - Now works like OpenGL 1.1 -[rlgl] REVIEWED: SetShaderValue() - More generic, now requires uniform type -[rlgl] REMOVED: SetShaderValuei() - Can be acoomplished with new SetShaderValue() -[rlgl] ADDED: SetShaderValueV() - Set shader uniform value vector -[rlgl] ADDED: SetShaderValueTexture() - Set shader uniform value for texture -[rlgl] ADDED: BeginScissorMode() - Begin scissor mode (define screen area for following drawing) -[rlgl] ADDED: EndScissorMode() - End scissor mode -[rlgl] ADDED: SetVrConfiguration() - Set stereo rendering configuration parameters -[rlgl] REVIEWED: InitVrSimulator() - No input parameter required, use SetVrConfiguration() -[text] REVIEWED: LoadFontEx() - Reorder function parameters -[text] REVIEWED: LoadFontData() - Reorder function parameters -[text] REVIEWED: GenImageFontAtlas() - Reorder function parameters -[text] RENAMED: FormatText() -> TextFormat() -[text] RENAMED: SubText() -> TextSubtext() -[text] ADDED: LoadFontFromImage() - Load font from Image (XNA style) -[text] ADDED: DrawTextRec() - Draw text using font inside rectangle limits -[text] ADDED: DrawTextRecEx() - Draw text using font inside rectangle limits with support for text selection -[text] ADDED: TextIsEqual() - Check if two text string are equal -[text] ADDED: TextLength() - Get text length, checks for '\0' ending -[text] ADDED: TextReplace() - Replace text string (memory should be freed!) -[text] ADDED: TextInsert() - Insert text in a position (memory should be freed!) -[text] ADDED: TextJoin() - Join text strings with delimiter -[text] ADDED: TextSplit() - Split text into multiple strings -[text] ADDED: TextAppend() - Append text at specific position and move cursor! -[text] ADDED: TextFindIndex() - Find first text occurrence within a string -[text] ADDED: TextToUpper() - Get upper case version of provided string -[text] ADDED: TextToLower() - Get lower case version of provided string -[text] ADDED: TextToPascal() - Get Pascal case notation version of provided string -[text] ADDED: TextToInteger() - Get integer value from text (negative values not supported) -[raudio] ADDED: ExportWave() - Export wave data to file -[raudio] ADDED: ExportWaveAsCode() - Export wave sample data to code (.h) -[raudio] ADDED: IsAudioStreamPlaying() - Check if audio stream is playing -[raudio] ADDED: SetAudioStreamVolume() - Set volume for audio stream (1.0 is max level) -[raudio] ADDED: SetAudioStreamPitch() - Set pitch for audio stream (1.0 is base level) -[examples] Complete review of full examples collection, many additions -[examples] ADDED: core_custom_logging - Custom trace log system -[examples] ADDED: core_input_multitouch - Multitouch input example -[examples] ADDED: core_window_letterbox - Window adapted to screen -[examples] ADDED: core_loading_thread - Data loading in second thread -[examples] REVIEWED: core_input_gamepad - Adapted to new gamepad system -[examples] REVIEWED: core_vr_simulator - HMD device parameters and distortion shader should be provided -[examples] ADDED: core_window_scale_letterbox - Windows resizing and letterbox content -[examples] ADDED: shapes_rectangle_scaling_mouse - Scale a rectangle with mouse -[examples] ADDED: shapes_draw_circle_sector - Circle sector drawing -[examples] ADDED: shapes_draw_ring - Ring drawing -[examples] ADDED: shapes_draw_rectangle_rounded - Rounded rectangle drawing -[examples] ADDED: shapes_bouncing_ball - Ball bouncing in the screen -[examples] ADDED: shapes_collision_area - Collision detection and drawing -[examples] ADDED: shapes_following_eyes - Some maths on eyes and mouse -[examples] ADDED: shapes_easings_ball_anim - Ball animation -[examples] ADDED: shapes_easings_box_anim - Box animation -[examples] ADDED: shapes_easings_rectangle_array - Rectangles animation -[examples] REVIEWED: shapes_colors_palette - Reviewed color selection and text displaying -[examples] ADDED: textures_background_scrolling - Scrolling and parallaz background effect -[examples] ADDED: textures_image_npatch - Drawing N-Patch based boxes -[examples] ADDED: textures_sprite_button - Sprite button with sound -[examples] ADDED: textures_sprite_explosion - Sprite explosion with sound -[examples] ADDED: textures_bunnymark - Benchmarking test -[examples] ADDED: text_draw_inside_rectangle - Drawing text inside a delimited rectangle box -[examples] ADDED: text_unicode - Multiple languages text drawing -[examples] ADDED: text_rectangle_bound - Fit text inside a rectangle -[examples] REVIEWED: text_bmfont_ttf - Simplified example -[examples] ADDED: models_animation - Animated models loading and animation playing -[examples] ADDED: models_obj_viewer - Draw and drop models viewer -[examples] ADDED: models_rlgl_solar_system - Solar system simulation using rlgl functionality -[examples] ADDED: models_first_person_maze - 3D maze fps -[examples] ADDED: shaders_palette_switch - Switching color palette on shader -[examples] ADDED: shaders_raymarching - Raymarching shader -[examples] ADDED: shaders_texture_drawing - Texture drawing on GPU -[examples] ADDED: shaders_texture_waves - Texture waves on shader -[examples] ADDED: shaders_julia_set - Julia set fractals -[examples] ADDED: shaders_eratosthenes - Prime number visualization shader -[examples] REVIEWED: audio_raw_stream - Mostly rewritten -[games] ADDED: GGJ19 game - Cat vs Roomba -[*] Updated external libraries to latest version -[*] Multiple bugs corrected (check github issues) - ------------------------------------------------ -Release: raylib 2.0 (July 2018) ------------------------------------------------ -KEY CHANGES: - - Removed external dependencies (GLFW3 and OpenAL) - - Complete redesign of audio module to use miniaudio library - - Support AppVeyor and Travis CI (continuous integration) building - - Reviewed raymath.h for better consistency and performance (inlining) - - Refactor all #define SUPPORT_* into a single config.h - - Support TCC compiler (32bit and 64bit) - -Detailed changes: -[build] REMOVED: GitHub develop branch -[build] REMOVED: External dependencies GLFW and OpenAL -[build] ADDED: Android 64bit ARM support -[build] ADDED: FreeBSD, OpenBSD, NetBSD, Dragon Fly OS support -[build] ADDED: Universal Windows Platform (UWP) support -[build] ADDED: Wayland Linux desktop support -[build] ADDED: AppVeyor CI for automatic Windows builds -[build] ADDED: Travis CI for automatic Linux/macOS builds -[build] ADDED: rglfw (GLFW3 module) to avoid external dependency -[build] ADDED: VS2017 UWP project -[build] ADDED: Builder project template -[build] ADDED: Compiler memory sanitizer for better debug -[build] ADDED: CMake package target and CI auto-deploy tags -[build] ADDED: DEBUG library building support -[build] ADDED: Notepad++ NppExec scripts -[build] REVIEWED: VS2015 and VS2017 projects -[build] REVIEWED: Android APK build pipeline -[core] REVIEWED: Window creation hints to support transparent windows -[core] Unified InitWindow() between platforms -[core] Export Android main entry point -[core] RENAMED: Begin3dMode() to BeginMode3D() -[core] RENAMED: End3dMode() to EndMode3D() -[core] RENAMED: Begin2dMode() to BeginMode2D() -[core] RENAMED: End2dMode() to EndMode2D() -[core] RENAMED: struct Camera to Camera3D -[core] RENAMED: struct SpriteFont to Font -> plus all required functions! -[core] RENAMED: enum TextureFormat to PixelFormat -[core] REVIEWED: Rectangle params int to float -[core] REVIEWED: timing system for macOS -[core] REMOVED: ColorToFloat() -[core] ADDED: GetCurrentTime() on macOS -[core] ADDED: GetTime() -[core] ADDED: struct Vector4 -[core] ADDED: SetTraceLog() to define trace log messages type -[core] ADDED: GetFileName() to get filename from path string -[core] ADDED: ColorToHSV() -[core] ADDED: ColorNormalize() -[core] ADDED: SetWindowSize() to scale Windows in runtime -[core] ADDED: SetMouseScale() to scale mouse input -[core] ADDED: key definitions - KEY_GRAVE, KEY_SLASH, KEY_BACKSLASH -[core] RENAMED: GetHexValue() to ColorToInt() -[core] REVIEWED: Fade() -[core] REVIEWED: InitWindow() to avoid void pointer (safety) -[core] Support camera 3d orthographic projection mode -[shapes] ADDED: DrawRectangleLinesEx() -[textures] Improved pixel formats support (32bit channels) -[textures] Improved textures support for OpenGL 2.1 -[textures] REMOVED: DrawRectangleT() --> Added support to DrawRectangle() -[textures] ADDED: GetPixelDataSize(); pixel data size in bytes (image or texture) -[textures] ADDED: ImageAlphaClear() --> Clear alpha channel to desired color -[textures] ADDED: ImageAlphaCrop() --> Crop image depending on alpha value -[textures] ADDED: ImageAlphaPremultiply() --> Premultiply alpha channel -[textures] ADDED: ImageDrawRectangle() -[textures] ADDED: ImageMipmaps() -[textures] ADDED: GenImageColor() -[textures] ADDED: GetPixelDataSize() -[textures] ADDED: ImageRotateCW() -[textures] ADDED: ImageRotateCCW() -[textures] ADDED: ImageResizeCanvas() -[textures] ADDED: GetImageDataNormalized() -[textures] REVIEWED: ImageFormat() to use normalized data -[textures] REVIEWED: Manual mipmap generation -[textures] REVIEWED: LoadASTC() -[textures] REVIEWED: GenImagePerlinNoise() -[textures] REVIEWED: ImageTextEx() to support UTF8 basic characters -[textures] REVIEWED: GetTextureData() for RPI - requires some work -[textures] Added new example: text drawing on image -[text] Corrected issue with ttf font y-offset -[text] Support SDF font data generation -[text] ADDED: GenImageFontAtlas() -[text] ADDED: LoadFontData() to load data from TTF file -[text] REMOVED: LoadTTF() internal function -[text] REVIEWED: DrawTextEx() - avoid rendering SPACE character! -[text] RENAMED: GetDefaultFont() to GetFontDefault() -[rlgl] ADDED: rlCheckBufferLimit() -[rlgl] ADDED: LoadShaderCode() -[rlgl] ADDED: GetMatrixModelview() -[rlgl] ADDED: SetVrDistortionShader(Shader shader) -[rlgl] REVIEWED: rlLoadTexture() - added mipmaps support, improved compressed textures loading -[rlgl] REVIEWED: rlReadTexturePixels() -[models] Support 4 components mesh.tangent data -[models] Removed tangents generation from LoadOBJ() -[models] ADDED: MeshTangents() -[models] ADDED: MeshBinormals() -[models] ADDED: ExportMesh() -[models] ADDED: GetCollisionRayModel() -[models] RENAMED: CalculateBoundingBox() to MeshBoundingBox() -[models] REMOVED: GetCollisionRayMesh() - does not consider model transform -[models] REVIEWED: LoadMesh() - fallback to default cube mesh if loading fails -[audio] ADDED: Support for MP3 fileformat -[audio] ADDED: IsAudioStreamPlaying() -[audio] ADDED: SetAudioStreamVolume() -[audio] ADDED: SetAudioStreamPitch() -[utils] Corrected issue with SaveImageAs() -[utils] RENAMED: SaveImageAs() to ExportImage() -[utils] REMOVED: rres support - moved to external library (rres.h) -[shaders] REVIEWED: GLSL 120 shaders -[raymath] ADDED: Vector3RotateByQuaternion() -[raymath] REVIEWED: math usage to reduce temp variables -[raymath] REVIEWED: Avoid pointer-based parameters for API consistency -[physac] REVIEWED: physac.h timing system -[examples] Replaced dwarf model by brand new 3d assets: 3d medieval buildings -[examples] Assets cleaning and some replacements -[games] ADDED: GGJ18 game - transmission mission -[games] REVIEWED: Light my Ritual game - improved gameplay drawing -[*] Updated external libraries to latest version -[*] Multiple bugs corrected (check github issues) - ------------------------------------------------ -Release: raylib 1.8.0 (Oct 2017) ------------------------------------------------ -NOTE: - In this release, multiple parts of the library have been reviewed (again) for consistency and simplification. - It exposes more than 30 new functions in comparison with previous version and it improves overall programming experience. - -BIG CHANGES: - - New Image generation functions: Gradient, Checked, Noise, Cellular... - - New Mesh generation functions: Cube, Sphere, Cylinder, Torus, Knot... - - New Shaders and Materials systems to support PBR materials - - Custom Android APK build pipeline with simple Makefile - - Complete review of rlgl layer functionality - - Complete review of raymath functionality - -detailed changes: -[rlgl] RENAMED: rlglLoadTexture() to rlLoadTexture() -[rlgl] RENAMED: rlglLoadRenderTexture() to rlLoadRenderTexture() -[rlgl] RENAMED: rlglUpdateTexture() to rlUpdateTexture() -[rlgl] RENAMED: rlglGenerateMipmaps() to rlGenerateMipmaps() -[rlgl] RENAMED: rlglReadScreenPixels() to rlReadScreenPixels() -[rlgl] RENAMED: rlglReadTexturePixels() to rlReadTexturePixels() -[rlgl] RENAMED: rlglLoadMesh() to rlLoadMesh() -[rlgl] RENAMED: rlglUpdateMesh() to rlUpdateMesh() -[rlgl] RENAMED: rlglDrawMesh() to rlDrawMesh() -[rlgl] RENAMED: rlglUnloadMesh() to rlUnloadMesh() -[rlgl] RENAMED: rlglUnproject() to rlUnproject() -[rlgl] RENAMED: LoadCompressedTexture() to LoadTextureCompressed() -[rlgl] RENAMED: GetDefaultTexture() to GetTextureDefault() -[rlgl] RENAMED: LoadDefaultShader() to LoadShaderDefault() -[rlgl] RENAMED: LoadDefaultShaderLocations() to SetShaderDefaultLocations() -[rlgl] RENAMED: UnloadDefaultShader() to UnLoadShaderDefault() -[rlgl] ADDED: rlGenMapCubemap(), Generate cubemap texture map from HDR texture -[rlgl] ADDED: rlGenMapIrradiance(), Generate irradiance texture map -[rlgl] ADDED: rlGenMapPrefilter(), Generate prefilter texture map -[rlgl] ADDED: rlGenMapBRDF(), Generate BRDF texture map -[rlgl] ADDED: GetVrDeviceInfo(), Get VR device information for some standard devices -[rlgl] REVIEWED: InitVrSimulator(), to accept device parameters as input -[core] ADDED: SetWindowTitle(), Set title for window (only PLATFORM_DESKTOP) -[core] ADDED: GetExtension(), Get file extension -[shapes] REMOVED: DrawRectangleGradient(), replaced by DrawRectangleGradientV() and DrawRectangleGradientH() -[shapes] ADDED: DrawRectangleGradientV(), Draw a vertical-gradient-filled rectangle -[shapes] ADDED: DrawRectangleGradientH(), Draw a horizontal-gradient-filled rectangle -[shapes] ADDED: DrawRectangleGradientEx(), Draw a gradient-filled rectangle with custom vertex colors -[shapes] ADDED: DrawRectangleT(), Draw rectangle using text character -[textures] ADDED: SaveImageAs(), Save image as PNG file -[textures] ADDED: GenImageGradientV(), Generate image: vertical gradient -[textures] ADDED: GenImageGradientH(), Generate image: horizontal gradient -[textures] ADDED: GenImageGradientRadial(), Generate image: radial gradient -[textures] ADDED: GenImageChecked(), Generate image: checked -[textures] ADDED: GenImageWhiteNoise(), Generate image: white noise -[textures] ADDED: GenImagePerlinNoise(), Generate image: perlin noise -[textures] ADDED: GenImageCellular(), Generate image: cellular algorithm. Bigger tileSize means bigger cells -[textures] ADDED: GenTextureCubemap(), Generate cubemap texture from HDR texture -[textures] ADDED: GenTextureIrradiance(), Generate irradiance texture using cubemap data -[textures] ADDED: GenTexturePrefilter(), Generate prefilter texture using cubemap data -[textures] ADDED: GenTextureBRDF(), Generate BRDF texture using cubemap data -[models] REMOVED: LoadMeshEx(), Mesh struct variables can be directly accessed -[models] REMOVED: UpdateMesh(), very ineficient -[models] REMOVED: LoadHeightmap(), use GenMeshHeightmap() and LoadModelFromMesh() -[models] REMOVED: LoadCubicmap(), use GenMeshCubicmap() and LoadModelFromMesh() -[models] RENAMED: LoadDefaultMaterial() to LoadMaterialDefault() -[models] ADDED: GenMeshPlane(), Generate plane mesh (with subdivisions) -[models] ADDED: GenMeshCube(), Generate cuboid mesh -[models] ADDED: GenMeshSphere(), Generate sphere mesh (standard sphere) -[models] ADDED: GenMeshHemiSphere(), Generate half-sphere mesh (no bottom cap) -[models] ADDED: GenMeshCylinder(), Generate cylinder mesh -[models] ADDED: GenMeshTorus(), Generate torus mesh -[models] ADDED: GenMeshKnot(), Generate trefoil knot mesh -[models] ADDED: GenMeshHeightmap(), Generate heightmap mesh from image data -[models] ADDED: GenMeshCubicmap(), Generate cubes-based map mesh from image data -[raymath] REVIEWED: full Matrix functionality to align with GLM in usage -[raymath] RENAMED: Vector3 functions for consistency: Vector*() renamed to Vector3*() -[build] Integrate Android APK building into examples Makefile -[build] Integrate Android APK building into templates Makefiles -[build] Improved Visual Studio 2015 project, folders, references... -[templates] Reviewed the full pack to support Android building -[examples] Reviewed full collection to adapt to raylib changes -[examples] [textures] ADDED: textures_image_generation -[examples] [models] ADDED: models_mesh_generation -[examples] [models] ADDED: models_material_pbr -[examples] [models] ADDED: models_skybox -[examples] [models] ADDED: models_yaw_pitch_roll -[examples] [others] REVIEWED: rlgl_standalone -[examples] [others] REVIEWED: audio_standalone -[github] Moved raylib webpage to own repo: github.com/raysan5/raylib.com -[games] Reviewed game: Koala Seasons -[*] Updated STB libraries to latest version -[*] Multiple bugs corrected (check github issues) - ------------------------------------------------ -Release: raylib 1.7.0 (20 May 2017) ------------------------------------------------ -NOTE: - In this new raylib release, multiple parts of the library have been reviewed for consistency and simplification. - It exposes almost 300 functions, around 30 new functions in comparison with previous version and, again, - it sets a stepping stone towards raylib future. - -BIG changes: - - More than 30 new functions added to the library, check list below. - - Support of configuration flags on every raylib module, to customize library build. - - Improved build system for all supported platforms with a unique Makefile to compile sources. - - Complete review of examples and sample games, added new sample material. - - Support automatic GIF recording of current window, just pressing Ctrl+F12 - - Improved library consistency and organization in general. - -other changes: -[core] Added function: SetWindowIcon(), to setup icon by code -[core] Added function: SetWindowMonitor(), to set current display monitor -[core] Added function: SetWindowMinSize(), to set minimum resize size -[core] Added function: TakeScreenshot(), made public to API (also launched internally with F12) -[core] Added function: GetDirectoryPath(), get directory for a given fileName (with path) -[core] Added function: GetWorkingDirectory(), get current working directory -[core] Added function: ChangeDirectory(), change working directory -[core] Added function: TraceLog(), made public to API -[core] Improved timing system to avoid busy wait loop on frame sync: Wait() -[core] Added support for gamepad on HTML5 platform -[core] Support mouse lock, useful for camera system -[core] Review functions description comments -[rlgl] Removed function: GetStandardShader(), removed internal standard shader -[rlgl] Removed function: CreateLight(), removed internal lighting system -[rlgl] Removed function: DestroyLight(), removed internal lighting system -[rlgl] Removed function: InitVrDevice(), removed VR device render, using simulator -[rlgl] Removed function: CloseVrDevice(), removed VR device render, using simulator -[rlgl] Removed function: IsVrDeviceReady(), removed VR device render, using simulator -[rlgl] Removed function: IsVrSimulator(), removed VR device render, using simulator -[rlgl] Added function: InitVrSimulator(), init VR simulator for selected device -[rlgl] Added function: CloseVrSimulator(), close VR simulator for current device -[rlgl] Added function: IsVrSimulatorReady(), detect if VR device is ready -[rlgl] Added function: BeginVrDrawing(), begin VR simulator stereo rendering -[rlgl] Added function: EndVrDrawing(), end VR simulator stereo rendering -[rlgl] Renamed function: ReadTextFile() to LoadText() and exposed to API -[rlgl] Removed internal lighting system and standard shader, moved to example -[rlgl] Removed Oculus Rift support, moved to oculus_rift example -[rlgl] Removed VR device support and replaced by VR simulator -[shapes] Added function: DrawLineEx(), draw line with QUADS, supports custom line thick -[shapes] Added function: DrawLineBezier(), draw a line using cubic-bezier curves in-out -[shapes] Added function: DrawRectanglePro(), draw a color-filled rectangle with pro parameters -[textures] Removed function: LoadImageFromRES(), redesigning custom RRES fileformat -[textures] Removed function: LoadTextureFromRES(), redesigning custom RRES fileformat -[textures] Removed function: LoadTextureEx(), use instead Image -> LoadImagePro(), LoadImageEx() -[textures] Added function: LoadImagePro()), load image from raw data with parameters -[textures] Review TraceLog() message when image file not found -[text] Renamed function: LoadSpriteFontTTF() to LoadSpriteFontEx(), for consistency -[text] Removed rBMF fileformat support, replaced by .png -[text] Refactor SpriteFont struct (better for rres custom fileformat) -[text] Renamed some variables for consistency -[models] Added function: LoadMesh(), load mesh from file -[models] Added function: LoadMeshEx(), load mesh from vertex data -[models] Added function: UnloadMesh(), unload mesh from memory (RAM and/or VRAM) -[models] Added function: GetCollisionRayMesh(), get collision info between ray and mesh -[models] Added function: GetCollisionRayTriangle(), get collision info between ray and triangle -[models] Added function: GetCollisionRayGround(), get collision info between ray and ground plane -[models] Renamed function: LoadModelEx() to LoadModelFromMesh() -[models] Removed function: DrawLight(), removed internal lighting system -[models] Renamed function: LoadModelEx() to LoadModelFromMesh() for consistency -[models] Removed function: LoadStandardMaterial(), removed internal standard shader -[models] Removed function: LoadModelFromRES(), redesigning custom RRES fileformat -[models] Renamed multiple variables for consistency -[audio] Added function: SetMasterVolume(), define listener volume -[audio] Added function: ResumeSound(), resume a paused sound -[audio] Added function: SetMusicLoopCount(), set number of repeats for a music -[audio] Added function: LoadWaveEx(), load wave from raw audio data -[audio] Added function: WaveCrop(), crop wave audio data -[audio] Added function: WaveFormat(), format audio data -[audio] Removed function: LoadSoundFromRES(), redesigning custom RRES fileformat -[audio] Added support for 32bit audio samples -[audio] Preliminary support for multichannel, limited to mono and stereo -[audio] Make sure buffers are ready for update: UpdateMusicStream() -[utils] Replaced function: GetExtension() by IsFileExtension() and made public to API -[utils] Unified function: TraceLog() between Android and other platforms -[utils] Removed internal function: GetNextPOT(), simplified implementation -[raymath] Added function: QuaternionToEuler(), to work with Euler angles -[raymath] Added function: QuaternionFromEuler(), to work with Euler angles -[raymath] Added multiple Vector2 math functions -[build] Integrate Android source building into Makefile -[example] Added example: shapes_lines_bezier -[example] Added example: text_input_box -[github] Moved gh-pages branch to master/docs -[github] Moved rlua.h and Lua examples to own repo: raylib-lua -[games] Reviewed full games collection -[games] New game added to collection: Koala Seasons -[*] Reviewed and improved examples collection (new assets) -[*] Reorganized library functions, structs, enums -[*] Updated STB libraries to latest version - ------------------------------------------------ -Release: raylib 1.6.0 (20 November 2016) ------------------------------------------------ -NOTE: - This new raylib version commemorates raylib 3rd anniversary and represents another complete review of the library. - It includes some interesting new features and is a stepping stone towards raylib future. - -HUGE changes: -[rlua] Lua BINDING: Complete raylib Lua binding, ALL raylib functions ported to Lua plus the +60 code examples. -[audio] COMPLETE REDESIGN: Improved music support and also raw audio data processing and playing, +20 new functions added. -[physac] COMPLETE REWRITE: Improved performance, functionality and simplified usage, moved to own repository and added multiple examples! - -other changes: - -[core] Corrected issue on OSX with HighDPI display -[core] Added flag to allow resizable window -[core] Allow no default font loading -[core] Corrected old issue with mouse buttons on web -[core] Improved gamepad support, unified across platforms -[core] Gamepad id functionality: GetGamepadName(), IsGamepadName() -[core] Gamepad buttons/axis checking functionality: -[core] Reviewed Android key inputs system, unified with desktop -[rlgl] Redesigned lighting shader system -[rlgl] Updated standard shader for better performance -[rlgl] Support alpha on framebuffer: rlglLoadRenderTexture() -[rlgl] Reviewed UpdateVrTracking() to update camera -[rlgl] Added IsVrSimulator() to check for VR simulator -[shapes] Corrected issue on DrawPolyEx() -[textures] Simplified supported image formats support -[textures] Improved text drawing within an image: ImageDrawText() -[textures] Support image alpha mixing: ImageAlphaMask() -[textures] Support textures filtering: SetTextureFilter() -[textures] Support textures wrap modes: SetTextureWrap() -[text] Improved TTF spritefont generation: LoadSpriteFontTTF() -[text] Improved AngelCode fonts support (unordered chars) -[text] Added TraceLog info on image spritefont loading -[text] Improved text measurement: MeasureTextEx() -[models] Improved OBJ loading flexibility -[models] Reviewed functions: DrawLine3D(), DrawCircle3D() -[models] Removed function: ResolveCollisionCubicmap() -[camera] Redesigned camera system and ported to header-only -[camera] Removed function: UpdateCameraPlayer() -[gestures] Redesigned gestures module to header-only -[audio] Simplified Music loading and playing system -[audio] Added trace on audio device closing -[audio] Reviewed Wave struct, improved flexibility -[audio] Support sound data update: UpdateSound() -[audio] Added support for FLAC audio loading/streaming -[raygui] Removed raygui from raylib repo (moved to own repo) -[build] Added OpenAL static library -[build] Added Visual Studio 2015 projects -[build] Support shared/dynamic raylib compilation -[*] Updated LibOVR to SDK version 1.8 -[*] Updated games to latest raylib version -[*] Improved examples and added new ones -[*] Improved Android support - ------------------------------------------------ -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) - -other 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, timing 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 |