libwebp
Bullet
libwebp | Bullet | |
---|---|---|
13 | 41 | |
1,913 | 11,942 | |
0.9% | 1.2% | |
8.8 | 4.5 | |
4 days ago | 22 days ago | |
C | C++ | |
BSD 3-clause "New" or "Revised" License | GNU General Public License v3.0 or later |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
libwebp
-
Google assigns a CVE for libwebp and gives it a 10.0 score
The thing that concerns me most is looking at the fix it is very difficult to see why this fix is correct. It also appears as there is lots of code without explicit bounds checks. It makes me worried because while the logic may be safe this makes the logic very complex. I wonder what the cost would be to add an explicit, local bounds check at every array access. This would serve as a backup that is much easier to verify. I suspect the cost would be relatively small. Small enough that I personally would be happy to pay it.
https://github.com/webmproject/libwebp/commit/902bc919033134...
This is also a great reminded that fuzzing isn't a solution to memory unsafe languages and libraries. If anything the massive amount of bugs found via fuzzing should scare us as it is likely only scratching the surface of the vulnerabilities that still lie in the code, a couple too many branches away from being likely to be found by fuzzing.
-
The WebP 0day
There's a follow-up fix, according to Debian[0]: https://github.com/webmproject/libwebp/commit/95ea5226c87044...
[0]: https://security-tracker.debian.org/tracker/CVE-2023-4863
-
CVE-2023-4863: Heap buffer overflow in WebP (Chrome)
The breakage [0] was introduced by the creator [1] of the project. If you want to audit 1674 commits over the past 12 years, it'd be easier to just audit the full project.
[0] https://github.com/webmproject/libwebp/commit/21735e06f7c1cb...
[1] https://github.com/webmproject/libwebp/commit/c3f41cb47e5f32...
- Convenient CPU feature detection and dispatch in the Magnum Engine
-
Whats going on with .webp and why are more and more internet images being converted to it?
If you like the command line, then you can use ffmpeg and ImageMagick, or use libwebp directly
-
What's up with people hating WebP?
The webp parser code is open source. Which means that even if Google decides to hide/obscure the code for webp, they'd legally not be allowed to prevent you from using older versions of the webp parser library. The only thing they could do is patent it, and then companies in the US (which has software patents, unfortunately) would have to pay royalties to decode it anyway; but here comes the next point
Bullet
-
Blaze: A High Performance C++ Math library
For typical game physics engines... not that much. Math libraries like Eigen or Blaze use lots of template metaprogramming techniques under the hood that can help when you're doing large batched matrix multiplications (since it can remove temporary allocations at compile-time and can also fuse operations efficiently, as well as applying various SIMD optimizations), but it doesn't really help when you need lots of small operations (with mat3 / mat4 / vec3 / quat / etc.). Typical game physics engines tend to use iterative algorithms for their solvers (Gauss-Seidel, PBD, etc...) instead of batched "matrix"-oriented ones, so you'll get less benefits out of Eigen / Blaze compared to what you typically see in deep learning / scientific computing workloads.
The codebases I've seen in many game physics engines seem to all roll their own math libraries for these stuff, or even just use SIMD (SSE / AVX) intrinsics directly. Examples: PhysX (https://github.com/NVIDIA-Omniverse/PhysX), Box2D (https://github.com/erincatto/box2d), Bullet (https://github.com/bulletphysics/bullet3)...
- Looking for specific pre-Microsoft Havok Physics SDK version (2013, 2014)
- Software for Mechanism Analysis
-
Does anyone know any good open source project to optimize?
I suspect most C++ physics libraries like Box2D (https://github.com/erincatto/box2d) or Bullet3 (https://github.com/bulletphysics/bullet3) could really benefit a lot from SIMD.
- After months of work, I'm excited to share the first release of Godot Jolt, an extension that integrates the Jolt physics engine into Godot, demonstrated using GDQuest's RoboBlast
-
X4's Upcoming Multiplayer Features Are a Huge Step Forward
No, they replaced Bullet with Jolt. That is considerably more than "some adjustment", regardless of what you think of the result.
-
Brick Breaker
Vulkan graphics via Intel GVK, and physics via Bullet
-
Ive been programming for four years and I told my dad to watch long videos and complete your own projects to learn most efficiently. He thinks he’s ready to tackle any project after a ten minute video…
The first two have a bunch of great examples, and I’m tying them together by refactoring some of the THREE examples to fit the ECS paradigm defined in AFrame. then upping the ante by adding physics using AMMO, which is more challenging since it’s only a partial implementation of Bullet, and already poorly documented (yet popular) physics engine.
-
Their music is just too good
Plus, SM uses a system called bullet physics, I imagine this would be rather complex to rework into a modern engine such as Unreal or Unity (after all, the majority of performance issues come from the physics engine rather than the graphics engine)
-
Is anyone working on more effecient HDT-SMP?
The physics in HDT-SMP are actually being calculated outside of Skyrim's engine with Bullet, an open-source physics engine. So this isn't some limitation of Skyrim's engine.
What are some alternatives?
libjpeg-turbo - Main libjpeg-turbo repository
PhysX - NVIDIA PhysX SDK
Save-webP-as-extension - Firefox extension to overlay format and JPEG quality buttons on inline or stand-alone images for quickly saving a converted version of the image.
Box2D - Box2D is a 2D physics engine for games
BrowserBoxPro - :cyclone: BrowserBox is Web application virtualization via zero trust remote browser isolation and secure document gateway technology. Embed secure unrestricted webviews on any device in a regular webpage. Multiplayer embeddable browsers, open source! [Moved to: https://github.com/BrowserBox/BrowserBox]
CHRONO - High-performance C++ library for multiphysics and multibody dynamics simulations
image - [mirror] Go supplementary image libraries
Newton Dynamics - Newton Dynamics is an integrated solution for real time simulation of physics environments.
libavif - libavif - Library for encoding and decoding .avif files
ODE
Electron - :electron: Build cross-platform desktop apps with JavaScript, HTML, and CSS
mujoco - Multi-Joint dynamics with Contact. A general purpose physics simulator.