Woo, fixed the vehicles restarting their sounds.
Turns out there was an issue with the physics KeyParser::ParseCustom dealing with the fact that I was recursing before calling ParseKeyValue.
I hope this is the last fix dealing with the keyparser for now!
Looks like pimpedupride is going to come in an even more pimped up version in vphysics!
[vid]http://puu.sh/8ijYV.webm[/vid]
P.S: I've updated all of the old videos in the OP with newer high quality ones.
Hey Grayman, wish I'd have more time to test the physics out. 3 weeks of school left for me!
It's looking good though :D
Hey Grayman, is the body portion of it fixed? On servers, the vphysics cause crashes and I want to know if this is useful for Gmod MP servers yet? I noticed it says it doesn't require clientside.
[QUOTE=xthenarwhalx;44619729]Hey Grayman, is the body portion of it fixed? On servers, the vphysics cause crashes and I want to know if this is useful for Gmod MP servers yet? I noticed it says it doesn't require clientside.[/QUOTE]
I'm guessing you're referring to the infamous ragdoll crash in valve's vphysics.
Mine doesn't crash, but ragdolls aren't solidly implemented (they act really weird). You can spawn some ragdolls and see how they behave in my vphysics.
Also, I should mention: many maps weren't built to handle the overly rigid constraints that my vphysics has, so that might be a HUGE source of lag because they'll start spazzing out.
Is this usable on game servers to assist with the crashes or would it not help at all? I run TTT and hope this might help.
[QUOTE=Grayman;44622686]
Also, I should mention: many maps weren't built to handle the overly rigid constraints that my vphysics has, so that might be a HUGE source of lag because they'll start spazzing out.[/QUOTE]
Expand upon this further please.
Why would a map have constraints?
Why would said constraints start spazzing out?
Don't the rigid constraints mean it won't spaz out?
[QUOTE=TGiFallen;44628284]Expand upon this further please.
Why would a map have constraints?
Why would said constraints start spazzing out?
Don't the rigid constraints mean it won't spaz out?[/QUOTE]
Some maps have objects constrained to static objects (for example the physics puzzles in HL2).
They spaz out because the level designers placed the objects in a way where they penetrate with the world. In IVP this wasn't a problem because constraints are sort of weak and can tolerate invalid states, but bullet's constraints are pretty solid.
So, every frame the constraint tries to move the objects into a valid position (which happens to be in the world), and the contact constraints will try to separate the objects.
[QUOTE=xthenarwhalx;44628266]Is this usable on game servers to assist with the crashes or would it not help at all? I run TTT and hope this might help.[/QUOTE]
See the reply right above your post.
Sorry, I'm alittle stupid, anyway, Darn it, sad to hear that. Really needing a fix for that stupid crash issue.
I figure an update would be good: I've fixed the positions of the ragdoll constraints so the bones rotate around the correct points, but the 6 dof constraint internally uses Euler angles to solve error on all axes.
The fun part about that last fact is if the y-axis is the only free axis and the offset on it is +/-90 degrees, the whole constraint freaks out. I'm gonna have fun fixing this one (and this fix may benefit other people that use bullet as well).
Euler angles: The worst of them all.
Just when I thought this was dead! Amazing work guys, I'll try to get a donation in... at least something.
[QUOTE=KD007;44657912]Just when I thought this was dead! Amazing work guys, I'll try to get a donation in... at least something.[/QUOTE]
I recommend checking [url]http://peniscorp.com/vphysics/index.lua[/url] often. He uploads some builds a week, this is fully alive and kicking. :wink:
[QUOTE=kimr120;44658945]I recommend checking [url]http://peniscorp.com/vphysics/index.lua[/url] often. He uploads some builds a week, this is fully alive and kicking. :wink:[/QUOTE]
Whats with the website name?
[QUOTE=da space core;44662633]Whats with the website name?[/QUOTE]
Hah, you'd have to ask Gran PC that.
[QUOTE=da space core;44662633]Whats with the website name?[/QUOTE]
Why, is there anything wrong with it?
[QUOTE=da space core;44662633]Whats with the website name?[/QUOTE]
Yeah, what about it?
I'm wondering if there is any news as to how stable is this at the moment. Particularly I'm interested as to it's potential for use in, perhaps not build servers yet, but physics based minigames to allow them to support higher prop counts / player limits (I think...) ?
[QUOTE=thelastpenguin;44710141]I'm wondering if there is any news as to how stable is this at the moment. Particularly I'm interested as to it's potential for use in, perhaps not build servers yet, but physics based minigames to allow them to support higher prop counts / player limits (I think...) ?[/QUOTE]
Like I said, it's pretty stable at the moment (almost no crashes).
[url=http://peniscorp.com/vphysics/]Download[/url] it and try it out.
[code]
btSequentialImpulseConstraintSolver.cpp
../../src/BulletDynamics/ConstraintSolver/btSequentialImpulseConstraintSolver.cpp: In static member function ‘static void btSequentialImpulseConstraintSolver::resolveSplitPenetrationSIMD(btSolverBody&, btSolverBody&, const btSolverConstraint&)’:
../../src/BulletDynamics/ConstraintSolver/btSequentialImpulseConstraintSolver.cpp:276:141: error: cannot convert ‘btVector3’ to ‘__m128 {aka __vector(4) float}’ for argument ‘2’ to ‘__m128 _mm_add_ps(__m128, __m128)’
../../src/BulletDynamics/ConstraintSolver/btSequentialImpulseConstraintSolver.cpp:284:141: error: cannot convert ‘btVector3’ to ‘__m128 {aka __vector(4) float}’ for argument ‘2’ to ‘__m128 _mm_add_ps(__m128, __m128)’
make[1]: *** [obj/Release/BulletDynamics/btSequentialImpulseConstraintSolver.o] Error 1
[/code]
Anyone managed to fix this yet for linux?
[QUOTE=Python1320;44712134][code]
btSequentialImpulseConstraintSolver.cpp
../../src/BulletDynamics/ConstraintSolver/btSequentialImpulseConstraintSolver.cpp: In static member function ‘static void btSequentialImpulseConstraintSolver::resolveSplitPenetrationSIMD(btSolverBody&, btSolverBody&, const btSolverConstraint&)’:
../../src/BulletDynamics/ConstraintSolver/btSequentialImpulseConstraintSolver.cpp:276:141: error: cannot convert ‘btVector3’ to ‘__m128 {aka __vector(4) float}’ for argument ‘2’ to ‘__m128 _mm_add_ps(__m128, __m128)’
../../src/BulletDynamics/ConstraintSolver/btSequentialImpulseConstraintSolver.cpp:284:141: error: cannot convert ‘btVector3’ to ‘__m128 {aka __vector(4) float}’ for argument ‘2’ to ‘__m128 _mm_add_ps(__m128, __m128)’
make[1]: *** [obj/Release/BulletDynamics/btSequentialImpulseConstraintSolver.o] Error 1
[/code]
Anyone managed to fix this yet for linux?[/QUOTE]
Whoops, just committed a fix for that. I don't regularly build for linux so that slipped past me.
I managed to get the linux version compiling but there were errors.
Also haven't managed to get it loading at all, seems to stop the server from booting.
Here is the compile log.
[code]
Building configurations...
Running action 'gmake'...
Generating gmake/Makefile...
Generating gmake/BulletCollision.make...
Generating gmake/BulletDynamics.make...
Generating gmake/BulletMultiThreaded.make...
Generating gmake/BulletSoftBody.make...
Generating gmake/LinearMath.make...
Done.
==== Building BulletCollision (release) ====
Creating ../../../build/lib/linux/release
Creating obj/Release/BulletCollision
btBox2dBox2dCollisionAlgorithm.cpp
btCompoundCollisionAlgorithm.cpp
btConvex2dConvex2dAlgorithm.cpp
btEmptyCollisionAlgorithm.cpp
btBoxBoxDetector.cpp
btUnionFind.cpp
btBoxBoxCollisionAlgorithm.cpp
btConvexConcaveCollisionAlgorithm.cpp
btDefaultCollisionConfiguration.cpp
btSimulationIslandManager.cpp
btCollisionWorld.cpp
btGhostObject.cpp
btActivatingCollisionAlgorithm.cpp
btInternalEdgeUtility.cpp
btSphereTriangleCollisionAlgorithm.cpp
SphereTriangleDetector.cpp
btSphereSphereCollisionAlgorithm.cpp
btSphereBoxCollisionAlgorithm.cpp
btCollisionObject.cpp
btManifoldResult.cpp
btHashedSimplePairCache.cpp
btConvexConvexAlgorithm.cpp
btCompoundCompoundCollisionAlgorithm.cpp
btConvexPlaneCollisionAlgorithm.cpp
btCollisionDispatcher.cpp
btRaycastCallback.cpp
btGjkPairDetector.cpp
btPersistentManifold.cpp
btSubSimplexConvexCast.cpp
btVoronoiSimplexSolver.cpp
btGjkConvexCast.cpp
btContinuousConvexCollision.cpp
btPolyhedralContactClipping.cpp
btGjkEpaPenetrationDepthSolver.cpp
btConvexCast.cpp
btMinkowskiPenetrationDepthSolver.cpp
btGjkEpa2.cpp
btDispatcher.cpp
btDbvtBroadphase.cpp
btBroadphaseProxy.cpp
btMultiSapBroadphase.cpp
btAxisSweep3.cpp
btDbvt.cpp
btCollisionAlgorithm.cpp
btQuantizedBvh.cpp
btSimpleBroadphase.cpp
btOverlappingPairCache.cpp
gim_contact.cpp
btContactProcessing.cpp
btTriangleShapeEx.cpp
btGImpactBvh.cpp
gim_tri_collision.cpp
gim_box_set.cpp
btGImpactShape.cpp
btGImpactCollisionAlgorithm.cpp
btGenericPoolAllocator.cpp
btGImpactQuantizedBvh.cpp
gim_memory.cpp
btTriangleIndexVertexArray.cpp
btEmptyShape.cpp
btBvhTriangleMeshShape.cpp
btUniformScalingShape.cpp
btTriangleBuffer.cpp
btTetrahedronShape.cpp
btHeightfieldTerrainShape.cpp
btMultimaterialTriangleMeshShape.cpp
btTriangleMesh.cpp
btConvexShape.cpp
btConvexTriangleMeshShape.cpp
btStaticPlaneShape.cpp
btConvexPointCloudShape.cpp
btTriangleMeshShape.cpp
btSphereShape.cpp
btConeShape.cpp
btConvexInternalShape.cpp
btBox2dShape.cpp
btStridingMeshInterface.cpp
btTriangleCallback.cpp
btConvexPolyhedron.cpp
btConcaveShape.cpp
btCapsuleShape.cpp
btShapeHull.cpp
btMinkowskiSumShape.cpp
btPolyhedralConvexShape.cpp
btCollisionShape.cpp
btBoxShape.cpp
btScaledBvhTriangleMeshShape.cpp
btCompoundShape.cpp
btOptimizedBvh.cpp
btMultiSphereShape.cpp
btConvexHullShape.cpp
btTriangleIndexVertexMaterialArray.cpp
btCylinderShape.cpp
btConvex2dShape.cpp
Linking BulletCollision
==== Building BulletDynamics (release) ====
Creating obj/Release/BulletDynamics
btRaycastVehicle.cpp
btWheelInfo.cpp
btWheeledVehicle.cpp
btDantzigLCP.cpp
btLemkeAlgorithm.cpp
btMLCPSolver.cpp
Bullet-C-API.cpp
btSimpleDynamicsWorld.cpp
btRigidBody.cpp
btDiscreteDynamicsWorld.cpp
btMultiBodyConstraintSolver.cpp
btMultiBodyPoint2Point.cpp
btMultiBodyConstraint.cpp
btMultiBody.cpp
btMultiBodyJointLimitConstraint.cpp
btMultiBodyJointMotor.cpp
btMultiBodyDynamicsWorld.cpp
btConeTwistConstraint.cpp
btGeneric6DofConstraint.cpp
btUniversalConstraint.cpp
btHingeConstraint.cpp
btFixedConstraint.cpp
btSequentialImpulseConstraintSolver.cpp
btGearConstraint.cpp
btSolve2LinearConstraint.cpp
btTypedConstraint.cpp
btSliderConstraint.cpp
btGeneric6DofSpringConstraint.cpp
btNNCGConstraintSolver.cpp
btHinge2Constraint.cpp
btContactConstraint.cpp
btPoint2PointConstraint.cpp
btKinematicCharacterController.cpp
Linking BulletDynamics
==== Building BulletMultiThreaded (release) ====
Creating obj/Release/BulletMultiThreaded
Win32Threading.cpp
In file included from ../../src/vectormath/vmInclude.h:11:0,
from ../../src/BulletMultiThreaded/PlatformDefinitions.h:16,
from ../../src/BulletMultiThreaded/Win32Threading.cpp:1:
../../src/vectormath/sse/vectormath_aos.h:695:39: warning: inline function ‘const Vectormath::Aos::Vector3 Vectormath::Aos::select(const Vectormath::Aos::Vector3&, const Vectormath::Aos::Vector3&, const Vectormath::boolInVec&)’ used but never defined [enabled by default]
VECTORMATH_FORCE_INLINE const Vector3 select( const Vector3 &vec0, const Vector3 &vec1, const boolInVec &select1 );
^
In file included from ../../src/vectormath/vmInclude.h:11:0,
from ../../src/BulletMultiThreaded/PlatformDefinitions.h:16,
from ../../src/BulletMultiThreaded/Win32Threading.cpp:1:
../../src/vectormath/sse/vectormath_aos.h:1648:36: warning: inline function ‘const Vectormath::Aos::Quat Vectormath::Aos::select(const Vectormath::Aos::Quat&, const Vectormath::Aos::Quat&, const Vectormath::boolInVec&)’ used but never defined [enabled by default]
VECTORMATH_FORCE_INLINE const Quat select( const Quat &quat0, const Quat &quat1, const boolInVec &select1 );
^
btGpu3DGridBroadphase.cpp
btParallelCollisionDispatcher.cpp
btThreadPool.cpp
btParallelConstraintSolver.cpp
In file included from ../../src/vectormath/vmInclude.h:11:0,
from ../../src/BulletMultiThreaded/PlatformDefinitions.h:16,
from ../../src/BulletMultiThreaded/btParallelConstraintSolver.h:22,
from ../../src/BulletMultiThreaded/btParallelConstraintSolver.cpp:18:
../../src/vectormath/sse/vectormath_aos.h:695:39: warning: inline function ‘const Vectormath::Aos::Vector3 Vectormath::Aos::select(const Vectormath::Aos::Vector3&, const Vectormath::Aos::Vector3&, const Vectormath::boolInVec&)’ used but never defined [enabled by default]
VECTORMATH_FORCE_INLINE const Vector3 select( const Vector3 &vec0, const Vector3 &vec1, const boolInVec &select1 );
^
In file included from ../../src/vectormath/vmInclude.h:11:0,
from ../../src/BulletMultiThreaded/PlatformDefinitions.h:16,
from ../../src/BulletMultiThreaded/btParallelConstraintSolver.h:22,
from ../../src/BulletMultiThreaded/btParallelConstraintSolver.cpp:18:
../../src/vectormath/sse/vectormath_aos.h:1648:36: warning: inline function ‘const Vectormath::Aos::Quat Vectormath::Aos::select(const Vectormath::Aos::Quat&, const Vectormath::Aos::Quat&, const Vectormath::boolInVec&)’ used but never defined [enabled by default]
VECTORMATH_FORCE_INLINE const Quat select( const Quat &quat0, const Quat &quat1, const boolInVec &select1 );
^
PosixThreading.cpp
In file included from ../../src/vectormath/vmInclude.h:11:0,
from ../../src/BulletMultiThreaded/PlatformDefinitions.h:16,
from ../../src/BulletMultiThreaded/PosixThreading.cpp:1:
../../src/vectormath/sse/vectormath_aos.h:695:39: warning: inline function ‘const Vectormath::Aos::Vector3 Vectormath::Aos::select(const Vectormath::Aos::Vector3&, const Vectormath::Aos::Vector3&, const Vectormath::boolInVec&)’ used but never defined [enabled by default]
VECTORMATH_FORCE_INLINE const Vector3 select( const Vector3 &vec0, const Vector3 &vec1, const boolInVec &select1 );
^
In file included from ../../src/vectormath/vmInclude.h:11:0,
from ../../src/BulletMultiThreaded/PlatformDefinitions.h:16,
from ../../src/BulletMultiThreaded/PosixThreading.cpp:1:
../../src/vectormath/sse/vectormath_aos.h:1648:36: warning: inline function ‘const Vectormath::Aos::Quat Vectormath::Aos::select(const Vectormath::Aos::Quat&, const Vectormath::Aos::Quat&, const Vectormath::boolInVec&)’ used but never defined [enabled by default]
VECTORMATH_FORCE_INLINE
[QUOTE=BomBom;44716329]I managed to get the linux version compiling but there were errors.
Also haven't managed to get it loading at all, seems to stop the server from booting.
Here is the compile log.
[code]
==== Building BulletMultiThreaded (release) ====
Creating obj/Release/BulletMultiThreaded
Win32Threading.cpp
In file included from ../../src/vectormath/vmInclude.h:11:0,
from ../../src/BulletMultiThreaded/PlatformDefinitions.h:16,
from ../../src/BulletMultiThreaded/Win32Threading.cpp:1:
../../src/vectormath/sse/vectormath_aos.h:695:39: warning: inline function ‘const Vectormath::Aos::Vector3 Vectormath::Aos::select(const Vectormath::Aos::Vector3&, const Vectormath::Aos::Vector3&, const Vectormath::boolInVec&)’ used but never defined [enabled by default]
VECTORMATH_FORCE_INLINE const Vector3 select( const Vector3 &vec0, const Vector3 &vec1, const boolInVec &select1 );
^
In file included from ../../src/vectormath/vmInclude.h:11:0,
from ../../src/BulletMultiThreaded/PlatformDefinitions.h:16,
from ../../src/BulletMultiThreaded/Win32Threading.cpp:1:
../../src/vectormath/sse/vectormath_aos.h:1648:36: warning: inline function ‘const Vectormath::Aos::Quat Vectormath::Aos::select(const Vectormath::Aos::Quat&, const Vectormath::Aos::Quat&, const Vectormath::boolInVec&)’ used but never defined [enabled by default]
VECTORMATH_FORCE_INLINE const Quat select( const Quat &quat0, const Quat &quat1, const boolInVec &select1 );
^
...
In file included from ../../src/vectormath/vmInclude.h:11:0,
from ../../src/BulletMultiThreaded/PlatformDefinitions.h:16,
from ../../src/BulletMultiThreaded/btParallelConstraintSolver.h:22,
from ../../src/BulletMultiThreaded/btParallelConstraintSolver.cpp:18:
../../src/vectormath/sse/vectormath_aos.h:695:39: warning: inline function ‘const Vectormath::Aos::Vector3 Vectormath::Aos::select(const Vectormath::Aos::Vector3&, const Vectormath::Aos::Vector3&, const Vectormath::boolInVec&)’ used but never defined [enabled by default]
VECTORMATH_FORCE_INLINE const Vector3 select( const Vector3 &vec0, const Vector3 &vec1, const boolInVec &select1 );
^
In file included from ../../src/vectormath/vmInclude.h:11:0,
from ../../src/BulletMultiThreaded/PlatformDefinitions.h:16,
from ../../src/BulletMultiThreaded/btParallelConstraintSolver.h:22,
from ../../src/BulletMultiThreaded/btParallelConstraintSolver.cpp:18:
../../src/vectormath/sse/vectormath_aos.h:1648:36: warning: inline function ‘const Vectormath::Aos::Quat Vectormath::Aos::select(const Vectormath::Aos::Quat&, const Vectormath::Aos::Quat&, const Vectormath::boolInVec&)’ used but never defined [enabled by default]
VECTORMATH_FORCE_INLINE const Quat select( const Quat &quat0, const Quat &quat1, const boolInVec &select1 );
^
PosixThreading.cpp
In file included from ../../src/vectormath/vmInclude.h:11:0,
from ../../src/BulletMultiThreaded/PlatformDefinitions.h:16,
from ../../src/BulletMultiThreaded/PosixThreading.cpp:1:
../../src/vectormath/sse/vectormath_aos.h:695:39: warning: inline function ‘const Vectormath::Aos::Vector3 Vectormath::Aos::select(const Vectormath::Aos::Vector3&, const Vectormath::Aos::Vector3&, const Vectormath::boolInVec&)’ used but never defined [enabled by default]
VECTORMATH_FORCE_INLINE const Vector3 select( const Vector3 &vec0, const Vector3 &vec1, const boolInVec &select1 );
^
In file included from ../../src/vectormath/vmInclude.h:11:0,
from ../../src/BulletMultiThreaded/PlatformDefinitions.h:16,
from ../../src/BulletMultiThreaded/PosixThreading.cpp:1:
../../src/vectormath/sse/vectormath_aos.h:1648:36: warning: inline function ‘const Vectormath::Aos::Quat Vectormath::Aos::select(const Vectormath::Aos::Quat&, const Vectormath::Aos::Quat&, const Vectormath::boolInVec&)’ used but never defined [enabled by default]
VECTORMATH_FORCE_INLINE const Quat select( const Quat &quat0, const Quat &quat1, const boolInVec &select1 );
^
Linking BulletMultiThreaded
...
[/code][/QUOTE]
These are all silly compiler warnings not caused by me.
What happens when you try to load the server? I tried srcds earlier today on linux and it worked OK.
Just getting this when the server launches.
[code]
bombom@ubuntu:~/Builder/gmod$ ./srcds_run -console -game garrysmod +maxplayers 8 +map gm_flatgrass
Auto detecting CPU
Using default binary: ./srcds_linux
Server will auto-restart if there is a crash.
AppFramework : Unable to load module vphysics_srv.so!
Add "-debug" to the ./srcds_run command line to generate a debug.log to help with solving this problem
Sat May 3 11:04:57 PDT 2014: Server restart in 10 seconds
[/code]
[QUOTE=BomBom;44717020]Just getting this when the server launches.
[code]
bombom@ubuntu:~/Builder/gmod$ ./srcds_run -console -game garrysmod +maxplayers 8 +map gm_flatgrass
Auto detecting CPU
Using default binary: ./srcds_linux
Server will auto-restart if there is a crash.
AppFramework : Unable to load module vphysics_srv.so!
Add "-debug" to the ./srcds_run command line to generate a debug.log to help with solving this problem
Sat May 3 11:04:57 PDT 2014: Server restart in 10 seconds
[/code][/QUOTE]
See if you can make it spit out more details. Is vphysics_srv.so missing from the engine's bin path? Linker not linking to something properly?
The vphysics_srv.so is inside the engine bin folder, ldd returns this.
[code]
bombom@ubuntu:~/Builder/gmod/bin$ ldd vphysics_srv.so
linux-gate.so.1 => (0xf773a000)
../../gmod/bin/libvstdlib_srv.so (0xf7486000)
../../gmod/bin/libtier0_srv.so (0xf745d000)
libstdc++.so.6 => /usr/lib32/libstdc++.so.6 (0xf735f000)
libm.so.6 => /lib32/libm.so.6 (0xf731c000)
libgcc_s.so.1 => /usr/lib32/libgcc_s.so.1 (0xf72ff000)
libc.so.6 => /lib32/libc.so.6 (0xf714d000)
libtier0_srv.so => not found
libdl.so.2 => /lib32/libdl.so.2 (0xf7148000)
libpthread.so.0 => /lib32/libpthread.so.0 (0xf712d000)
/lib/ld-linux.so.2 (0xf773b000)
librt.so.1 => /lib32/librt.so.1 (0xf7124000)
[/code]
Is there a reason for gmod to have 2 vphysics files?
There is vphysics.so and vphysics_srv.so...
Other source games like TF2, DODS, L4D, L4D2, Portal, Portal2, CSS, CSGO only seem to have vphysics.so, any ideas?
[QUOTE=BomBom;44717157]The vphysics_srv.so is inside the engine bin folder, ldd returns this.
[code]
bombom@ubuntu:~/Builder/gmod/bin$ ldd vphysics_srv.so
linux-gate.so.1 => (0xf773a000)
../../gmod/bin/libvstdlib_srv.so (0xf7486000)
../../gmod/bin/libtier0_srv.so (0xf745d000)
libstdc++.so.6 => /usr/lib32/libstdc++.so.6 (0xf735f000)
libm.so.6 => /lib32/libm.so.6 (0xf731c000)
libgcc_s.so.1 => /usr/lib32/libgcc_s.so.1 (0xf72ff000)
libc.so.6 => /lib32/libc.so.6 (0xf714d000)
libtier0_srv.so => not found
libdl.so.2 => /lib32/libdl.so.2 (0xf7148000)
libpthread.so.0 => /lib32/libpthread.so.0 (0xf712d000)
/lib/ld-linux.so.2 (0xf773b000)
librt.so.1 => /lib32/librt.so.1 (0xf7124000)
[/code]
Is there a reason for gmod to have 2 vphysics files?
There is vphysics.so and vphysics_srv.so...
Other source games like TF2, DODS, L4D, L4D2, Portal, Portal2, CSS, CSGO only seem to have vphysics.so, any ideas?[/QUOTE]
I have no idea, must be some weird valve stuff going on.
vphysics_srv.so is the module that you need to replace.
[QUOTE=BomBom;44717157]The vphysics_srv.so is inside the engine bin folder, ldd returns this.
[code]
bombom@ubuntu:~/Builder/gmod/bin$ ldd vphysics_srv.so
linux-gate.so.1 => (0xf773a000)
../../gmod/bin/libvstdlib_srv.so (0xf7486000)
../../gmod/bin/libtier0_srv.so (0xf745d000)
libstdc++.so.6 => /usr/lib32/libstdc++.so.6 (0xf735f000)
libm.so.6 => /lib32/libm.so.6 (0xf731c000)
libgcc_s.so.1 => /usr/lib32/libgcc_s.so.1 (0xf72ff000)
libc.so.6 => /lib32/libc.so.6 (0xf714d000)
libtier0_srv.so => not found
libdl.so.2 => /lib32/libdl.so.2 (0xf7148000)
libpthread.so.0 => /lib32/libpthread.so.0 (0xf712d000)
/lib/ld-linux.so.2 (0xf773b000)
librt.so.1 => /lib32/librt.so.1 (0xf7124000)
[/code]
Is there a reason for gmod to have 2 vphysics files?
There is vphysics.so and vphysics_srv.so...
Other source games like TF2, DODS, L4D, L4D2, Portal, Portal2, CSS, CSGO only seem to have vphysics.so, any ideas?[/QUOTE]
It's most likely because server owners were asking for Garry to compile with old glibc so it wouldn't break on old operating systems. the vphysics.so is compiled with newer glibc (maybe newer gcc too) and can be removed or replaced with vphysics_srv.so (at least theoretically). It might be that the non _srv versions are meant for gmod client but accidentally slipped to srcds downloads too.
Managed to compile and it doesn't crash at least immediately: [url]http://g3.metastruct.org:20080/vphysics_srv.so[/url]
[editline]4th May 2014[/editline]
Haha, a single combine ball was too much for it. 5 fps.
[QUOTE=Python1320;44719376]Managed to compile and it doesn't crash at least immediately: [url]http://g3.metastruct.org:20080/vphysics_srv.so[/url]
[editline]4th May 2014[/editline]
Haha, a single combine ball was too much for it. 5 fps.[/QUOTE]
Tried both your compile and mine, still not managed to get this working on my ubuntu or debian servers.
[QUOTE=Python1320;44719376]Managed to compile and it doesn't crash at least immediately: [URL]http://g3.metastruct.org:20080/vphysics_srv.so[/URL]
[editline]4th May 2014[/editline]
Haha, a single combine ball was too much for it. 5 fps.[/QUOTE]
Huh, weird. VPhysics has OK performance for me on linux (I haven't ran any benchmarks but it certainly isn't that slow).
[QUOTE=BomBom;44719879]Tried both your compile and mine, still not managed to get this working on my ubuntu or debian servers.[/QUOTE]
Sorry, I don't know what's wrong. I'm not too terribly good at using linux.
Sorry, you need to Log In to post a reply to this thread.