• The Garry's Mod VPhysics Replacement Project
    757 replies, posted
This project is meant to replace Valve's closed source physics system with [URL="http://bulletphysics.org/wordpress/"]bullet physics[/URL]. It was originally started by [URL="http://www.facepunch.com/member.php?u=13155"]Jcw87[/URL] after Garry suggested a replacement in another thread. [URL="http://www.facepunch.com/showthread.php?t=1178143"]The original thread[/URL] [B]Media:[/B] Vehicle demonstration: [vid]http://puu.sh/8idL6.webm[/vid] Physgun demonstration: [vid]http://puu.sh/8idQm.webm[/vid] Player collision demonstration: [vid]http://puu.sh/8idUq.webm[/vid] Lots of barrels: [vid]http://puu.sh/8idX8.webm[/vid] [B]Things that have changed since the original: [/B]- Shadow controllers rotate props properly (that means the physgun is fixed) - You can interact with props such as pushing them. - Vehicles have been mostly implemented ([del]handling[/del] and airboats have not been implemented yet). - Concave props work correctly. - Some surface properties are implemented. - Multithreading (partially works, only in collision detection not constraint solving) - All constraints implemented (except for pulley constraint) - New collision shapes (cylinders/cones/spheres) - Too many things for me to remember. [B]Things that still don't work since the original: [/B]- Most physics event callbacks [B]Things we will be doing in the future:[/B] - Exposing new interfaces and functionality. [B]Note:[/B] Although Garry moved this thread to the Gamemodes & Addons subforum, this is NOT a lua module. [B]Precompiled Builds:[/B] [URL="http://www.facepunch.com/member.php?u=116165"]Gran PC[/URL] has set this up at [URL="http://peniscorp.com/vphysics/index.lua"]http://peniscorp.com/vphysics/[/URL] ([URL="https://dl.dropboxusercontent.com/u/5619434/Development/muyphysics.zip"]alternative link[/URL] if this is down) [highlight]Note: This thread isn't meant to talk about GTA IV or anything off topic. The old topic was constantly being derailed, which put me off from making this thread.[/highlight] The project is available at [URL]https://github.com/DrChat/Gmod-vphysics[/URL] [B]Developers:[/B] No prerequisites! Just remember to setup the git submodules (explained in the [URL="https://github.com/DrChat/Gmod-vphysics/blob/master/README.md"]readme[/URL]). [B]FAQ[/B]: [B]Q[/B]: How do I install this? [B]A[/B]: Pretty simple! Copy vphysics.dll into the engine bin directory (for GMod this is steamapps/common/GarrysMod/bin). If you're in the right directory, there will already be one there which is valve's vphysics. You can either overwrite this or back it up (I recommend backing it up) and copy the new one in. gmsv_vphysics_win32.dll is a GMod-specific Lua module that exposes new features to Lua developers. To install, copy this to GarrysMod/garrysmod/lua/bin. [B]Q[/B]: Can I use vphysics on games other than Garry's Mod? [B]A[/B]: Absolutely! VPhysics should work on any source engine game, but be advised: it's only tested on Garry's Mod. [B]Q[/B]: Is there a chance I could be VAC banned for having VPhysics installed while I play on a multiplayer game? [B]A[/B]: No. VPhysics will not trigger VAC (I've accidentally connected to servers with VPhysics installed more than once, and I haven't been VAC'd yet.) [B]Q[/B]: Do clients also have to have vphysics installed? [B]A[/B]: Nope! Source engine clients don't predict the motion of physics objects or other physics entities. The only thing predicted is the interactions between players and physics objects, but it's too minor of a difference to justify requiring clients to install VPhysics. However, depending on how things go, in the future this may become a requirement due to new features I may or may not add. [B]Q[/B]: How can I take advantage of newer VPhysics features? [B]A[/B]: In Garry's Mod, I've bundled a Lua module with VPhysics (gmsv_vphysics_win32.dll). There isn't any documentation however, instead you'll have to look at the [URL="https://github.com/DrChat/Gmod-vphysics/tree/master/GMVPhy"]source code[/URL]. For other source mods, VPhysics has an updated interface which is included. You can see GMVPhy for examples of usage.
holy shit this thing is alive! awesome!
Back from the dead I see.
Very impressive!
[B]Update:[/B] Gran PC has provided us with automated builds at [URL]http://peniscorp.com/vphysics/index.lua[/URL] Be sure to thank him.
Sorry to ask, but since I'm really interested in the outcome of this project and since no one posted here for 3 weeks, is there any updates? I see builds from 20/02/2013 on Gran PC's website, so I wondered... Thank you for picking up the project, I wish I could help with it, but my programming skills are not that good...
There have been updates, I haven't been updating this thread because it has become apparent to me that this isn't receiving enough attention to deserve a thread. Instead, I'm posting updates in the WAYWO.
Just because people don't post doesn't mean they're not interested, anyhow, keep up this amazing work!
In the next update I'll try to add a way to load this without all the messing around.
Just put the .dll in the garrysmod/lua/bin to install?
[QUOTE=James0roll;39770331]Just put the .dll in the garrysmod/lua/bin to install?[/QUOTE] Sorry, it's not as simple as that. It has to be copied to the engine's modules directory and steam has to be configured not to overwrite it.
[QUOTE=Grayman;39772410]Sorry, it's not as simple as that. It has to be copied to the engine's modules directory and steam has to be configured not to overwrite it.[/QUOTE] Oh alright, didn't know. Not use to using modules so I wasn't aware of that. Good thing I know now though. :)
[QUOTE=garry;39770041]In the next update I'll try to add a way to load this without all the messing around.[/QUOTE] garrysmod/bin/vphysics-3rdparty.dll boolean convar phys_usethirdparty Would that be good?
[QUOTE=lavacano;39866834]garrysmod/bin/vphysics-3rdparty.dll boolean convar phys_usethirdparty Would that be good?[/QUOTE] maybe a convar that specifies the name of the dll to use?
[QUOTE=lavacano;39866834]garrysmod/bin/vphysics-3rdparty.dll boolean convar phys_usethirdparty Would that be good?[/QUOTE] [QUOTE=ash47;39874369]maybe a convar that specifies the name of the dll to use?[/QUOTE] I doubt these will work due to the fact that vphysics is loaded when the game starts. Maybe a command line parameter?
I really wanted to see this take off and be a viable alternative. vphysics on linux seriously sucks ass and valve even left it horribly broken for over 2 years at one point.
[QUOTE=slayer3032;39882211]I really wanted to see this take off and be a viable alternative. vphysics on linux seriously sucks ass and valve even left it horribly broken for over 2 years at one point.[/QUOTE] I'd like to see if it's fixed in source 2.0 :D
It'd be really nice if I could get some developers to hop on this project and help. You don't even have to ask me to add you to a list of collaborators, just fork the github project and use pull requests.
[QUOTE=garry;39770041]In the next update I'll try to add a way to load this without all the messing around.[/QUOTE] So garry, was this added with the 160 update?
Good news: Bullet 3.x is going to be out soon, apparently with new parallel solvers and dispatchers. Hopefully we can start using it ourselves, and maybe enable multithreading. [URL="http://bulletphysics.org/wordpress/"]http://bulletphysics.org/wordpress/[/URL]
[QUOTE=Grayman;40208365]Good news: Bullet 3.x is going to be out soon, apparently with new parallel solvers and dispatchers. Hopefully we can start using it ourselves, and maybe enable multithreading. [URL="http://bulletphysics.org/wordpress/"]http://bulletphysics.org/wordpress/[/URL][/QUOTE] Thats great to hear! Also thanks for taking on the Bullet physics project, at the rate its going, it should be fully functional in no time at all!
[QUOTE=Grayman;39375375]-snip-[/QUOTE]This [b]sounds[/b] great but all the videos are actually download links with video tags, can you upload them to youtube please?
When some npc's are spawned, and it seemed to happen more on slopes, their bounding box would be raised up a couple feet, but still be the same size as the new. It didn't affect collision and it snapped back after I grabbed it with the physical gun. Also, just a question grayman, I know its hard to answer, but do you plan on taking this project to the end? I mean I know stuff can pile up and you don't have time to work on something, but completing this would have huge rewards, and you would be known forever as the person who implemented bullet into GMod. For some reason it thinks I'm on an ipad..
[QUOTE=ricky23;40217764]Also, just a question grayman, I know its hard to answer, but do you plan on taking this project to the end? I mean I know stuff can pile up and you don't have time to work on something, but completing this would have huge rewards, and you would be known forever as the person who implemented bullet into GMod.[/QUOTE] I'm not planning on stopping development for the foreseeable future, but this project isn't going to be done soon if I'm the only one working on it. [QUOTE=ozzypozzy;40217327]This [b]sounds[/b] great but all the videos are actually download links with video tags, can you upload them to youtube please?[/QUOTE] I'm not sure what you mean. There's only one teaser video on the bullet site for 3.x as of now.
[QUOTE=Grayman;40217830]I'm not planning on stopping development for the foreseeable future, but this project isn't going to be done soon if I'm the only one working on it. I'm not sure what you mean. There's only one teaser video on the bullet site for 3.x as of now.[/QUOTE] I haven't been making a lot of sense all day lol. Maybe it's because I'm on my work computer.
[QUOTE=ozzypozzy;40218573]I haven't been making a lot of sense all day lol. Maybe it's because I'm on my work computer.[/QUOTE] Off topic: It's puu.sh video... which requires HTML5 On topic: Wow this looks awesome, nice work. I might go check out the SVN and possibly help a bit.
Do you think you will be able to do something like dynamic destruction?
Will the V-physics support adding different type of car physics to the same ray-cast models we already have? Something NFS style and not the sticky as hell slow cars source has.
I just saw this thread and I am so glad that this is back from the dead. Good luck on this, looks amazing so far.
[QUOTE=A_Pigeon;40225424]Will the V-physics support adding different type of car physics to the same ray-cast models we already have? Something NFS style and not the sticky as hell slow cars source has.[/QUOTE] I am exposing new functions on vehicle controllers, which will give the game more control over handling, etc. However, Garry or any mod developers who use this will have to implement them manually.
Sorry, you need to Log In to post a reply to this thread.