{"repo":"janhohenheim/avian_pickup","free":true,"listed":false,"github":"https://github.com/janhohenheim/avian_pickup","clone":"git clone https://github.com/janhohenheim/avian_pickup.git","description":"A plugin for implementing picking up dynamic rigid bodies in Avian physics for the Bevy engine. Modeled after Half Life 2's gravity gun.","language":"Rust","stars":50,"topics":["avian","bevy","half-life-2","physics"],"license":"Apache-2.0","category":"game-templates","readme_excerpt":"Avian Pickup A plugin for implementing picking up dynamic rigid bodies in Avian physics for the Bevy engine. Modeled after Half Life 2's gravity gun. Examples examples/play catch.rs : Features - Pick up nearby dynamic rigid bodies. - Pull far away ones towards you. - Throw them around or drop them gently. - Manipulate them while holding them, a bit like how the physics gun in Garry's Mod works. - Nearly everything is configurable. Lots of knobs to turn, if you feel like it! - The default configuration is set up to emulate picking things up with your hands. - Can very easily be configured to emulate a gravity gun or a tractor beam. - Scheduled in fixed updates for deterministic physics. - Parts of the plugin use randomness, which can be overridden by a user-provided Rng . - Messages keep you informed about what's happening so you can react with sound effects, particles, etc. - Works for the player and AI alike. - Input is done with messages, so you can provide your own input system. - I think the documentation is alright :) Limitations - Since the physics are running only in fixed updates but are also right in front of the camera, which should run in a variable update, you need some sort of interpolation to make it look good. Fortunately, Avian has a built-in solution that only requires you to attach TransformInterpolation to your props! - Only a single object can be picked up per actor at a time. - An object cannot be pulled away while it is being held by someone else. - Only","default_branch":null,"files":null,"tree":[],"storefront":"/r/janhohenheim","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/janhohenheim/avian_pickup/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}