Bullet
zlib-ng
Bullet | zlib-ng | |
---|---|---|
41 | 13 | |
11,907 | 1,445 | |
0.9% | 1.2% | |
4.5 | 9.3 | |
21 days ago | 9 days ago | |
C++ | C | |
GNU General Public License v3.0 or later | zlib License |
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.
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.
zlib-ng
-
Show HN: Pzip- blazing fast concurrent zip archiver and extractor
Please note that allowing for 2% bigger resulting file could mean huge speedup in these circumstances even with the same compression routines, seeing these benchmarks of zlib and zlib-ng for different compression levels:
https://github.com/zlib-ng/zlib-ng/discussions/871
IMO the fair comparison of the real speed improvement brought by a new program is only between the almost identical resulting compressed sizes.
- Intel QuickAssist Technology Zstandard Plugin for Zstandard
-
Introducing zune-inflate: The fastest Rust implementation of gzip/Zlib/DEFLATE
It is much faster than miniz_oxide and all other safe-Rust implementations, and consistently beats even Zlib. The performance is roughly on par with zlib-ng - sometimes faster, sometimes slower. It is not (yet) as fast as the original libdeflate in C.
-
Zlib Critical Vulnerability
Zlib-ng doesn't contain the same code, but it appears that their equivalent inflate() when used with their inflateGetHeader() implementation was affected by a similar problem: https://github.com/zlib-ng/zlib-ng/pull/1328
Also similarly, most client code will be unaffected because `state->head` will be NULL, because they (most client code) won't have used inflateGetHeader() at all.
-
Git’s database internals II: commit history queries
I wonder if zlib-ng would make a difference, since it has a lot of optimizations for modern hardware.
https://github.com/zlib-ng/zlib-ng/discussions/871
-
Computing Adler32 Checksums at 41 GB/s
zlib-ng also has adler32 implementations optimized for various architectures: https://github.com/zlib-ng/zlib-ng
Might be interesting to benchmark their implementation too to see how it compares.
-
Convenient CPU feature detection and dispatch in the Magnum Engine
zlib-ng: https://github.com/zlib-ng/zlib-ng/blob/develop/functable.c
-
games-emulation/dolphin-9999 is failing to build because devs switched to minizip-ng and zlib uses minizip. I'm not sure how to get it to build now, details in post.
(2) There are many packages that rely upon zlib and minizip and switching those underlying dependencies is easier said than done. We can't drop zlib completely and switch: "The idea of zlib-ng is not to replace zlib, but to co-exist as a drop-in replacement with a lower threshold for code change." - https://github.com/zlib-ng/zlib-ng
-
Re: Zlib memory corruption on deflate (i.e. compress)
There are already active zlib forks (e.g. https://github.com/zlib-ng/zlib-ng), the problem is with having people move to them. It takes a lot of effort to move mindshare from the original version to a fork, there's some historical examples of it happening, but not a ton.
What are some alternatives?
PhysX - NVIDIA PhysX SDK
zstd - Zstandard - Fast real-time compression algorithm
Box2D - Box2D is a 2D physics engine for games
ZLib - A massively spiffy yet delicately unobtrusive compression library.
CHRONO - High-performance C++ library for multiphysics and multibody dynamics simulations
Minizip-ng - Fork of the popular zip manipulation library found in the zlib distribution.
Newton Dynamics - Newton Dynamics is an integrated solution for real time simulation of physics environments.
libdeflate - Heavily optimized library for DEFLATE/zlib/gzip compression and decompression
ODE
brotli - Brotli compression format
mujoco - Multi-Joint dynamics with Contact. A general purpose physics simulator.
uzlib - Radically unbloated DEFLATE/zlib/gzip compression/decompression library. Can decompress any gzip/zlib data, and offers simplified compressor which produces gzip-compatible output, while requiring much less resources (and providing less compression ratio of course).