summaryrefslogtreecommitdiffstats
path: root/modules/webp
Commit message (Collapse)AuthorAgeFilesLines
* Add support for saving WebP imagesAaron Franke2022-06-217-176/+393
|
* Refactor module initializationreduz2022-05-042-4/+14
| | | | | | | * Changed to use the same stages as extensions. * Makes the initialization more coherent, helping solve problems due to lack of stages. * Makes it easier to port between module and extension. * removed the DRIVER initialization level (no longer needed).
* Make FileAccess and DirAccess classes reference counted.bruvzg2022-04-112-4/+2
|
* Update copyright statements to 2022Rémi Verschelde2022-01-034-8/+8
| | | | Happy new year to the wonderful Godot community!
* libwebp: Sync with upstream 1.2.1Rémi Verschelde2021-11-191-0/+1
| | | | Changes: https://chromium.googlesource.com/webm/libwebp/+/1.2.1/NEWS
* Rename `instance()`->`instantiate()` when it's a verbLightning_A2021-06-191-1/+1
|
* Implement lossless WebP encodingMorris Tabor2021-06-111-4/+71
|
* Rename File::get_len() get_length()Marcel Admiraal2021-05-251-1/+1
|
* Make all file access 64-bit (uint64_t)Pedro J. Estébanez2021-05-171-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | This changes the types of a big number of variables. General rules: - Using `uint64_t` in general. We also considered `int64_t` but eventually settled on keeping it unsigned, which is also closer to what one would expect with `size_t`/`off_t`. - We only keep `int64_t` for `seek_end` (takes a negative offset from the end) and for the `Variant` bindings, since `Variant::INT` is `int64_t`. This means we only need to guard against passing negative values in `core_bind.cpp`. - Using `uint32_t` integers for concepts not needing such a huge range, like pages, blocks, etc. In addition: - Improve usage of integer types in some related places; namely, `DirAccess`, core binds. Note: - On Windows, `_ftelli64` reports invalid values when using 32-bit MinGW with version < 8.0. This was an upstream bug fixed in 8.0. It breaks support for big files on 32-bit Windows builds made with that toolchain. We might add a workaround. Fixes #44363. Fixes godotengine/godot-proposals#400. Co-authored-by: Rémi Verschelde <rverschelde@gmail.com>
* Core: Drop custom `copymem`/`zeromem` definesRémi Verschelde2021-04-271-1/+1
| | | | | | | | We've been using standard C library functions `memcpy`/`memset` for these since 2016 with 67f65f66391327b2967a20a89c3627e1dd6e84eb. There was still the possibility for third-party platform ports to override the definitions with a custom header, but this doesn't seem useful anymore.
* Update copyright statements to 2021Rémi Verschelde2021-01-014-8/+8
| | | | | | | | | | | | | | Happy new year to the wonderful Godot community! 2020 has been a tough year for most of us personally, but a good year for Godot development nonetheless with a huge amount of work done towards Godot 4.0 and great improvements backported to the long-lived 3.2 branch. We've had close to 400 contributors to engine code this year, authoring near 7,000 commit! (And that's only for the `master` branch and for the engine code, there's a lot more when counting docs, demos and other first-party repos.) Here's to a great year 2021 for all Godot users 🎆
* Rename empty() to is_empty()Marcel Admiraal2020-12-281-1/+1
|
* SCons: Add explicit dependencies on thirdparty code in cloned envRémi Verschelde2020-12-181-2/+14
| | | | | | | | | | | | | | Since we clone the environments to build thirdparty code, we don't get an explicit dependency on the build objects produced by that environment. So when we update thirdparty code, Godot code using it is not necessarily rebuilt (I think it is for changed headers, but not for changed .c/.cpp files), which can lead to an invalid compilation output (linking old Godot .o files with a newer, potentially ABI breaking version of thirdparty code). This was only seen as really problematic with bullet updates (leading to crashes when rebuilding Godot after a bullet update without cleaning .o files), but it's safer to fix it everywhere, even if it's a LOT of hacky boilerplate.
* Reorganized core/ directory, it was too fatty alreadyreduz2020-11-071-1/+1
| | | | | | -Removed FuncRef, since Callable makes it obsolete -Removed int_types.h as its obsolete in c++11+ -Changed color names code
* Style: Enforce braces around if blocks and loopsRémi Verschelde2020-05-141-2/+3
| | | | | Using clang-tidy's `readability-braces-around-statements`. https://clang.llvm.org/extra/clang-tidy/checks/readability-braces-around-statements.html
* Style: clang-format: Disable KeepEmptyLinesAtTheStartOfBlocksRémi Verschelde2020-05-143-10/+0
| | | | | | | | | | | | | | Which means that reduz' beloved style which we all became used to will now be changed automatically to remove the first empty line. This makes us lean closer to 1TBS (the one true brace style) instead of hybridating it with some Allman-inspired spacing. There's still the case of braces around single-statement blocks that needs to be addressed (but clang-format can't help with that, but clang-tidy may if we agree about it). Part of #33027.
* Enforce use of bool literals instead of integersRémi Verschelde2020-05-141-1/+1
| | | | | Using clang-tidy's `modernize-use-bool-literals`. https://clang.llvm.org/extra/clang-tidy/checks/modernize-use-bool-literals.html
* Replace NULL with nullptrlupoDharkael2020-04-022-6/+6
|
* SCons: Format buildsystem files with psf/blackRémi Verschelde2020-03-302-3/+4
| | | | | | | | | | | | | | | | | | | | | Configured for a max line length of 120 characters. psf/black is very opinionated and purposely doesn't leave much room for configuration. The output is mostly OK so that should be fine for us, but some things worth noting: - Manually wrapped strings will be reflowed, so by using a line length of 120 for the sake of preserving readability for our long command calls, it also means that some manually wrapped strings are back on the same line and should be manually merged again. - Code generators using string concatenation extensively look awful, since black puts each operand on a single line. We need to refactor these generators to use more pythonic string formatting, for which many options are available (`%`, `format` or f-strings). - CI checks and a pre-commit hook will be added to ensure that future buildsystem changes are well-formatted.
* Adding missing include guards to header files identified by LGTM.Rajat Goswami2020-03-231-0/+5
| | | | This addresses the issue godotengine/godot#37143
* PoolVector is gone, replaced by VectorJuan Linietsky2020-02-181-26/+23
| | | | | Typed `PoolTypeArray` types are now renamed `PackedTypeArray` and are sugar for `Vector<Type>`.
* Update copyright statements to 2020Rémi Verschelde2020-01-014-8/+8
| | | | | | | | | | | Happy new year to the wonderful Godot community! We're starting a new decade with a well-established, non-profit, free and open source game engine, and tons of further improvements in the pipeline from hundreds of contributors. Godot will keep getting better, and we're looking forward to all the games that the community will keep developing and releasing with it.
* Replace last occurrences of 'ERR_EXPLAIN' with 'ERR_FAIL_*_MSG'Rémi Verschelde2019-08-171-5/+2
| | | | | | | | | | The last remaining ERR_EXPLAIN call is in FreeType code and makes sense as is (conditionally defines the error message). There are a few ERR_EXPLAINC calls for C-strings where String is not included which can stay as is to avoid adding additional _MSGC macros just for that. Part of #31244.
* Remove redundant author doc commentsIAmActuallyCthulhu2019-08-121-3/+0
|
* Replace 'ERR_EXPLAIN' with 'ERR_FAIL_*_MSG' in rest of 'modules/'Robin Hübner2019-08-121-2/+1
|
* Added release function to PoolVector::Access.Ibrahn Sahir2019-07-061-5/+3
| | | | | | For clarity, assign-to-release idiom for PoolVector::Read/Write replaced with a function call. Existing uses replaced (or removed if already handled by scope)
* SCons: Always use env.Prepend for CPPPATHRémi Verschelde2019-04-301-1/+1
| | | | | | Include paths are processed from left to right, so we use Prepend to ensure that paths to bundled thirdparty files will have precedence over system paths (e.g. `/usr/include` should have lowest priority).
* libwebp: Sync with upstream 1.0.2Rémi Verschelde2019-03-041-3/+4
|
* Update copyright statements to 2019Rémi Verschelde2019-01-014-8/+8
| | | | Happy new year to the wonderful Godot community!
* Update libwebp to 1.0.1volzhs2018-12-101-2/+0
|
* SCons: Build thirdparty code in own env, disable warningsRémi Verschelde2018-09-281-1/+4
| | | | | Also remove unnecessary `Export('env')` in other SCsubs, Export should only be used when exporting *new* objects.
* Make core/ includes absolute, remove subfolders from include pathRémi Verschelde2018-09-122-4/+4
| | | | | | This allows more consistency in the manner we include core headers, where previously there would be a mix of absolute, relative and include path-dependent includes.
* Add webp buffer loader for Imagegeequlim2018-07-171-29/+38
| | | | | Cleanup the code memory load related code for Image Fix jpeg buff load function always returns OK event failed
* SCons: Pass env to modules can_build methodRémi Verschelde2018-05-301-1/+1
| | | | | | This allows to disable modules based on the environment, in particular `env[tools]` which tells us if we are building the editor or not.
* Update libwebp to 1.0.0volzhs2018-05-161-0/+2
|
* Add missing copyright headers and fix formattingRémi Verschelde2018-01-054-0/+4
| | | | | | Using `misc/scripts/fix_headers.py` on all Godot files. Some missing header guards were added, and the header inclusion order was fixed in the Bullet module.
* Update copyright statements to 2018Rémi Verschelde2018-01-014-8/+8
| | | | Happy new year to the wonderful Godot community!
* Update libwebp to 0.6.1volzhs2017-12-121-5/+6
| | | | | | | * lossless performance and compression improvements + a new 'cruncher' mode (-m 6 -q 100) * ARM performance improvements with clang (15-20% w/ndk r15c) * webp-js: emscripten/webassembly based javascript decoder * miscellaneous bug & build fixes
* doc: Make all module docs self-containedRémi Verschelde2017-11-151-2/+0
|
* Use BoolVariable for third-party options.Elliott Sales de Andrade2017-09-251-1/+1
|
* Use HTTPS URL for Godot's website in the headersRémi Verschelde2017-08-274-4/+4
|
* Added support for SVGDaniel J. Ramirez2017-08-202-2/+2
|
* Several fixes related to PBR and EnvironmentJuan Linietsky2017-05-302-2/+2
|
* Removal of Image from Variant, converted to a Resource.Juan Linietsky2017-05-172-18/+19
|
* Fix property warnings and hide some debug printsRémi Verschelde2017-04-231-3/+7
| | | | | | | | | | "ALL IS GOOD" was a lie. In particular, removes verbose "path not recognized" false positive. The actual logic is to (somewhat naively) check all ResourceFormatLoaders and to pick the first good match, so no need to warn about the formats that do not match the type hint.
* Add "Godot Engine contributors" copyright lineRémi Verschelde2017-04-084-0/+4
|
* A Whole New World (clang-format edition)Rémi Verschelde2017-03-053-65/+50
| | | | | | | | | | | | | | | | | | | | | | | | I can show you the code Pretty, with proper whitespace Tell me, coder, now when did You last write readable code? I can open your eyes Make you see your bad indent Force you to respect the style The core devs agreed upon A whole new world A new fantastic code format A de facto standard With some sugar Enforced with clang-format A whole new world A dazzling style we all dreamed of And when we read it through It's crystal clear That now we're in a whole new world of code
* Update libwebp to 0.6.0volzhs2017-02-171-89/+99
|
* Memory pool vectors (DVector) have been enormously simplified in code, and ↵Juan Linietsky2017-01-071-21/+21
| | | | renamed to PoolVector
* Merge remote-tracking branch 'origin/gles3' into gles3-on-masterRémi Verschelde2017-01-021-5/+5
| | | | | Various merge conflicts have been fixed manually and some mistakes might have been made - time will tell :)