From 7459285690d76e11851efaa8b2d09a4ccc57ad93 Mon Sep 17 00:00:00 2001 From: Martin Felis Date: Sun, 14 Feb 2016 00:30:02 +0100 Subject: [PATCH] New release 0.10.1 --- AndroidManifest.xml | 6 +- README.md | 8 + jni/love/CMakeLists.txt | 199 ++++++++++---- jni/love/changes.txt | 244 +++++++++++++++++- jni/love/license.txt | 110 +++++++- jni/love/readme-iOS.rtf | 67 +++++ jni/love/readme.md | 32 ++- jni/love/src/common/config.h | 1 - jni/love/src/love.cpp | 54 +--- jni/love/src/modules/audio/openal/Source.cpp | 2 +- jni/love/src/modules/event/sdl/Event.cpp | 31 ++- .../src/modules/font/BMFontRasterizer.cpp | 12 +- jni/love/src/modules/graphics/opengl/Canvas.h | 2 +- .../src/modules/graphics/opengl/Graphics.cpp | 13 +- .../modules/graphics/opengl/wrap_Graphics.cpp | 29 +++ jni/love/src/modules/image/wrap_ImageData.lua | 27 +- .../src/modules/keyboard/sdl/Keyboard.cpp | 7 +- .../src/modules/physics/box2d/MotorJoint.cpp | 3 +- .../src/modules/physics/box2d/MotorJoint.h | 2 +- .../src/modules/physics/box2d/Physics.cpp | 4 +- jni/love/src/modules/physics/box2d/Physics.h | 2 +- .../modules/physics/box2d/wrap_Physics.cpp | 3 +- jni/love/src/modules/sound/wrap_SoundData.lua | 5 + jni/love/src/modules/touch/Touch.h | 13 +- jni/love/src/modules/touch/sdl/Touch.cpp | 57 ++-- jni/love/src/modules/touch/sdl/Touch.h | 12 +- jni/love/src/modules/touch/wrap_Touch.cpp | 25 +- res/drawable-hdpi/ic_launcher.png | Bin 4733 -> 0 bytes res/drawable-hdpi/love.png | Bin 0 -> 21792 bytes res/drawable-mdpi/ic_launcher.png | Bin 2158 -> 0 bytes res/drawable-mdpi/love.png | Bin 0 -> 13407 bytes res/drawable-xhdpi/ic_launcher.png | Bin 5841 -> 0 bytes res/drawable-xhdpi/love.png | Bin 0 -> 31342 bytes res/drawable-xxhdpi/ic_launcher.png | Bin 10938 -> 0 bytes res/drawable-xxhdpi/love.png | Bin 0 -> 53531 bytes res/drawable-xxxhdpi/love.png | Bin 0 -> 74677 bytes 36 files changed, 761 insertions(+), 209 deletions(-) create mode 100644 jni/love/readme-iOS.rtf delete mode 100644 res/drawable-hdpi/ic_launcher.png create mode 100755 res/drawable-hdpi/love.png delete mode 100644 res/drawable-mdpi/ic_launcher.png create mode 100755 res/drawable-mdpi/love.png delete mode 100644 res/drawable-xhdpi/ic_launcher.png create mode 100755 res/drawable-xhdpi/love.png delete mode 100644 res/drawable-xxhdpi/ic_launcher.png create mode 100755 res/drawable-xxhdpi/love.png create mode 100755 res/drawable-xxxhdpi/love.png diff --git a/AndroidManifest.xml b/AndroidManifest.xml index a5faf9a5..a6637b86 100644 --- a/AndroidManifest.xml +++ b/AndroidManifest.xml @@ -1,7 +1,7 @@ @@ -11,7 +11,7 @@ diff --git a/README.md b/README.md index ffbe8fba..788f88f3 100644 --- a/README.md +++ b/README.md @@ -41,6 +41,14 @@ Bugs and feature requests should be reported to the issue tracker at [https://bi Changelog: ---------- +0.10.1: +This release contains all bugfixes of the desktor 0.10.1 release. Android +specific fixes are: +* Added a new love.conf flag t.externalstorage, which determines whether files are saved in internal or external storage on Android devices. +* Fixed audio on Android to pause when the app is inactive, and resume when the app becomes active again. +* Fixed a driver bug on some Android devices which caused all objects to show up as black. +* New icons + 0.10.0: * first official release! * Disabled JIT by default as it can cause performance problems. To enable JIT call jit.on() diff --git a/jni/love/CMakeLists.txt b/jni/love/CMakeLists.txt index 2602595d..ea8ea07f 100644 --- a/jni/love/CMakeLists.txt +++ b/jni/love/CMakeLists.txt @@ -1,5 +1,5 @@ # -# Copyright (c) 2006-2014 LOVE Development Team +# Copyright (c) 2006-2016 LOVE Development Team # # This software is provided 'as-is', without any express or implied # warranty. In no event will the authors be held liable for any damages @@ -46,6 +46,7 @@ else() endif() option(LOVE_JIT "Use LuaJIT" TRUE) +option(LOVE_MPG123 "Use mpg123" TRUE) if(LOVE_JIT) message(STATUS "LuaJIT: Enabled") @@ -53,6 +54,10 @@ else() message(STATUS "LuaJIT: Disabled") endif() +if(NOT LOVE_MPG123) + add_definitions(-DLOVE_NOMPG123) +endif() + message(STATUS "Target platform: ${LOVE_TARGET_PLATFORM}") find_package(OpenGL) @@ -97,6 +102,7 @@ set(LOVE_SRC_COMMON src/common/runtime.cpp src/common/runtime.h src/common/StringMap.h + src/common/types.cpp src/common/types.h src/common/utf8.cpp src/common/utf8.h @@ -159,13 +165,13 @@ source_group("modules\\audio\\openal" FILES ${LOVE_SRC_MODULE_AUDIO_OPENAL}) set(LOVE_SRC_MODULE_EVENT_ROOT src/modules/event/Event.cpp src/modules/event/Event.h + src/modules/event/wrap_Event.cpp + src/modules/event/wrap_Event.h ) set(LOVE_SRC_MODULE_EVENT_SDL src/modules/event/sdl/Event.cpp src/modules/event/sdl/Event.h - src/modules/event/sdl/wrap_Event.cpp - src/modules/event/sdl/wrap_Event.h ) set(LOVE_SRC_MODULE_EVENT @@ -181,10 +187,16 @@ source_group("modules\\event\\sdl" FILES ${LOVE_SRC_MODULE_EVENT_SDL}) # set(LOVE_SRC_MODULE_FILESYSTEM_ROOT + src/modules/filesystem/DroppedFile.cpp + src/modules/filesystem/DroppedFile.h src/modules/filesystem/File.cpp src/modules/filesystem/File.h src/modules/filesystem/FileData.cpp src/modules/filesystem/FileData.h + src/modules/filesystem/Filesystem.cpp + src/modules/filesystem/Filesystem.h + src/modules/filesystem/wrap_DroppedFile.cpp + src/modules/filesystem/wrap_DroppedFile.h src/modules/filesystem/wrap_File.cpp src/modules/filesystem/wrap_File.h src/modules/filesystem/wrap_FileData.cpp @@ -213,6 +225,9 @@ source_group("modules\\filesystem\\physfs" FILES ${LOVE_SRC_MODULE_FILESYSTEM_PH # set(LOVE_SRC_MODULE_FONT_ROOT + src/modules/font/BMFontRasterizer.cpp + src/modules/font/BMFontRasterizer.h + src/modules/font/Font.cpp src/modules/font/Font.h src/modules/font/GlyphData.cpp src/modules/font/GlyphData.h @@ -220,6 +235,10 @@ set(LOVE_SRC_MODULE_FONT_ROOT src/modules/font/ImageRasterizer.h src/modules/font/Rasterizer.cpp src/modules/font/Rasterizer.h + src/modules/font/TrueTypeRasterizer.cpp + src/modules/font/TrueTypeRasterizer.h + src/modules/font/wrap_Font.cpp + src/modules/font/wrap_Font.h src/modules/font/wrap_GlyphData.cpp src/modules/font/wrap_GlyphData.h src/modules/font/wrap_Rasterizer.cpp @@ -231,8 +250,6 @@ set(LOVE_SRC_MODULE_FONT_FREETYPE src/modules/font/freetype/Font.h src/modules/font/freetype/TrueTypeRasterizer.cpp src/modules/font/freetype/TrueTypeRasterizer.h - src/modules/font/freetype/wrap_Font.cpp - src/modules/font/freetype/wrap_Font.h ) set(LOVE_SRC_MODULE_FONT @@ -252,12 +269,18 @@ set(LOVE_SRC_MODULE_GRAPHICS_ROOT src/modules/graphics/Drawable.h src/modules/graphics/Graphics.cpp src/modules/graphics/Graphics.h + src/modules/graphics/ParticleSystem.cpp + src/modules/graphics/ParticleSystem.h src/modules/graphics/Quad.cpp src/modules/graphics/Quad.h src/modules/graphics/Texture.cpp src/modules/graphics/Texture.h src/modules/graphics/Volatile.cpp src/modules/graphics/Volatile.h + src/modules/graphics/wrap_Quad.cpp + src/modules/graphics/wrap_Quad.h + src/modules/graphics/wrap_Texture.cpp + src/modules/graphics/wrap_Texture.h ) set(LOVE_SRC_MODULE_GRAPHICS_OPENGL @@ -265,8 +288,8 @@ set(LOVE_SRC_MODULE_GRAPHICS_OPENGL src/modules/graphics/opengl/Canvas.h src/modules/graphics/opengl/Font.cpp src/modules/graphics/opengl/Font.h - src/modules/graphics/opengl/GLee.c - src/modules/graphics/opengl/GLee.h + src/modules/graphics/opengl/GLBuffer.cpp + src/modules/graphics/opengl/GLBuffer.h src/modules/graphics/opengl/Graphics.cpp src/modules/graphics/opengl/Graphics.h src/modules/graphics/opengl/Image.cpp @@ -283,9 +306,10 @@ set(LOVE_SRC_MODULE_GRAPHICS_OPENGL src/modules/graphics/opengl/Shader.h src/modules/graphics/opengl/SpriteBatch.cpp src/modules/graphics/opengl/SpriteBatch.h - src/modules/graphics/opengl/Texture.h - src/modules/graphics/opengl/VertexBuffer.cpp - src/modules/graphics/opengl/VertexBuffer.h + src/modules/graphics/opengl/Text.cpp + src/modules/graphics/opengl/Text.h + src/modules/graphics/opengl/Video.cpp + src/modules/graphics/opengl/Video.h src/modules/graphics/opengl/wrap_Canvas.cpp src/modules/graphics/opengl/wrap_Canvas.h src/modules/graphics/opengl/wrap_Font.cpp @@ -298,14 +322,14 @@ set(LOVE_SRC_MODULE_GRAPHICS_OPENGL src/modules/graphics/opengl/wrap_Mesh.h src/modules/graphics/opengl/wrap_ParticleSystem.cpp src/modules/graphics/opengl/wrap_ParticleSystem.h - src/modules/graphics/opengl/wrap_Quad.cpp - src/modules/graphics/opengl/wrap_Quad.h src/modules/graphics/opengl/wrap_Shader.cpp src/modules/graphics/opengl/wrap_Shader.h src/modules/graphics/opengl/wrap_SpriteBatch.cpp src/modules/graphics/opengl/wrap_SpriteBatch.h - src/modules/graphics/opengl/wrap_Texture.cpp - src/modules/graphics/opengl/wrap_Texture.h + src/modules/graphics/opengl/wrap_Text.cpp + src/modules/graphics/opengl/wrap_Text.h + src/modules/graphics/opengl/wrap_Video.cpp + src/modules/graphics/opengl/wrap_Video.h ) set(LOVE_SRC_MODULE_GRAPHICS @@ -321,13 +345,13 @@ source_group("modules\\graphics\\opengl" FILES ${LOVE_SRC_MODULE_GRAPHICS_OPENGL # set(LOVE_SRC_MODULE_IMAGE_ROOT - src/modules/image/CompressedData.cpp - src/modules/image/CompressedData.h + src/modules/image/CompressedImageData.cpp + src/modules/image/CompressedImageData.h src/modules/image/Image.h src/modules/image/ImageData.cpp src/modules/image/ImageData.h - src/modules/image/wrap_CompressedData.cpp - src/modules/image/wrap_CompressedData.h + src/modules/image/wrap_CompressedImageData.cpp + src/modules/image/wrap_CompressedImageData.h src/modules/image/wrap_Image.cpp src/modules/image/wrap_Image.h src/modules/image/wrap_ImageData.cpp @@ -335,29 +359,27 @@ set(LOVE_SRC_MODULE_IMAGE_ROOT ) set(LOVE_SRC_MODULE_IMAGE_MAGPIE - src/modules/image/magpie/CompressedData.cpp - src/modules/image/magpie/CompressedData.h + src/modules/image/magpie/ASTCHandler.cpp + src/modules/image/magpie/ASTCHandler.h + src/modules/image/magpie/CompressedImageData.cpp + src/modules/image/magpie/CompressedImageData.h src/modules/image/magpie/CompressedFormatHandler.h src/modules/image/magpie/ddsHandler.cpp src/modules/image/magpie/ddsHandler.h - src/modules/image/magpie/DevilHandler.cpp - src/modules/image/magpie/DevilHandler.h src/modules/image/magpie/FormatHandler.cpp src/modules/image/magpie/FormatHandler.h src/modules/image/magpie/Image.cpp src/modules/image/magpie/Image.h src/modules/image/magpie/ImageData.cpp src/modules/image/magpie/ImageData.h - src/modules/image/magpie/JPEGHandler.cpp - src/modules/image/magpie/JPEGHandler.h src/modules/image/magpie/KTXHandler.cpp src/modules/image/magpie/KTXHandler.h src/modules/image/magpie/PKMHandler.cpp src/modules/image/magpie/PKMHandler.h - src/modules/image/magpie/PVRHandler.cpp - src/modules/image/magpie/PVRHandler.h src/modules/image/magpie/PNGHandler.cpp src/modules/image/magpie/PNGHandler.h + src/modules/image/magpie/PVRHandler.cpp + src/modules/image/magpie/PVRHandler.h src/modules/image/magpie/STBHandler.cpp src/modules/image/magpie/STBHandler.h ) @@ -430,12 +452,18 @@ source_group("modules\\keyboard\\sdl" FILES ${LOVE_SRC_MODULE_KEYBOARD_SDL}) set(LOVE_SRC_MODULE_MATH src/modules/math/BezierCurve.cpp src/modules/math/BezierCurve.h + src/modules/math/CompressedData.cpp + src/modules/math/CompressedData.h + src/modules/math/Compressor.cpp + src/modules/math/Compressor.h src/modules/math/MathModule.cpp src/modules/math/MathModule.h src/modules/math/RandomGenerator.cpp src/modules/math/RandomGenerator.h src/modules/math/wrap_BezierCurve.cpp src/modules/math/wrap_BezierCurve.h + src/modules/math/wrap_CompressedData.cpp + src/modules/math/wrap_CompressedData.h src/modules/math/wrap_Math.cpp src/modules/math/wrap_Math.h src/modules/math/wrap_RandomGenerator.cpp @@ -461,7 +489,6 @@ source_group("modules\\love" FILES ${LOVE_SRC_MODULE_LOVE}) set(LOVE_SRC_MODULE_MOUSE_ROOT src/modules/mouse/Cursor.cpp src/modules/mouse/Cursor.h - src/modules/mouse/Mouse.cpp src/modules/mouse/Mouse.h src/modules/mouse/wrap_Cursor.cpp src/modules/mouse/wrap_Cursor.h @@ -623,8 +650,6 @@ set(LOVE_SRC_MODULE_SOUND_LULLABY src/modules/sound/lullaby/GmeDecoder.h src/modules/sound/lullaby/ModPlugDecoder.cpp src/modules/sound/lullaby/ModPlugDecoder.h - src/modules/sound/lullaby/Mpg123Decoder.cpp - src/modules/sound/lullaby/Mpg123Decoder.h src/modules/sound/lullaby/Sound.cpp src/modules/sound/lullaby/Sound.h src/modules/sound/lullaby/VorbisDecoder.cpp @@ -633,6 +658,14 @@ set(LOVE_SRC_MODULE_SOUND_LULLABY src/modules/sound/lullaby/WaveDecoder.h ) +if(LOVE_MPG123) + set(LOVE_SRC_MODULE_SOUND_LULLABY + ${LOVE_SRC_MODULE_SOUND_LULLABY} + src/modules/sound/lullaby/Mpg123Decoder.cpp + src/modules/sound/lullaby/Mpg123Decoder.h + ) +endif() + set(LOVE_SRC_MODULE_SOUND ${LOVE_SRC_MODULE_SOUND_ROOT} ${LOVE_SRC_MODULE_SOUND_LULLABY} @@ -707,6 +740,7 @@ source_group("modules\\thread\\sdl" FILES ${LOVE_SRC_MODULE_THREAD_SDL}) # set(LOVE_SRC_MODULE_TIMER_ROOT + src/modules/timer/Timer.cpp src/modules/timer/Timer.h src/modules/timer/wrap_Timer.cpp src/modules/timer/wrap_Timer.h @@ -748,6 +782,35 @@ set(LOVE_SRC_MODULE_TOUCH source_group("modules\\touch" FILES ${LOVE_SRC_MODULE_TOUCH_ROOT}) source_group("modules\\touch\\sdl" FILES ${LOVE_SRC_MODULE_TOUCH_SDL}) +# +# love.video +# + +set(LOVE_SRC_MODULE_VIDEO_ROOT + src/modules/video/Video.h + src/modules/video/VideoStream.cpp + src/modules/video/VideoStream.h + src/modules/video/wrap_Video.cpp + src/modules/video/wrap_Video.h + src/modules/video/wrap_VideoStream.cpp + src/modules/video/wrap_VideoStream.h +) + +set(LOVE_SRC_MODULE_VIDEO_THEORA + src/modules/video/theora/Video.cpp + src/modules/video/theora/Video.h + src/modules/video/theora/VideoStream.cpp + src/modules/video/theora/VideoStream.h +) + +set(LOVE_SRC_MODULE_VIDEO + ${LOVE_SRC_MODULE_VIDEO_ROOT} + ${LOVE_SRC_MODULE_VIDEO_THEORA} +) + +source_group("modules\\video" FILES ${LOVE_SRC_MODULE_VIDEO_ROOT}) +source_group("modules\\video\\theora" FILES ${LOVE_SRC_MODULE_VIDEO_THEORA}) + # # love.window # @@ -964,6 +1027,18 @@ add_library(love_3p_enet ${LOVE_SRC_3P_ENET}) target_link_libraries(love_3p_enet ${MEGA_LUA}) target_include_directories(love_3p_enet PUBLIC src/libraries/enet/libenet/include) +# +# GLAD +# + +set(LOVE_SRC_3P_GLAD + src/libraries/glad/glad.cpp + src/libraries/glad/glad.hpp + src/libraries/glad/gladfuncs.hpp +) + +add_library(love_3p_glad ${LOVE_SRC_3P_GLAD}) + # # LodePNG # @@ -1037,11 +1112,39 @@ set(LOVE_SRC_3P_LUASOCKET add_library(love_3p_luasocket ${LOVE_SRC_3P_LUASOCKET}) target_link_libraries(love_3p_luasocket ${MEGA_LUA}) +# +# Lua 5.3's UTF-8 library +# + +set(LOVE_SRC_3P_LUAUTF8 + src/libraries/luautf8/lprefix.h + src/libraries/luautf8/lutf8lib.c + src/libraries/luautf8/lutf8lib.h +) + +add_library(love_3p_luautf8 ${LOVE_SRC_3P_LUAUTF8}) +target_link_libraries(love_3p_luautf8 ${MEGA_LUA}) + +# +# lz4 +# + +set(LOVE_SRC_3P_LZ4 + src/libraries/lz4/lz4.c + src/libraries/lz4/lz4.h + src/libraries/lz4/lz4hc.c + src/libraries/lz4/lz4hc.h +) + +add_library(love_3p_lz4 ${LOVE_SRC_3P_LZ4}) + # # noise1234 # set(LOVE_SRC_3P_NOISE1234 + src/libraries/noise1234/noise1234.cpp + src/libraries/noise1234/noise1234.h src/libraries/noise1234/simplexnoise1234.cpp src/libraries/noise1234/simplexnoise1234.h ) @@ -1056,7 +1159,7 @@ set(LOVE_SRC_3P_STB src/libraries/stb/stb_image.h ) -add_library(love_3p_stb ${LOVE_SRC_3P_STB}) +# stb_image has no implementation files of its own. # # utf8 @@ -1099,10 +1202,12 @@ set(LOVE_3P love_3p_box2d love_3p_ddsparse love_3p_enet + love_3p_glad love_3p_lodepng love_3p_luasocket + love_3p_luautf8 + love_3p_lz4 love_3p_noise1234 - love_3p_stb love_3p_wuff ) @@ -1130,7 +1235,8 @@ set(LOVE_LIB_SRC ${LOVE_SRC_MODULE_SYSTEM} ${LOVE_SRC_MODULE_THREAD} ${LOVE_SRC_MODULE_TIMER} - #{LOVE_SRC_MODULE_TOUCH} + ${LOVE_SRC_MODULE_TOUCH} + ${LOVE_SRC_MODULE_VIDEO} ${LOVE_SRC_MODULE_WINDOW} ) @@ -1146,25 +1252,28 @@ include_directories( link_directories(${SDL_LINK_DIR}) set(LOVE_MEGA_3P - ${MEGA_DEVIL} ${MEGA_FREETYPE} - ${MEGA_JASPER} - ${MEGA_JPEG} ${MEGA_LIBOGG} - ${MEGA_LIBPNG} ${MEGA_LIBVORBISFILE} ${MEGA_LIBVORBIS} + ${MEGA_LIBTHEORA} ${MEGA_LUA} ${MEGA_MODPLUG} - ${MEGA_MPEG123} ${MEGA_OPENAL} ${MEGA_PHYSFS} ${MEGA_SDL2MAIN} ${MEGA_SDL2} - ${MEGA_TIFF} ${MEGA_ZLIB} ) +if(LOVE_MPG123) + set(LOVE_MEGA_3P + ${LOVE_MEGA_3P} + ${MEGA_MPEG123} + ) +endif() + + set(LOVE_LINK_LIBRARIES ${OPENGL_gl_LIBRARY} ${LOVE_MEGA_3P} @@ -1192,8 +1301,8 @@ if(MEGA_EXTRA_DEPENDECIES) endif() if(MSVC) - set_target_properties(${LOVE_LIB_NAME} PROPERTIES RELEASE_OUTPUT_NAME "love" PDB_NAME "liblove") - set_target_properties(${LOVE_LIB_NAME} PROPERTIES DEBUG_OUTPUT_NAME "love" PDB_NAME "liblove") + set_target_properties(${LOVE_LIB_NAME} PROPERTIES RELEASE_OUTPUT_NAME "love" PDB_NAME "liblove" IMPORT_PREFIX "lib") + set_target_properties(${LOVE_LIB_NAME} PROPERTIES DEBUG_OUTPUT_NAME "love" PDB_NAME "liblove" IMPORT_PREFIX "lib") endif() # @@ -1204,10 +1313,12 @@ target_link_libraries(love liblove) # Add post build steps to move the DLLs next to the binary. Otherwise # running/debugging the binary will not work from inside VS. -add_move_dll(love ${MEGA_MPEG123}) +if(LOVE_MPG123) + add_move_dll(love ${MEGA_MPEG123}) +endif() + add_move_dll(love ${MEGA_SDL2}) add_move_dll(love ${MEGA_OPENAL}) -add_move_dll(love ${MEGA_DEVIL}) if(LOVE_JIT) add_move_file(love ${MEGA_LUAJIT_DLL}) @@ -1299,7 +1410,7 @@ set(CPACK_RESOURCE_FILE_LICENSE "${CMAKE_CURRENT_SOURCE_DIR}/license.txt") set(CPACK_NSIS_EXECUTABLES_DIRECTORY .) set(CPACK_NSIS_PACKAGE_NAME "LOVE") -set(CPACK_NSIS_DISPLAY_NAME "LÖVE ${LOVE_VERSION_STR}") +set(CPACK_NSIS_DISPLAY_NAME "LOVE ${LOVE_VERSION_STR}") set(CPACK_NSIS_MODIFY_PATH OFF) if(LOVE_X64) @@ -1319,7 +1430,7 @@ set(NSIS_MUI_ICON "${CMAKE_CURRENT_SOURCE_DIR}/extra/nsis\\\\love.ico") set(NSIS_MUI_UNICON "${CMAKE_CURRENT_SOURCE_DIR}/extra/nsis\\\\love.ico") set(CPACK_NSIS_INSTALLER_MUI_ICON_CODE " - !define MUI_WELCOMEPAGE_TITLE \\\"LÖVE ${LOVE_VERSION_STR} Setup\\\" + !define MUI_WELCOMEPAGE_TITLE \\\"LOVE ${LOVE_VERSION_STR} Setup\\\" !define MUI_WELCOMEFINISHPAGE_BITMAP \\\"${NSIS_LEFT_BMP}\\\" !define MUI_HEADERIMAGE_BITMAP \\\"${NSIS_TOP_BMP}\\\" !define MUI_ICON \\\"${NSIS_MUI_ICON}\\\" diff --git a/jni/love/changes.txt b/jni/love/changes.txt index 7b188a8b..f7204c1c 100644 --- a/jni/love/changes.txt +++ b/jni/love/changes.txt @@ -1,60 +1,296 @@ +LOVE 0.10.1 [Super Toast] +------------------------- + +Released: N/A + + * Added a new love.conf flag t.externalstorage, which determines whether files are saved in internal or external storage on Android devices. + * Added a new variant of love.graphics.arc which can draw different types of arcs ("pie", "open", or "closed"). + * Added "lighten" and "darken" BlendModes. They can only be used with the "premultiplied" BlendAlphaMode. + * Added the "lighten" GraphicsFeature constant. + * Added the ability to avoid clearing specific Canvases when calling love.graphics.clear, if multiple Canvases are active at once via love.graphics.setCanvas. + * Added Text:getDimensions. + * Added optional "collideconnected" argument to love.physics.newMotorJoint. + + * Fixed a Lua error in the no-game screen if the window's height is too small. + * Fixed the default error handler to reset the mouse Cursor. + * Fixed love.filesystem functions crashing when called if liblove is used directly without calling love.filesystem.init. + * Fixed audio on Android to pause when the app is inactive, and resume when the app becomes active again. + * Fixed the Video decoding thread hanging after Video:seek or when a Video finishes. + * Fixed Video:isPlaying to always return false after it finishes playing. + * Fixed RandomGenerator:random crashing if a nil 'self' is used. + * Fixed loading BMFont files which have characters with 0 width or height (a space character, for example). + * Fixed love.graphics.newFont causing crashes if FileData is passed in. + * Fixed a driver bug on some Android devices which caused all objects to show up as black. + * Fixed a driver bug on Windows with AMD graphics cards where love.graphics.clear would not always work. + * Fixed Shader:sendColor incorrectly converting alpha values from sRGB to linear RGB when gamma-correct rendering is enabled. + * Fixed love.graphics.newMesh(vertices) double-converting colors from sRGB to linear RGB when gamma-correct rendering is enabled. + * Fixed love.graphics.new* crashing when there is no graphics context/window. + + * Updated the Windows executable to prefer the high-powered AMD graphics card on systems which have switchable Intel+AMD GPUs. + * Updated love.touch.getTouches to return the list of IDs in the relative order that the touches initially happened, instead of being in a random order. + * Updated the error messages caused by invalid or bad arguments to ImageData and SoundData methods to be more descriptive. + + +LOVE 0.10.0 [Super Toast] +------------------------- + +Released: 2015-12-22 + + * Added an iOS port. + * Added an Android port. + * Added the flag t.accelerometerjoystick to love.conf. Disables accelerometer-as-joystick functionality on mobile devices when false. + * Added the flag t.gammacorrect to love.conf (replaces t.window.srgb.) Enabling it globally enables gamma-correct rendering, when supported. + * Added video playback support for Ogg Theora videos, via love.graphics.newVideo and Video objects. + * Added love.video module. It is not used for displaying videos on-screen, only decoding them. + * Added love.touch module. Note that it has important differences from the touch implementation in the LÖVE 0.9 Android and iOS ports. + * Added love.touchpressed, love.touchreleased, and love.touchmoved. + * Added love.system.vibrate. + * Added love.filesystem.setRequirePath and love.filesystem.getRequirePath. + * Added an optional program exit argument to love.event.quit. + * Added love.filedropped and love.directorydropped event callback functions. + * Added love.lowmemory event callback function, called when the app is running out of memory on mobile operating systems. + * Added love.textedited event callback function, called when the user is compositing text (e.g. via an IME.) + * Added love.wheelmoved event callback function (replaces "wu" and "wd" constants for love.mousepressed.) + * Added love.mouse.hasCursor. + * Added a boolean argument to love.mousepressed and love.mousereleased indicating whether the button event originated from a touch press. + * Added optional x/y/width/height arguments to love.keyboard.setTextInput. They tell the system where text will show up so on-screen keyboards can avoid that area. + * Added Source:getType (replaces Source:isStatic.) + * Added Source:getDuration and Decoder:getDuration. + * Added an optional string argument containing raw pixel byte data to the width/height variant of love.image.newImageData. + * Added love.graphics.ellipse. + * Added rounded-rectangle support to love.graphics.rectangle. + * Added love.graphics.points (replaces love.graphics.point.) + * Added love.graphics.intersectScissor. + * Added an optional argument to love.graphics.setBlendMode which indicates whether to treat the colors of drawn objects as having pre-multiplied alpha. + * Added love.graphics.getSupported (replaces love.graphics.isSupported.) + * Added love.graphics.getSystemLimits (replaces love.graphics.getSystemLimit.) + * Added love.graphics.stencil and love.graphics.set/getStencilTest (replaces love.graphics.setStencil.) + * Added love.graphics.isActive. + * Added color arguments to love.graphics.clear. It no longer always uses the background color value. + * Added love.graphics.discard. + * Added love.graphics.isGammaCorrect. + * Added the "clampzero" WrapMode. + * Added the ability to specify custom mipmaps when creating an image, via love.graphics.newImage(filename, {mipmaps={mip1, mip2, ...}}) + * Added optional x/y/width/height arguments to Image:refresh and Canvas:newImageData. + * Added Image:getFlags. + * Added one- and two-channel Canvas formats: r8, rg8, r16f, rg16f, r32f, and rg32f. + * Added support for different formats in each Canvas when using multi-canvas rendering. Added the "multicanvasformats" Graphics Feature constant. + * Added support for OpenGL ES 2 and 3. + * Added support for loading ETC, EAC, PVRTC, and ASTC compressed textures on systems that support them. + * Added custom vertex attribute support for Meshes via new variants of love.graphics.newMesh. + * Added Mesh:setVertexAttribute and Mesh:getVertexAttribute. + * Added Mesh:getVertexFormat. + * Added Mesh:flush. + * Added an optional 'startvertex' argument to Mesh:setVertices. + * Added the ability for love.graphics.newMesh and Mesh:setVertices to accept a Data object. + * Added Mesh:setAttributeEnabled and Mesh:isAttributeEnabled. + * Added Mesh:attachAttribute. + * Added SpriteBatch:attachAttribute. + * Added Shader:sendColor. + * Added new shader functions: gammaCorrectColor, gammaToLinear, and linearToGamma. The functions also have 'precise' and 'fast' variants. + * Added Text objects and love.graphics.newText. + * Added per-character color support to love.graphics.print/printf and to Text objects. + * Added BMFont bitmap font file support to love.graphics.newFont and love.font. + * Added kerning support for TrueType/OpenType and BMFont Fonts. + * Added an optional font hinting argument to love.graphics.newFont when loading TrueType fonts. + * Added an optional spacing argument to love.graphics.newImageFont, which applies additional spacing to all rendered glyphs. + * Added Font:setFallbacks. + * Added love.window.maximize. + * Added love.window.close. + * Added love.window.requestAttention. + * Added love.window.setDisplaySleepEnabled and love.window.isDisplaySleepEnabled. + * Added BezierCurve:renderSegment and BezierCurve:removeControlPoint. + * Added BezierCurve:getSegment. + * Added love.math.compress and love.math.decompress. + * Added Channel:performAtomic. + + * Changed love.mousepressed, love.mousereleased, and love.mouse.isDown to use button numbers instead of named button constants. + * Changed love.keypressed to be love.keypressed(key, scancode, isrepeat). + * Changed love.keyreleased to be love.keyreleased(key, scancode). + * Changed Font:getWrap's second return value to be a table containing the text split into lines. + * Changed love.graphics.newImage's optional second argument to be a table of flags (flags are "mipmaps" and "linear".) + * Changed the arguments for the standard variants of love.graphics.newMesh to newMesh(vertices [, drawmode, usage]) and newMesh(vertexcount [, drawmode, usage]). + * Changed ImageData:encode to return a FileData object. ImageData:encode's first parameter is now the format to encode to, and the second parameter is an optional filename to write to. + + * Renamed the "normal" Fullscreen Type to "exclusive". + * Renamed the DistanceModel constants "inverse clamped", "linear clamped", and "exponent clamped" to "inverseclamped", "linearclamped", and "exponentclamped". + * Renamed the "additive", "subtractive", and "multiplicative" BlendModes to "add", "subtract", and "multiply". + * Renamed the KeyConstant and Scancode representing the spacebar from " " to "space". + * Renamed File:eof to File:isEOF. + * Renamed Canvas:getImageData to Canvas:newImageData. + * Renamed love.image's CompressedData type to CompressedImageData. + + * Removed callback variant of love.filesystem.getDirectoryItems. + * Removed the "wu" and "wd" constants for love.mousepressed (replaced by love.wheelmoved.) + * Removed the named mouse button constants (replaced by button numbers.) + * Removed Source:isStatic (replaced by Source:getType.) + * Removed image loading support for all (non-compressed texture) file formats except for PNG, JPEG, TGA, and BMP. + * Removed JPEG encoding support from ImageData:encode. + * Removed love.graphics.point (replaced by love.graphics.points.) + * Removed love.graphics.setPointStyle and love.graphics.getPointStyle. + * Removed love.graphics.isSupported (replaced by love.graphics.getSupported.) + * Removed love.graphics.getSystemLimit (replaced by love.graphics.getSystemLimits.) + * Removed love.graphics.setStencil (replaced by love.graphics.stencil and love.graphics.setStencilTest.) + * Removed the "canvas", "shader", "npot", "subtractive", and "mipmap" Graphics Feature constants (the features always have guaranteed support now.) + * Removed the "multicanvas" Graphics Feature constant (use love.graphics.getSystemLimits instead.) + * Removed the "srgb" Graphics Feature constant (use love.graphics.isGammaCorrect() or love.graphics.getCanvasFormats().srgb instead.) + * Removed the "srgb" flag in love.window.setMode and in the t.window table in love.conf (Replaced by t.gammacorrect.) + * Removed the "premultiplied" blend mode (love.graphics.setBlendMode("alpha", "premultiplied") now does the same thing.) + * Removed Canvas:getPixel (use Canvas:newImageData instead.) + * Removed Canvas:clear (use love.graphics.clear instead.) + * Removed Mesh:getVertices. + * Removed Mesh:setVertexColors and Mesh:hasVertexColors (use Mesh:setAttributeEnabled("VertexColor", enable) instead.) + * Removed functions deprecated in LOVE 0.9.1 and 0.9.2: + * Removed love.graphics.getMaxImageSize and love.graphics.getMaxPointSize (replaced by love.graphics.getSystemLimits.) + * Removed Mesh:set/getImage, SpriteBatch:set/getImage, and ParticleSystem:set/getImage (replaced by set/getTexture.) + * Removed SpriteBatch:bind/unbind. + * Removed Canvas:getFSAA and the "fsaa" flag in love.conf and love.window.setMode (replaced by Canvas:getMSAA and "msaa".) + * Removed the "dxt" and "bc5" Graphics Feature constant (replaced by love.graphics.getCompressedImageFormats.) + * Removed the "hdrcanvas" Graphics Feature constant (replaced by love.graphics.getCanvasFormats.) + * Removed love.window.getWidth/getHeight/getDimensions (use love.graphics.getWidth/getHeight/getDimensions or love.window.getMode instead.) + + * Fixed utf8.char. + * Fixed detection of fused love games. + * Fixed World:getCallbacks and World:getContactFilter when used in coroutines. + * Fixed crashes when objects which store Lua callback functions are garbage collected after being used in coroutines. + * Fixed memory leaks in love.physics if World:destroy is never called. When a World is GCed it now destroys all objects it owns. + * Fixed love.keyboard.getKeyFromScancode crashing when an invalid scancode is given. + * Fixed decoding of 8-bit WAV files. + * Fixed a crash issue when rewinding streaming ogg Sources, when certain versions of libvorbis are used. + * Fixed love.audio.stop() not rewinding streaming Sources. + * Fixed the stencil buffer in Canvases when an unsupported MSAA value is used to create the Canvas. + * Fixed Canvas:renderTo to restore the previous Canvas if an error occurs in the passed function. + * Fixed love.graphics.draw(canvas) to cause an error if that Canvas is the active one. + * Fixed Mesh:getVertexMap to return nil rather than an empty table, if no vertex map has been set. + * Fixed love.graphics.getColorMask. + * Fixed the default offset for particles when ParticleSystem:setQuads or ParticleSystem:setTexture is used. + * Fixed love.graphics.shear resetting all love.graphics transformations. + * Fixed the "add" and "subtract" blend modes to no longer modify the alpha of the Canvas / screen. + + * Improved the performance of World:rayCast and World:queryBoundingBox. + * Improved the performance of love.graphics.line and other line drawing functions, when the "smooth" LineStyle is used. + * Improved the performance of Shader:send when matrices are used. + * Improved the performance of ImageData and SoundData methods when LuaJIT's JIT compiler is enabled, by using efficient FFI code. + * Improved the performance of love.math.noise, love.math.gammaToLinear, love.math.linearToGamma, love.math.random, and RandomGenerator:random when LuaJIT's JIT compiler is enabled. + + * Updated the compatibility warning notice to use a message box and to show the version specified in love.conf. + * Updated the compatibility warning notice to display before main.lua is loaded. + * Updated the __tostring metamethod of love objects to output the pointer value, similar to tostring(table). + * Updated World:setCallbacks, World:setContactFilter, World:queryBoundingBox, and World:rayCast to have improved argument type checking. + * Updated threads to load love.filesystem automatically. + * Updated love.filesystem to enable symlinks by default. + * Updated love.math.setRandomSeed and RandomGenerator:setSeed to produce better results for the first few random() calls. + * Updated love.math.random and RandomGenerator:random to produce slightly better results in general. + * Updated Source methods that deal with spatial audio to error rather than failing silently if the Source isn't mono. + * Updated the 3D and 4D variants of love.math.noise to use Perlin noise rather than Simplex noise, to avoid patent issues. + * Updated ImageFonts to no longer treat separator pixels as spacing. + * Updated the default font to use less memory. + * Updated the behavior of text wrapping with love.graphics.printf and Font:getWrap to work better. + * Updated love.graphics.print and love.graphics.printf to no longer automatically round the x and y position arguments. + * Updated some error messages for love.graphics.newImage to be more descriptive. + * Updated love.graphics color functions to automatically apply love.math.gammaToLinear to color values when gamma-correct rendering is enabled. + * Updated the 'normal' Canvas format to internally use 'srgb' rather than 'rgba8' when gamma-correct rendering is enabled. + * Updated love.graphics.setColor to affect all drawn objects, including ParticleSystems, SpriteBatches, and Meshes. + * Updated the default fullscreen type to be "desktop" rather than "exclusive". + * Updated the minimum runtime system requirements of LOVE to require OpenGL 2.1 or OpenGL ES 2 support. + * Updated the pixel shader effect function so screen_coords.y is 0 at the top of the screen instead of the bottom. + * Updated Images to require setting the mipmaps flag to true on creation in order to use mipmaps. + * Updated Images to allow mipmaps for non-power-of-two sizes. + LOVE 0.9.2 [Baby Inspector] --------------------------- - Released: N/A + Released: 2015-02-14 + * Added Lua 5.3's UTF-8 module (via utf8 = require("utf8")). * Added Shader:getExternVariable. * Added several new canvas texture formats. * Added love.graphics.getCanvasFormats. * Added love.graphics.getCompressedImageFormats. * Added ParticleSystem:setQuads. + * Added ParticleSystem:setLinearDamping. * Added SpriteBatch:flush. * Added love.graphics.getStats. + * Added "mirroredrepeat" wrap mode. + * Added love.audio.setDopplerScale and love.audio.getDopplerScale. * Added optional duration argument to Joystick:setVibration. * Added love.joystick.loadGamepadMappings and love.joystick.saveGamepadMappings. * Added Joint:setUserData and Joint:getUserData. + * Added Joint:getBodies. + * Added GearJoint:getJoints. * Added Contact:getFixtures and Body:getContactList. * Added Body:getWorld. + * Added Body:getJointList. + * Added Body/Contact/Fixture/Joint/World:isDestroyed. + * Added love.mousemoved event callback. + * Added love.mouse.setRelativeMode and love.mouse.getRelativeMode. + * Added Scancode enums, love.keyboard.getKeyFromScancode, and love.keyboard.getScancodeFromKey. * Added love.window.getDisplayName. * Added love.window.minimize. * Added love.window.showMessageBox. - * Added love.filesystem.isSymlink, love.filesystem.setSymlinksEnabled, and love.filesystem.areSymlinksEnabled. * Added 'refreshrate' field to the table returned by love.window.getMode. + * Added love.window.toPixels and love.window.fromPixels. + * Added love.window.setPosition and love.window.getPosition, and 'x' and 'y' fields to love.window.setMode and t.window in love.conf. + * Added love.filesystem.isSymlink, love.filesystem.setSymlinksEnabled, and love.filesystem.areSymlinksEnabled. + * Added love.filesystem.getRealDirectory. * Deprecated SpriteBatch:bind and SpriteBatch:unbind. * Deprecated all uses of the name 'FSAA' in favor of 'MSAA'. * Deprecated the 'hdrcanvas' graphics feature enum in favor of getCanvasFormats. * Deprecated the 'dxt' and 'bc5' graphics feature enums in favor of getCompressedImageFormats. + * Fixed crashes when love objects are used in multiple threads. * Fixed love.filesystem.setIdentity breaking in some situations when called multiple times. + * Fixed the default love.filesystem identity when in Fused mode in Windows. * Fixed love.system.openURL sometimes blocking indefinitely on Linux. + * Fixed love.joystick.setGamepadMapping. + * Fixed the order of vertices in ChainShapes. + * Fixed love.mouse.getPosition returning outdated values if love.mouse.setPosition is used in the same frame. + * Fixed love.graphics.newFont to error when given an invalid size argument. + * Fixed the filename and backtrace given when love.graphics.print errors. + * Fixed a small memory leak if love.graphics.newCanvas errors. * Fixed shader:getWarnings returning unnecessary information. + * Fixed some cases of noncompliant shader code not properly erroring on some nvidia drivers. * Fixed a potential crash when Shader objects are garbage collected. + * Fixed a potential small memory leak triggered when love.graphics.newShader errors. * Fixed love.graphics.newMesh(vertexcount, ...) causing the Mesh to do instanced rendering. * Fixed Mesh:getVertexMap. * Fixed Image:refresh generating mipmaps multiple times if mipmap filtering is enabled. + * Fixed Image:setMipmapFilter to not keep bad state around if it errors. * Fixed Mesh:setDrawRange when the Mesh has a vertex map set. * Fixed internal detection of the 'position' and 'effect' shader functions. * Fixed Texture memory leak when Meshes are garbage collected. * Fixed the default line join mode to be 'miter' instead of an undefined value. * Fixed the default error handler text size when highdpi mode is enabled on a Retina monitor. - * Fixed love.window.setMode to fall back to the largest available mode if a width or height greater than the largest supported is specified and fullscreen=true. + * Fixed the default error handler background color when sRGB mode is enabled for the window. + * Fixed love.window.setMode to fall back to the largest available mode if a width or height greater than the largest supported is specified and fullscreen is used. * Fixed the state of wireframe mode when love.window.setMode is called. * Fixed Canvas:getPixel to error if the coordinates are not within the Canvas' size. * Fixed detection of compressed textures to work regardless of the file's extension. * Renamed all cases of FSAA to MSAA. The FSAA names still exist for backward-compatibility. + * Updated the Windows executable to automatically prefer the higher performance GPU on nvidia Optimus systems. + * Updated the --console command-line argument in Windows to open the console before conf.lua is loaded. + * Updated t.console and the --console command-line argument in Windows to use the existing Console window, if love was launched from one. + * Updated the love executable to verify that the love library's version matches. * Updated the Lua wrapper code for modules to avoid crashes when the module's instance is created, deleted, and recreated. * Updated internal code for handling garbage collection of love objects to be more efficient. + * Updated love's initialization code to trigger a Lua error if love.conf has an error in it. * Updated the paths returned by love.filesystem.getSaveDirectory and friends to strip double-slashes from the string. * Updated the error message when love.filesystem.write or File:open fails because the directory doesn't exist. * Updated the error message when love.math.setRandomseed(0) is attempted. + * Updated the error message when invalid UTF-8 strings are used in love functions that expect UTF-8. + * Updated love.physics.newPolygonShape and love.physics.newChainShape to accept a table of vertices. * Updated love.physics.newChainShape to error if the number of arguments is invalid. + * Updated love.thread.newThread to accept a literal string of code directly. * Updated love-created threads to use names visible in external debuggers. * Updated SpriteBatch:unbind to use less VRAM if the SpriteBatch has the static usage hint. * Updated love.graphics.newImage, love.image.newImageData, etc. to leave less Lua-owned memory around. * Updated love.graphics.push to accept different stack types to push. Current types are "transform" and "all". + * Updated love shaders to accept GLSL ES precision qualifiers on variables, although they do nothing. + * Updated the error message for love.graphics.newShader to be less cryptic if an invalid filename is given. + * Updated compressed texture loading code to allow BC6 and BC7 compressed textures (if the graphics driver supports them.) LOVE 0.9.1 [Baby Inspector] --------------------------- @@ -202,7 +438,7 @@ LOVE 0.9.0 [Baby Inspector] * Added love.window.getIcon. * Added t.window.icon to love.conf. * Added love.mousefocus and love.window.hasMouseFocus. - * Added custom hardware cursors via love.mouse.newCursor. + * Added custom hardware cursors via love.mouse.newCursor. * Added love.mouse.setX/setY. * Added Joystick objects. * Added love.joystick.getJoystick. diff --git a/jni/love/license.txt b/jni/love/license.txt index 9be483bb..2e935e9f 100644 --- a/jni/love/license.txt +++ b/jni/love/license.txt @@ -1,4 +1,6 @@ -Copyright (c) 2006-2014 LOVE Development Team +This software uses LOVE: + +LOVE is Copyright (c) 2006-2016 LOVE Development Team This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages @@ -19,11 +21,110 @@ misrepresented as being the original software. 3. This notice may not be removed or altered from any source distribution. +--------- +This software uses LuaJIT: -------- +LuaJIT is Copyright (c) 2005-2015 Mike Pall -LÖVE uses the following LGPL libraries on most platforms: +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. + +--------- + +This software uses ENet: + +Copyright (c) 2002-2014 Lee Salzman + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. + +--------- + +This software uses lua-enet: + +Copyright (C) 2011 by Leaf Corcoran + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. + +--------- + +This software uses UTF8-CPP: + +Copyright 2006 Nemanja Trifunovic + +Permission is hereby granted, free of charge, to any person or organization +obtaining a copy of the software and accompanying documentation covered by +this license (the "Software") to use, reproduce, display, distribute, +execute, and transmit the Software, and to prepare derivative works of the +Software, and to permit third-parties to whom the Software is furnished to +do so, all subject to the following: + +The copyright notices in the Software and this entire statement, including +the above license grant, this restriction and the following disclaimer, +must be included in all copies of the Software, in whole or in part, and +all derivative works of the Software, unless such copies or derivative +works are solely in the form of machine-executable object code generated by +a source language processor. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE, TITLE AND NON-INFRINGEMENT. IN NO EVENT +SHALL THE COPYRIGHT HOLDERS OR ANYONE DISTRIBUTING THE SOFTWARE BE LIABLE +FOR ANY DAMAGES OR OTHER LIABILITY, WHETHER IN CONTRACT, TORT OR OTHERWISE, +ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER +DEALINGS IN THE SOFTWARE. + +--------- + +This software uses the following LGPL libraries on Windows, Mac OS X, Linux, +and Android: - libmpg123 Website: http://www.mpg123.de/ @@ -31,9 +132,6 @@ LÖVE uses the following LGPL libraries on most platforms: - OpenAL Soft Website: http://kcat.strangesoft.net/openal.html Source download: http://kcat.strangesoft.net/openal.html#download - - DevIL - Website: http://openil.sourceforge.net/ - Source download: http://downloads.sourceforge.net/openil/DevIL-1.7.8.tar.gz Following are the LGPL and GPL license texts: diff --git a/jni/love/readme-iOS.rtf b/jni/love/readme-iOS.rtf new file mode 100644 index 00000000..935f60b0 --- /dev/null +++ b/jni/love/readme-iOS.rtf @@ -0,0 +1,67 @@ +{\rtf1\ansi\ansicpg1252\cocoartf1404\cocoasubrtf340 +{\fonttbl\f0\fswiss\fcharset0 Helvetica;\f1\fnil\fcharset0 Monaco;\f2\fnil\fcharset0 LucidaGrande; +} +{\colortbl;\red255\green255\blue255;} +{\*\listtable{\list\listtemplateid1\listhybrid{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace360\levelindent0{\*\levelmarker \{disc\}}{\leveltext\leveltemplateid1\'01\uc0\u8226 ;}{\levelnumbers;}\fi-360\li720\lin720 }{\listname ;}\listid1} +{\list\listtemplateid2\listhybrid{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace360\levelindent0{\*\levelmarker \{disc\}}{\leveltext\leveltemplateid101\'01\uc0\u8226 ;}{\levelnumbers;}\fi-360\li720\lin720 }{\listname ;}\listid2} +{\list\listtemplateid3\listhybrid{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace360\levelindent0{\*\levelmarker \{disc\}}{\leveltext\leveltemplateid201\'01\uc0\u8226 ;}{\levelnumbers;}\fi-360\li720\lin720 }{\listname ;}\listid3} +{\list\listtemplateid4\listhybrid{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace360\levelindent0{\*\levelmarker \{disc\}}{\leveltext\leveltemplateid301\'01\uc0\u8226 ;}{\levelnumbers;}\fi-360\li720\lin720 }{\listname ;}\listid4} +{\list\listtemplateid5\listhybrid{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace360\levelindent0{\*\levelmarker \{disc\}}{\leveltext\leveltemplateid401\'01\uc0\u8226 ;}{\levelnumbers;}\fi-360\li720\lin720 }{\listname ;}\listid5} +{\list\listtemplateid6\listhybrid{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace360\levelindent0{\*\levelmarker \{disc\}}{\leveltext\leveltemplateid501\'01\uc0\u8226 ;}{\levelnumbers;}\fi-360\li720\lin720 }{\listname ;}\listid6}} +{\*\listoverridetable{\listoverride\listid1\listoverridecount0\ls1}{\listoverride\listid2\listoverridecount0\ls2}{\listoverride\listid3\listoverridecount0\ls3}{\listoverride\listid4\listoverridecount0\ls4}{\listoverride\listid5\listoverridecount0\ls5}{\listoverride\listid6\listoverridecount0\ls6}} +\margl1440\margr1440\vieww14040\viewh10200\viewkind0 +\pard\tx566\tx1133\tx1700\tx2267\tx2834\tx3401\tx3968\tx4535\tx5102\tx5669\tx6236\tx6803\pardirnatural\partightenfactor0 + +\f0\b\fs36 \cf0 Building L\'d6VE for iOS +\b0\fs24 \ +\pard\tx566\tx1133\tx1700\tx2267\tx2834\tx3401\tx3968\tx4535\tx5102\tx5669\tx6236\tx6803\pardirnatural\partightenfactor0 +\cf0 \ +In order to run L\'d6VE for iOS, it must first be compiled and installed. To do that, you\'92ll need Mac OS X and {\field{\*\fldinst{HYPERLINK "https://developer.apple.com/xcode/"}}{\fldrslt Xcode 7 or newer}}.\ +\ +\pard\tx220\tx720\tx1133\tx1700\tx2267\tx2834\tx3401\tx3968\tx4535\tx5102\tx5669\tx6236\tx6803\li720\fi-720\pardirnatural\partightenfactor0 +\ls1\ilvl0\cf0 {\listtext \'95 }If the +\f1\fs22 include +\f0\fs24 and +\f1\fs22 libraries +\f0\fs24 folders are not present in the +\f1\fs22 love/platform/xcode/ios +\f0\fs24 folder, {\field{\*\fldinst{HYPERLINK "https://bitbucket.org/rude/love/downloads/love-0.10.0-ios-libraries.zip"}}{\fldrslt download them}} and place them there. They contain the third-party library dependencies used by L\'d6VE.\ +\pard\tx566\tx1133\tx1700\tx2267\tx2834\tx3401\tx3968\tx4535\tx5102\tx5669\tx6236\tx6803\pardirnatural\partightenfactor0 +\cf0 \ +\pard\tx220\tx720\tx1133\tx1700\tx2267\tx2834\tx3401\tx3968\tx4535\tx5102\tx5669\tx6236\tx6803\li720\fi-720\pardirnatural\partightenfactor0 +\ls2\ilvl0\cf0 {\listtext \'95 }Open the Xcode project found at +\f1\fs22 love/platform/xcode/love.xcodeproj +\f0\fs24 , and select the \'93love-ios\'94 target in the dropdown menu at the top of the window.\ +\pard\tx566\tx1133\tx1700\tx2267\tx2834\tx3401\tx3968\tx4535\tx5102\tx5669\tx6236\tx6803\pardirnatural\partightenfactor0 +\cf0 \ +\pard\tx220\tx720\tx1133\tx1700\tx2267\tx2834\tx3401\tx3968\tx4535\tx5102\tx5669\tx6236\tx6803\li720\fi-720\pardirnatural\partightenfactor0 +\ls3\ilvl0\cf0 {\listtext \'95 }You may want to change the Build Configuration from Debug to Release mode for better runtime performance, by opening the \'93Edit Scheme\'85\'94 menu from the same dropdown selection.\ +\pard\tx566\tx1133\tx1700\tx2267\tx2834\tx3401\tx3968\tx4535\tx5102\tx5669\tx6236\tx6803\pardirnatural\partightenfactor0 +\cf0 \ +\pard\tx220\tx720\tx1133\tx1700\tx2267\tx2834\tx3401\tx3968\tx4535\tx5102\tx5669\tx6236\tx6803\li720\fi-720\pardirnatural\partightenfactor0 +\ls4\ilvl0\cf0 {\listtext \'95 }Choose either an iOS Simulator device or your plugged-in iOS device from the dropdown selection to the right of the previous one, and click the Build-and-Run +\f2 \uc0\u9654 \u65038 +\f0 button to the left, which will install and run L\'d6VE on the target device after compiling it.\ +\pard\tx566\tx1133\tx1700\tx2267\tx2834\tx3401\tx3968\tx4535\tx5102\tx5669\tx6236\tx6803\pardirnatural\partightenfactor0 +\cf0 \ + +\b\fs36 Running Games on iOS +\b0\fs24 \ +\pard\tx566\tx1133\tx1700\tx2267\tx2834\tx3401\tx3968\tx4535\tx5102\tx5669\tx6236\tx6803\pardirnatural\partightenfactor0 +\cf0 \ +L\'d6VE on iOS includes a simple list interface of games that are installed (until you {\field{\*\fldinst{HYPERLINK "https://love2d.org/wiki/Game_Distribution"}}{\fldrslt fuse}} a .love to it for distribution.)\ +\ +\pard\tx220\tx720\tx1133\tx1700\tx2267\tx2834\tx3401\tx3968\tx4535\tx5102\tx5669\tx6236\tx6803\li720\fi-720\pardirnatural\partightenfactor0 +\ls5\ilvl0\cf0 {\listtext \'95 }To put a .love file on the iOS Simulator after L\'d6VE is installed, drag the file onto the iOS Simulator\'92s window while it\'92s open. L\'d6VE will launch if it\'92s not running already. If another game is currently active you may need to quit L\'d6VE for the new game to show up (press Shift-Command-H twice to open the App Switcher menu on the iOS Simulator.)\ +\pard\tx566\tx1133\tx1700\tx2267\tx2834\tx3401\tx3968\tx4535\tx5102\tx5669\tx6236\tx6803\pardirnatural\partightenfactor0 +\cf0 \ +\pard\tx220\tx720\tx1133\tx1700\tx2267\tx2834\tx3401\tx3968\tx4535\tx5102\tx5669\tx6236\tx6803\li720\fi-720\pardirnatural\partightenfactor0 +\ls6\ilvl0\cf0 {\listtext \'95 }To put a .love file or game folder on your iOS device after L\'d6VE is installed, you can either download it with the Safari, or transfer it from your computer through iTunes when your device is connected: open iTunes, go to the iOS device which has L\'d6VE installed, go to the \'91Apps\'92 section and scroll down and find L\'d6VE, and add the .love file or game folder to L\'d6VE\'92s Documents section.\ +\pard\tx566\tx1133\tx1700\tx2267\tx2834\tx3401\tx3968\tx4535\tx5102\tx5669\tx6236\tx6803\pardirnatural\partightenfactor0 +\cf0 \ + +\b\fs36 Distributing a Game on iOS +\b0\fs24 \ +\ +Refer to the {\field{\*\fldinst{HYPERLINK "https://love2d.org/wiki/Game_Distribution#iOS"}}{\fldrslt Game Distribution}} L\'d6VE wiki page.\ +} \ No newline at end of file diff --git a/jni/love/readme.md b/jni/love/readme.md index 14c58188..6bdf7824 100644 --- a/jni/love/readme.md +++ b/jni/love/readme.md @@ -1,4 +1,6 @@ -LÖVE is an *awesome* framework you can use to make 2D games in Lua. It's free, open-source, and works on Windows, Mac OS X and Linux. +LÖVE is an *awesome* framework you can use to make 2D games in Lua. It's free, open-source, and works on Windows, Mac OS X, Linux, Android, and iOS. + +[![Build Status: Windows](https://ci.appveyor.com/api/projects/status/u1a69u5o5ej1pus4?svg=true)](https://ci.appveyor.com/project/AlexSzpakowski/love) Documentation ------------- @@ -22,7 +24,18 @@ Run `platform/unix/automagic` from the repository root, then run ./configure and ###Mac OS X Download the required frameworks from [here][dependencies] and place them in `/Library/Frameworks/`. -Then use the Xcode project found at `platform/macosx/love.xcodeproj`. +Then use the Xcode project found at `platform/xcode/love.xcodeproj` to build the `love-macosx` target. + +###iOS +Download the required libraries from [here][dependencies-ios] and place the `include` and `libraries` folders +into the `platform/xcode/ios` folder. + +Then use the Xcode project found at `platform/xcode/love.xcodeproj` to build the `love-ios` target. + +See `readme-iOS.rtf` for more information. + +###Android +Visit the [Android build repository][android-repository] for build instructions. Repository information ---------------------- @@ -35,6 +48,12 @@ We tag all our releases (since we started using mercurial), and have binary down Experimental changes are developed in the separate [love-experiments][love-experiments] repository. +Contributing +------------ + +The best places to contribute are through the Bitbucket issue tracker and the official IRC channel. +For code contributions, pull requests and patches are welcome. Be sure to read the [source code style guide][codestyle]. + Builds ------ @@ -51,24 +70,27 @@ Dependencies ------------ - SDL2 -- OpenGL +- OpenGL 2.1+ / OpenGL ES 2+ - OpenAL - Lua / LuaJIT / LLVM-lua -- DevIL with MNG and TIFF - FreeType - PhysicsFS - ModPlug - mpg123 - Vorbisfile +- Theora [site]: http://love2d.org [wiki]: http://love2d.org/wiki [forums]: http://love2d.org/forums [irc]: irc://irc.oftc.net/love [dependencies]: http://love2d.org/sdk +[dependencies-ios]: https://bitbucket.org/rude/love/downloads/love-0.10.0-ios-libraries.zip [megasource]: https://bitbucket.org/rude/megasource [builds]: http://love2d.org/builds [stableppa]: https://launchpad.net/~bartbes/+archive/love-stable [unstableppa]: https://launchpad.net/~bartbes/+archive/love-unstable -[aur]: http://aur.archlinux.org/packages.php?ID=35279 +[aur]: http://aur.archlinux.org/packages/love-hg [love-experiments]: https://bitbucket.org/bartbes/love-experiments +[codestyle]: https://love2d.org/wiki/Code_Style +[android-repository]: https://bitbucket.org/MartinFelis/love-android-sdl2 diff --git a/jni/love/src/common/config.h b/jni/love/src/common/config.h index 8e9674a4..61d08cf7 100644 --- a/jni/love/src/common/config.h +++ b/jni/love/src/common/config.h @@ -76,7 +76,6 @@ #endif #if defined(LOVE_WINDOWS) -# define LOVE_LEGENDARY_UTF8_ARGV_HACK # define LOVE_LEGENDARY_CONSOLE_IO_HACK # define NOMINMAX #endif diff --git a/jni/love/src/love.cpp b/jni/love/src/love.cpp index 07c00523..1ee6f6c0 100644 --- a/jni/love/src/love.cpp +++ b/jni/love/src/love.cpp @@ -59,47 +59,14 @@ extern "C" // http://developer.download.nvidia.com/devzone/devcenter/gamegraphics/files/OptimusRenderingPolicies.pdf // TODO: Re-evaluate in the future when the average integrated GPU in Optimus // systems is less mediocre? -LOVE_EXPORT DWORD NvOptimusEnablement = 0x00000001; +LOVE_EXPORT DWORD NvOptimusEnablement = 1; + +// Same with AMD GPUs. +// https://community.amd.com/thread/169965 +LOVE_EXPORT DWORD AmdPowerXpressRequestHighPerformance = 1; } #endif // LOVE_WINDOWS -#ifdef LOVE_LEGENDARY_UTF8_ARGV_HACK - -void get_utf8_arguments(int &argc, char **&argv) -{ - LPWSTR cmd = GetCommandLineW(); - - if (!cmd) - return; - - LPWSTR *argv_w = CommandLineToArgvW(cmd, &argc); - - argv = new char *[argc]; - - for (int i = 0; i < argc; ++i) - { - // Size of wide char buffer (plus one for trailing '\0'). - size_t wide_len = wcslen(argv_w[i]) + 1; - - // Get size in UTF-8. - int utf8_size = WideCharToMultiByte(CP_UTF8, 0, argv_w[i], wide_len, argv[i], 0, 0, 0); - - argv[i] = new char[utf8_size]; - - // Convert to UTF-8. - int ok = WideCharToMultiByte(CP_UTF8, 0, argv_w[i], wide_len, argv[i], utf8_size, 0, 0); - - int len = strlen(argv[i]); - - if (!ok) - printf("Warning: could not convert to UTF8.\n"); - } - - LocalFree(argv_w); -} - -#endif // LOVE_LEGENDARY_UTF8_ARGV_HACK - #ifdef LOVE_LEGENDARY_APP_ARGV_HACK #include @@ -222,13 +189,6 @@ int main(int argc, char **argv) argv = orig_argv; #endif -#ifdef LOVE_LEGENDARY_UTF8_ARGV_HACK - int hack_argc = 0; char **hack_argv = 0; - get_utf8_arguments(hack_argc, hack_argv); - argc = hack_argc; - argv = hack_argv; -#endif // LOVE_LEGENDARY_UTF8_ARGV_HACK - #ifdef LOVE_LEGENDARY_APP_ARGV_HACK int hack_argc = 0; char **hack_argv = 0; @@ -314,14 +274,14 @@ int main(int argc, char **argv) lua_close(L); -#if defined(LOVE_LEGENDARY_UTF8_ARGV_HACK) || defined(LOVE_LEGENDARY_APP_ARGV_HACK) +#if defined(LOVE_LEGENDARY_APP_ARGV_HACK) if (hack_argv) { for (int i = 0; i(Module::M_AUDIO); - if (audio) - audio->pause(); - } - break; - case SDL_WINDOWEVENT_RESTORED: - { - auto audio = Module::getInstance(Module::M_AUDIO); - if (audio) - audio->resume(); - } - break; -#endif default: break; } @@ -590,6 +574,21 @@ Message *Event::convertWindowEvent(const SDL_Event &e) const if (win) win->onSizeChanged(e.window.data1, e.window.data2); break; + case SDL_WINDOWEVENT_MINIMIZED: + case SDL_WINDOWEVENT_RESTORED: +#ifdef LOVE_ANDROID + { + auto audio = Module::getInstance(Module::M_AUDIO); + if (audio) + { + if (e.window.event == SDL_WINDOWEVENT_MINIMIZED) + audio->pause(); + else if (e.window.event == SDL_WINDOWEVENT_RESTORED) + audio->resume(); + } + } +#endif + break; } // We gave +1 refs to the StrongRef list, so we should release them. diff --git a/jni/love/src/modules/font/BMFontRasterizer.cpp b/jni/love/src/modules/font/BMFontRasterizer.cpp index b1121937..bda538d3 100644 --- a/jni/love/src/modules/font/BMFontRasterizer.cpp +++ b/jni/love/src/modules/font/BMFontRasterizer.cpp @@ -245,6 +245,8 @@ void BMFontRasterizer::parseConfig(const std::string &configtext) for (const auto &cpair : characters) { const BMFontCharacter &c = cpair.second; + int width = c.metrics.width; + int height = c.metrics.height; if (!unicode && cpair.first > 127) throw love::Exception("Invalid BMFont character id (only unicode and ASCII are supported)"); @@ -254,8 +256,14 @@ void BMFontRasterizer::parseConfig(const std::string &configtext) const image::ImageData *id = images[c.page].get(); - if (!id->inside(c.x, c.y) || !id->inside(c.x + c.metrics.width - 1, c.y + c.metrics.height - 1)) - throw love::Exception("Invalid BMFont character coordinates."); + if (!id->inside(c.x, c.y)) + throw love::Exception("Invalid coordinates for BMFont character %u.", cpair.first); + + if (width > 0 && !id->inside(c.x + width - 1, c.y)) + throw love::Exception("Invalid width %d for BMFont character %u.", width, cpair.first); + + if (height > 0 && !id->inside(c.x, c.y + height - 1)) + throw love::Exception("Invalid height %d for BMFont character %u.", height, cpair.first); if (guessheight) lineHeight = std::max(lineHeight, c.metrics.height); diff --git a/jni/love/src/modules/graphics/opengl/Canvas.h b/jni/love/src/modules/graphics/opengl/Canvas.h index 69cd22e7..7f7a9ec8 100644 --- a/jni/love/src/modules/graphics/opengl/Canvas.h +++ b/jni/love/src/modules/graphics/opengl/Canvas.h @@ -117,6 +117,7 @@ public: return actual_samples; } + static Format getSizedFormat(Format format); static bool isSupported(); static bool isMultiFormatMultiCanvasSupported(); static bool isFormatSupported(Format format); @@ -143,7 +144,6 @@ private: void drawv(const Matrix4 &t, const Vertex *v); - static Format getSizedFormat(Format format); static void convertFormat(Format format, GLenum &internalformat, GLenum &externalformat, GLenum &type); static size_t getFormatBitsPerPixel(Format format); diff --git a/jni/love/src/modules/graphics/opengl/Graphics.cpp b/jni/love/src/modules/graphics/opengl/Graphics.cpp index ec30c743..d4c3088f 100644 --- a/jni/love/src/modules/graphics/opengl/Graphics.cpp +++ b/jni/love/src/modules/graphics/opengl/Graphics.cpp @@ -842,11 +842,14 @@ ParticleSystem *Graphics::newParticleSystem(Texture *texture, int size) Canvas *Graphics::newCanvas(int width, int height, Canvas::Format format, int msaa) { + if (!Canvas::isSupported()) + throw love::Exception("Canvases are not supported by your OpenGL drivers!"); + if (!Canvas::isFormatSupported(format)) { const char *fstr = "rgba8"; - Canvas::getConstant(format, fstr); - throw love::Exception("The %s canvas format is not supported by your OpenGL implementation.", fstr); + Canvas::getConstant(Canvas::getSizedFormat(format), fstr); + throw love::Exception("The %s canvas format is not supported by your OpenGL drivers.", fstr); } if (width > gl.getMaxTextureSize()) @@ -870,7 +873,7 @@ Canvas *Graphics::newCanvas(int width, int height, Canvas::Format format, int ms switch (err) { case GL_FRAMEBUFFER_UNSUPPORTED: - error_string << "Not supported by your OpenGL implementation."; + error_string << "Not supported by your OpenGL drivers."; break; case GL_FRAMEBUFFER_INCOMPLETE_ATTACHMENT: error_string << "Texture format cannot be rendered to on this system."; @@ -881,14 +884,14 @@ Canvas *Graphics::newCanvas(int width, int height, Canvas::Format format, int ms case GL_FRAMEBUFFER_INCOMPLETE_DRAW_BUFFER: case GL_FRAMEBUFFER_INCOMPLETE_READ_BUFFER: case GL_FRAMEBUFFER_INCOMPLETE_MULTISAMPLE: - error_string << "Error in implementation."; + error_string << "Error in graphics driver."; break; default: // my intel hda card wrongly returns 0 to glCheckFramebufferStatus() but sets // no error flag. I think it meant to return GL_FRAMEBUFFER_UNSUPPORTED, but who // knows. if (glGetError() == GL_NO_ERROR) - error_string << "May not be supported by your OpenGL implementation."; + error_string << "May not be supported by your OpenGL drivers."; // the remaining error is an indication of a serious fuckup since it should // only be returned if glCheckFramebufferStatus() was called with the wrong // arguments. diff --git a/jni/love/src/modules/graphics/opengl/wrap_Graphics.cpp b/jni/love/src/modules/graphics/opengl/wrap_Graphics.cpp index 31ff5f35..30097a50 100644 --- a/jni/love/src/modules/graphics/opengl/wrap_Graphics.cpp +++ b/jni/love/src/modules/graphics/opengl/wrap_Graphics.cpp @@ -47,6 +47,13 @@ namespace opengl #define instance() (Module::getInstance(Module::M_GRAPHICS)) +static int luax_checkgraphicscreated(lua_State *L) +{ + if (!instance()->isCreated()) + return luaL_error(L, "love.graphics cannot function without a window!"); + return 0; +} + int w_reset(lua_State *) { instance()->reset(); @@ -290,6 +297,8 @@ static const char *imageFlagName(Image::FlagType flagtype) int w_newImage(lua_State *L) { + luax_checkgraphicscreated(L); + std::vector data; std::vector cdata; @@ -400,6 +409,8 @@ int w_newImage(lua_State *L) int w_newQuad(lua_State *L) { + luax_checkgraphicscreated(L); + Quad::Viewport v; v.x = luaL_checknumber(L, 1); v.y = luaL_checknumber(L, 2); @@ -417,6 +428,8 @@ int w_newQuad(lua_State *L) int w_newFont(lua_State *L) { + luax_checkgraphicscreated(L); + Font *font = nullptr; // Convert to Rasterizer, if necessary. @@ -443,6 +456,8 @@ int w_newFont(lua_State *L) int w_newImageFont(lua_State *L) { + luax_checkgraphicscreated(L); + // filter for glyphs Texture::Filter filter = instance()->getDefaultFilter(); @@ -483,6 +498,8 @@ int w_newImageFont(lua_State *L) int w_newSpriteBatch(lua_State *L) { + luax_checkgraphicscreated(L); + Texture *texture = luax_checktexture(L, 1); int size = (int) luaL_optnumber(L, 2, 1000); Mesh::Usage usage = Mesh::USAGE_DYNAMIC; @@ -505,6 +522,8 @@ int w_newSpriteBatch(lua_State *L) int w_newParticleSystem(lua_State *L) { + luax_checkgraphicscreated(L); + Texture *texture = luax_checktexture(L, 1); lua_Number size = luaL_optnumber(L, 2, 1000); ParticleSystem *t = 0; @@ -522,6 +541,8 @@ int w_newParticleSystem(lua_State *L) int w_newCanvas(lua_State *L) { + luax_checkgraphicscreated(L); + // check if width and height are given. else default to screen dimensions. int width = (int) luaL_optnumber(L, 1, instance()->getWidth()); int height = (int) luaL_optnumber(L, 2, instance()->getHeight()); @@ -547,6 +568,8 @@ int w_newCanvas(lua_State *L) int w_newShader(lua_State *L) { + luax_checkgraphicscreated(L); + // clamp stack to 2 elements lua_settop(L, 2); @@ -848,6 +871,8 @@ static Mesh *newCustomMesh(lua_State *L) int w_newMesh(lua_State *L) { + luax_checkgraphicscreated(L); + // Check first argument: table or number of vertices. int arg1type = lua_type(L, 1); if (arg1type != LUA_TTABLE && arg1type != LUA_TNUMBER) @@ -868,6 +893,8 @@ int w_newMesh(lua_State *L) int w_newText(lua_State *L) { + luax_checkgraphicscreated(L); + Font *font = luax_checkfont(L, 1); Text *t = nullptr; @@ -888,6 +915,8 @@ int w_newText(lua_State *L) int w_newVideo(lua_State *L) { + luax_checkgraphicscreated(L); + if (!luax_istype(L, 1, VIDEO_VIDEO_STREAM_ID)) luax_convobj(L, 1, "video", "newVideoStream"); diff --git a/jni/love/src/modules/image/wrap_ImageData.lua b/jni/love/src/modules/image/wrap_ImageData.lua index 21ecafb8..22fbc451 100644 --- a/jni/love/src/modules/image/wrap_ImageData.lua +++ b/jni/love/src/modules/image/wrap_ImageData.lua @@ -42,12 +42,12 @@ function ImageData:mapPixel(func, ix, iy, iw, ih) iw = iw or idw ih = ih or idh - if type(ix) ~= "number" then error("Invalid argument #2 to ImageData:mapPixel (expected number)", 2) end - if type(iy) ~= "number" then error("Invalid argument #3 to ImageData:mapPixel (expected number)", 2) end - if type(iw) ~= "number" then error("Invalid argument #4 to ImageData:mapPixel (expected number)", 2) end - if type(ih) ~= "number" then error("Invalid argument #5 to ImageData:mapPixel (expected number)", 2) end + if type(ix) ~= "number" then error("bad argument #2 to ImageData:mapPixel (expected number)", 2) end + if type(iy) ~= "number" then error("bad argument #3 to ImageData:mapPixel (expected number)", 2) end + if type(iw) ~= "number" then error("bad argument #4 to ImageData:mapPixel (expected number)", 2) end + if type(ih) ~= "number" then error("bad argument #5 to ImageData:mapPixel (expected number)", 2) end - if type(func) ~= "function" then error("Invalid argument #1 to ImageData:mapPixel (expected function)", 2) end + if type(func) ~= "function" then error("bad argument #1 to ImageData:mapPixel (expected function)", 2) end if not (inside(ix, iy, idw, idh) and inside(ix+iw-1, iy+ih-1, idw, idh)) then error("Invalid rectangle dimensions", 2) end -- performAtomic and mapPixelUnsafe have Lua-C API and FFI versions. @@ -141,6 +141,9 @@ function ImageData:_mapPixelUnsafe(func, ix, iy, iw, ih) end function ImageData:getPixel(x, y) + if type(x) ~= "number" then error("bad argument #1 to ImageData:getPixel (expected number)", 2) end + if type(y) ~= "number" then error("bad argument #2 to ImageData:getPixel (expected number)", 2) end + local p = objectcache[self] if not inside(x, y, p.width, p.height) then error("Attempt to get out-of-range pixel!", 2) end @@ -154,15 +157,23 @@ end local temppixel = ffi.new("ImageData_Pixel") -function ImageData:setPixel(x, y, r, g, b, a) - local p = objectcache[self] - if not inside(x, y, p.width, p.height) then error("Attempt to set out-of-range pixel!", 2) end +function ImageData:setPixel(x, y, r, g, b, a) + if type(x) ~= "number" then error("bad argument #1 to ImageData:setPixel (expected number)", 2) end + if type(y) ~= "number" then error("bad argument #2 to ImageData:setPixel (expected number)", 2) end if type(r) == "table" then local t = r r, g, b, a = t[1], t[2], t[3], t[4] end + if type(r) ~= "number" then error("bad red color component argument to ImageData:setPixel (expected number)", 2) end + if type(g) ~= "number" then error("bad green color component argument to ImageData:setPixel (expected number)", 2) end + if type(b) ~= "number" then error("bad blue color component argument to ImageData:setPixel (expected number)", 2) end + if a ~= nil and type(a) ~= "number" then error("bad alpha color component argument to ImageData:setPixel (expected number)", 2) end + + local p = objectcache[self] + if not inside(x, y, p.width, p.height) then error("Attempt to set out-of-range pixel!", 2) end + temppixel.r = r temppixel.g = g temppixel.b = b diff --git a/jni/love/src/modules/keyboard/sdl/Keyboard.cpp b/jni/love/src/modules/keyboard/sdl/Keyboard.cpp index 9cb27c91..84219a0b 100644 --- a/jni/love/src/modules/keyboard/sdl/Keyboard.cpp +++ b/jni/love/src/modules/keyboard/sdl/Keyboard.cpp @@ -55,6 +55,7 @@ bool Keyboard::isDown(const std::vector &keylist) const for (Key key : keylist) { SDL_Scancode scancode = SDL_GetScancodeFromKey(keymap[key]); + if (state[scancode]) return true; } @@ -68,11 +69,9 @@ bool Keyboard::isScancodeDown(const std::vector &scancodelist) const for (Scancode scancode : scancodelist) { - SDL_Scancode sdlscancode = SDL_SCANCODE_UNKNOWN; - if (!scancodes.find(scancode, sdlscancode)) - continue; + SDL_Scancode sdlcode = SDL_SCANCODE_UNKNOWN; - if (state[sdlscancode]) + if (scancodes.find(scancode, sdlcode) && state[sdlcode]) return true; } diff --git a/jni/love/src/modules/physics/box2d/MotorJoint.cpp b/jni/love/src/modules/physics/box2d/MotorJoint.cpp index 15250268..3902fe38 100644 --- a/jni/love/src/modules/physics/box2d/MotorJoint.cpp +++ b/jni/love/src/modules/physics/box2d/MotorJoint.cpp @@ -42,7 +42,7 @@ MotorJoint::MotorJoint(Body *body1, Body *body2) joint = (b2MotorJoint *) createJoint(&def); } -MotorJoint::MotorJoint(Body *body1, Body *body2, float correctionFactor) +MotorJoint::MotorJoint(Body *body1, Body *body2, float correctionFactor, bool collideConnected) : Joint(body1, body2) , joint(NULL) { @@ -50,6 +50,7 @@ MotorJoint::MotorJoint(Body *body1, Body *body2, float correctionFactor) def.Initialize(body1->body, body2->body); def.correctionFactor = correctionFactor; + def.collideConnected = collideConnected; joint = (b2MotorJoint *) createJoint(&def); } diff --git a/jni/love/src/modules/physics/box2d/MotorJoint.h b/jni/love/src/modules/physics/box2d/MotorJoint.h index ac4ad65f..69d9432e 100644 --- a/jni/love/src/modules/physics/box2d/MotorJoint.h +++ b/jni/love/src/modules/physics/box2d/MotorJoint.h @@ -41,7 +41,7 @@ class MotorJoint : public Joint public: MotorJoint(Body *body1, Body* body2); - MotorJoint(Body *body1, Body* body2, float correctionFactor); + MotorJoint(Body *body1, Body* body2, float correctionFactor, bool collideConnected); virtual ~MotorJoint(); /// Set/get the target linear offset, in frame A, in meters. diff --git a/jni/love/src/modules/physics/box2d/Physics.cpp b/jni/love/src/modules/physics/box2d/Physics.cpp index 99c1c912..8673c1ad 100644 --- a/jni/love/src/modules/physics/box2d/Physics.cpp +++ b/jni/love/src/modules/physics/box2d/Physics.cpp @@ -268,9 +268,9 @@ MotorJoint *Physics::newMotorJoint(Body *body1, Body *body2) return new MotorJoint(body1, body2); } -MotorJoint *Physics::newMotorJoint(Body *body1, Body *body2, float correctionFactor) +MotorJoint *Physics::newMotorJoint(Body *body1, Body *body2, float correctionFactor, bool collideConnected) { - return new MotorJoint(body1, body2, correctionFactor); + return new MotorJoint(body1, body2, correctionFactor, collideConnected); } diff --git a/jni/love/src/modules/physics/box2d/Physics.h b/jni/love/src/modules/physics/box2d/Physics.h index 92db477a..11350637 100644 --- a/jni/love/src/modules/physics/box2d/Physics.h +++ b/jni/love/src/modules/physics/box2d/Physics.h @@ -257,7 +257,7 @@ public: * and body2. **/ MotorJoint *newMotorJoint(Body *body1, Body *body2); - MotorJoint *newMotorJoint(Body *body1, Body *body2, float correctionFactor); + MotorJoint *newMotorJoint(Body *body1, Body *body2, float correctionFactor, bool collideConnected); /** * Creates a new Fixture attaching shape to body. diff --git a/jni/love/src/modules/physics/box2d/wrap_Physics.cpp b/jni/love/src/modules/physics/box2d/wrap_Physics.cpp index 18fc49ee..ef6327c6 100644 --- a/jni/love/src/modules/physics/box2d/wrap_Physics.cpp +++ b/jni/love/src/modules/physics/box2d/wrap_Physics.cpp @@ -419,8 +419,9 @@ int w_newMotorJoint(lua_State *L) if (!lua_isnoneornil(L, 3)) { float correctionFactor = (float)luaL_checknumber(L, 3); + bool collideConnected = luax_optboolean(L, 4, false); luax_catchexcept(L, [&]() { - j = instance()->newMotorJoint(body1, body2, correctionFactor); + j = instance()->newMotorJoint(body1, body2, correctionFactor, collideConnected); }); } else diff --git a/jni/love/src/modules/sound/wrap_SoundData.lua b/jni/love/src/modules/sound/wrap_SoundData.lua index 0a9d0500..803a9a2d 100644 --- a/jni/love/src/modules/sound/wrap_SoundData.lua +++ b/jni/love/src/modules/sound/wrap_SoundData.lua @@ -75,6 +75,8 @@ local objectcache = setmetatable({}, { -- Overwrite existing functions with new FFI versions. function SoundData:getSample(i) + if type(i) ~= "number" then error("bad argument #1 to SoundData:getSample (expected number)", 2) end + local p = objectcache[self] if not (i >= 0 and i < p.size/p.bytedepth) then @@ -91,6 +93,9 @@ function SoundData:getSample(i) end function SoundData:setSample(i, sample) + if type(i) ~= "number" then error("bad argument #1 to SoundData:setSample (expected number)", 2) end + if type(sample) ~= "number" then error("bad argument #2 to SoundData:setSample (expected number)", 2) end + local p = objectcache[self] if not (i >= 0 and i < p.size/p.bytedepth) then diff --git a/jni/love/src/modules/touch/Touch.h b/jni/love/src/modules/touch/Touch.h index 08c7557b..d4012190 100644 --- a/jni/love/src/modules/touch/Touch.h +++ b/jni/love/src/modules/touch/Touch.h @@ -55,19 +55,14 @@ public: virtual ModuleType getModuleType() const { return M_TOUCH; } /** - * Gets a list of the IDs of all currently active touches. + * Gets all currently active touches. **/ - virtual std::vector getTouches() const = 0; + virtual const std::vector &getTouches() const = 0; /** - * Gets the position in pixels of a specific touch, using its ID. + * Gets a specific touch, using its ID. **/ - virtual void getPosition(int64 id, double &x, double &y) const = 0; - - /** - * Gets the pressure of a specific touch, using its ID. - **/ - virtual double getPressure(int64 id) const = 0; + virtual const TouchInfo &getTouch(int64 id) const = 0; }; // Touch diff --git a/jni/love/src/modules/touch/sdl/Touch.cpp b/jni/love/src/modules/touch/sdl/Touch.cpp index 9f888564..8409e8ac 100644 --- a/jni/love/src/modules/touch/sdl/Touch.cpp +++ b/jni/love/src/modules/touch/sdl/Touch.cpp @@ -23,6 +23,9 @@ #include "common/Exception.h" #include "Touch.h" +// C++ +#include + namespace love { namespace touch @@ -30,34 +33,20 @@ namespace touch namespace sdl { -std::vector Touch::getTouches() const +const std::vector &Touch::getTouches() const { - std::vector ids; - ids.reserve(touches.size()); + return touches; +} +const Touch::TouchInfo &Touch::getTouch(int64 id) const +{ for (const auto &touch : touches) - ids.push_back(touch.first); + { + if (touch.id == id) + return touch; + } - return ids; -} - -void Touch::getPosition(int64 id, double &x, double &y) const -{ - const auto it = touches.find(id); - if (it == touches.end()) - throw love::Exception("Invalid active touch ID: %d", id); - - x = it->second.x; - y = it->second.y; -} - -double Touch::getPressure(int64 id) const -{ - const auto it = touches.find(id); - if (it == touches.end()) - throw love::Exception("Invalid active touch ID: %d", id); - - return it->second.pressure; + throw love::Exception("Invalid active touch ID: %d", id); } const char *Touch::getName() const @@ -67,14 +56,28 @@ const char *Touch::getName() const void Touch::onEvent(Uint32 eventtype, const TouchInfo &info) { + auto compare = [&](const TouchInfo &touch) -> bool + { + return touch.id == info.id; + }; + switch (eventtype) { case SDL_FINGERDOWN: - case SDL_FINGERMOTION: - touches[info.id] = info; + touches.erase(std::remove_if(touches.begin(), touches.end(), compare), touches.end()); + touches.push_back(info); break; + case SDL_FINGERMOTION: + { + for (TouchInfo &touch : touches) + { + if (touch.id == info.id) + touch = info; + } + break; + } case SDL_FINGERUP: - touches.erase(info.id); + touches.erase(std::remove_if(touches.begin(), touches.end(), compare), touches.end()); break; default: break; diff --git a/jni/love/src/modules/touch/sdl/Touch.h b/jni/love/src/modules/touch/sdl/Touch.h index 20730320..1d2d09f7 100644 --- a/jni/love/src/modules/touch/sdl/Touch.h +++ b/jni/love/src/modules/touch/sdl/Touch.h @@ -24,9 +24,6 @@ // LOVE #include "touch/Touch.h" -// C++ -#include - // SDL #include @@ -43,9 +40,8 @@ public: virtual ~Touch() {} - std::vector getTouches() const override; - void getPosition(int64 id, double &x, double &y) const override; - double getPressure(int64 id) const override; + const std::vector &getTouches() const override; + const TouchInfo &getTouch(int64 id) const override; // Implements Module. const char *getName() const override; @@ -59,8 +55,8 @@ public: private: - // All current touches, indexed by their IDs. - std::map touches; + // All current touches. + std::vector touches; }; // Touch diff --git a/jni/love/src/modules/touch/wrap_Touch.cpp b/jni/love/src/modules/touch/wrap_Touch.cpp index 95d51aaf..7967f314 100644 --- a/jni/love/src/modules/touch/wrap_Touch.cpp +++ b/jni/love/src/modules/touch/wrap_Touch.cpp @@ -42,18 +42,18 @@ int64 luax_checktouchid(lua_State *L, int idx) int w_getTouches(lua_State *L) { - std::vector ids = instance()->getTouches(); + const std::vector &touches = instance()->getTouches(); - lua_createtable(L, (int) ids.size(), 0); + lua_createtable(L, (int) touches.size(), 0); - for (size_t i = 0; i < ids.size(); i++) + for (size_t i = 0; i < touches.size(); i++) { // This is a bit hackish and we lose the higher 32 bits of the id on // 32-bit systems, but SDL only ever gives id's that at most use as many // bits as can fit in a pointer (for now.) // We use lightuserdata instead of a lua_Number (double) because doubles // can't represent all possible id values on 64-bit systems. - lua_pushlightuserdata(L, (void *) (intptr_t) ids[i]); + lua_pushlightuserdata(L, (void *) (intptr_t) touches[i].id); lua_rawseti(L, -2, (int) i + 1); } @@ -64,12 +64,11 @@ int w_getPosition(lua_State *L) { int64 id = luax_checktouchid(L, 1); - double x = 0; - double y = 0; - luax_catchexcept(L, [&]() { instance()->getPosition(id, x, y); }); + Touch::TouchInfo touch = {}; + luax_catchexcept(L, [&]() { touch = instance()->getTouch(id); }); - lua_pushnumber(L, x); - lua_pushnumber(L, y); + lua_pushnumber(L, touch.x); + lua_pushnumber(L, touch.y); return 2; } @@ -77,9 +76,11 @@ int w_getPosition(lua_State *L) int w_getPressure(lua_State *L) { int64 id = luax_checktouchid(L, 1); - double pressure = 0.0; - luax_catchexcept(L, [&](){ pressure = instance()->getPressure(id); }); - lua_pushnumber(L, pressure); + + Touch::TouchInfo touch = {}; + luax_catchexcept(L, [&](){ touch = instance()->getTouch(id); }); + + lua_pushnumber(L, touch.pressure); return 1; } diff --git a/res/drawable-hdpi/ic_launcher.png b/res/drawable-hdpi/ic_launcher.png deleted file mode 100644 index 031920238f699f7c42d309befd898788837cc240..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4733 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%0D+DGy_M)8QsIZKd1EH=%gIbkJu+kAIxk71I+Hu^q z=>!4<)@9n$j}`OT$J@o^q!X%{uv3mgTXAFFbyO-_OiGir;V#9l4H-6M5;TmULN{=9 zD&V>C8l|dkHYopQbvaH4U3OBv#Cfj66K(Tc2s(7H@W|#28CP*=!so{)D$NoKiU&u# z`Np<>4qx{9(ecU+3C(E-qZd?;rU68ZM!7L&ecxCwRW1DR?-dSBcql+Ag@Zy{;n`C) zKK=VCvb`=(Z6D}Jz{-FUvZN&hw-9Lz&Jf1s?hR=s8Js6ewswx6XBvkKMzst$81{6B3-OUsf9&3@S1azjNIZ+OHa5S?Dj4pUV`-<80jIgmc z!9U7D2+GFBwODM%@dD2z9mOkedu&^qLT)@pqomv+=)<%W8qu3{n5>(tn2Wn6BdvlU zZQ(QJ8M3w;nb|=+`L|FsPS50W%^Q0GwmB@d;{>z zRX~gREX92GyuiAb-mV`!GUe?r=Cggpe75=2P~ol8`P1S&k8IAcuG_(n*t8bfacV2v zJJQ8NqZz*U`W&f6{GKb6IGN85&jx1ym4^PUf{noGC4VmG3Z+5UQ8W3`-f$9P!cU2Y z6}Ao}d2DMhg|jtYdaJ>#Z&6XG2+*HYJUZ6Pz3Wqa?eHw)bJwzYYR+r6d8;yeTG)GP z37I=K<@2T2X87jz0ruXS;rzVjjp=}-10PzKVj$&kwqp3yD^nP`p`K((Kr5b+s6@(D z`O*TF!1BbQ8GIvrWF*aP11^EU{*zVydf8u8;WuSSw&g%+dgn-HD3efOvn)~bY-o;g zWCe@`BAl!E0Lg`VSh4FJ#Yg{esdjiMouEINz=);Sbx0)~OcVx{z!0>7O*x7_*J-9? z&j{7164bS&rY*qO^*}Cn_S6sT71#{83B{9l4t3GcVHk{8JgwjdZG!*et$nHfq@z#@ zPL@3!#Zy2Ra0Vz8^V#xJrh3aBJ4VN81&ytPUCnO)OvP&y^V#mUkU2Nnm)ewyfELRQ z{<(LP>h#Q28R^8ic447Gh52-;-{nhq=IQ|bZ?FFYpt4|ow3K+4YiCk79cVG1ty!qd z_!cW+Lkt}6kk-a$eS;M!2L`3M@E--5E0j>M?NU9saB9wzvab&p^Vtt}$P&BCzBzho k&SRpkFDTf(T*1ZbUk~!6c7VrUwEzGB07*qoM6N<$g8bwOJpcdz diff --git a/res/drawable-mdpi/love.png b/res/drawable-mdpi/love.png new file mode 100755 index 0000000000000000000000000000000000000000..de67081341db025d7966083912d31ee03c8f61b9 GIT binary patch literal 13407 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 diff --git a/res/drawable-xhdpi/love.png b/res/drawable-xhdpi/love.png new file mode 100755 index 0000000000000000000000000000000000000000..6e6ca4816cd1efcb3b525cbbb9610edb8ea44925 GIT binary patch literal 31342 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 Zh(p?gf#7F`#s61As;>M>saC-<;(sZU%m)Af diff --git a/res/drawable-xxhdpi/love.png b/res/drawable-xxhdpi/love.png new file mode 100755 index 0000000000000000000000000000000000000000..c07cb053bef11b870bbd78ac9a5603f85b91b770 GIT binary patch literal 53531 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