Erwin Coumans
a30ff20e6b
preparation for KUKA IK tracking example
2016-08-30 14:44:11 -07:00
Logan Su
f86ce4d44b
Add flags to load inertia values from URDF.
2016-08-29 15:09:18 -07:00
erwin coumans
4094b9f0df
Disable 'm_robotSim.setNumSimulationSubSteps' because it is not needed at the moment
...
Fix issue in contact/friction between btMultibody and btRigidBody (external force/torque of btRigidBody was not taken into account during contact/friction setup)
Allow 0.1 mm slop in contact, to avoid loosing contact. Todo: allow contacts with positive distance in multibody solver.
2016-08-27 13:44:18 -07:00
yunfeibai
5b9b5178f9
Expose slider constraint in RobotSimAPI.
2016-08-26 10:35:10 -07:00
yunfeibai
758ca025d5
Set physics clock subdivider.
2016-08-24 14:25:06 -07:00
yunfeibai
3b25489d89
Further fix for integration test.
2016-08-24 12:44:24 -07:00
yunfeibai
ecbf94abaa
Fix issues in build test.
2016-08-24 11:31:08 -07:00
yunfeibai
d46710e447
Expose fixed constraint in RobotSimAPI.
2016-08-22 18:14:29 -07:00
YunfeiBai
6751648bce
add some micro-sleep to prevent 100% CPU/memory bus hogging, preventing the graphics thread from making progress.
...
debug draw color black for contact normal
move debug draw option for constraint frames into 'k' key.
2016-08-19 13:58:53 -07:00
erwin coumans
62d5b7c5c0
add single step simulation, using 'o' key. use 'i' key to suspend simulation first
...
default background color a bit darker, to show debug lines
tweaked contact point rendering a bit
2016-08-19 10:30:02 -07:00
erwin coumans
a68c9ca845
avoid MT crash in VR/physics server due to printf from separate thread.
...
add fps display in VR
use 1./240. internal substep for real-time physics sim in VR/physics server for more accurate robotics sim.
2016-08-18 21:43:43 -07:00
Erwin Coumans
91839cb274
revert change of default position control in shared memory api/pybullet
2016-08-18 16:48:14 -07:00
erwin coumans
2c636b52f7
bugfix: in torque control mode, torque index starts at 6.
2016-08-18 15:36:18 -07:00
erwin coumans
5b0253ed47
Remove undesired assert, it makes pybullet mistakes fail in c++
...
Shared memory api/pybullet: by default, set joint motors in position PD mode with target 0, to maintain 0 joint angle.
pybullet: allow setJointControlMode(body, link, POSITION_CONTROL,targetPos etc.
2016-08-18 13:10:28 -07:00
erwin coumans
6005e54aa1
Fix some inconsistencies in URDF file handling between btRigidBody and btMultiBody
...
(rotation order and application of root-inertial-frame offset)
2016-08-18 09:44:33 -07:00
Erwin Coumans
17c16ccfa0
pybullet, deal with overflow of joints (maximum of 128 joints/links per multibody at the moment)
...
increase from 64 to 128 joints in shared memory API/pybullet
fix potential issue in tinyrenderer, related to missing segmentation mask buffer
report error if CMD_REQUEST_ACTUAL_STATE command on a multibody that exceed the number of links,
todo: stream data to allow arbitrary large number of links in shared memory API
2016-08-17 19:35:52 -07:00
Erwin Coumans
7c9441c3f5
by default, have a strong force keep the robot together, instead of floppy joints.
2016-08-17 10:30:50 -07:00
yunfeibai
591f922d97
Support loading Urdf as btRigidBody with RobotSimAPI. Loading Sdf as btRigidBody is work in progress.
2016-08-16 17:56:30 -07:00
yunfeibai
4bc31394a0
Allow choosing loaded as btRigidBody with RobotSimAPI.
2016-08-16 16:57:48 -07:00
erwin coumans
3bdcf23a05
Add sleep to avoid 100% busy CPU loop in PhysicsServerExample
...
Added btClock::usleep
Fix broken TinyRenderer example code.
2016-08-13 12:21:18 -07:00
Erwin Coumans
ceceaa16be
make some changes to make the previous example code changes backward compatible
2016-08-12 14:18:46 -07:00
Erwin Coumans
c75bebcafe
revert accidently renaming of m_depthvalues4
2016-08-12 13:55:37 -07:00
Erwin Coumans
3c30e2f821
add segmentation mask rendering to TinyRenderer and shared memory API
...
similar to the zbuffer, but storing the object index (int) instead of float depth
2016-08-11 14:55:30 -07:00
Erwin Coumans
f416644481
set the camera, even in multi-threaded mode
2016-08-11 11:20:31 -07:00
erwin coumans
a9b1544a9f
Add premake support to build pybullet, Windows and Linux tested, will enable Mac in next commit.
...
Expose inverse dynamics to Bullet shared memory API, through b3CalculateInverseDynamicsCommandInit and
b3GetStatusInverseDynamicsJointForces command/status. See PhysicsClientExeample or pybullet for usage.
Add option for Windows and Linux to set python_lib_dir and python_include_dir for premake and --enable_pybullet option
Expose inverse dynamics to pybullet: [force] = p.calculateInverseDynamics(objectIndex,[q],[qdot],[acc])
Thanks to Jeff Bingham for the suggestion.
2016-08-09 18:40:12 -07:00
Erwin Coumans
b880ddf76b
add pybullet render API with yaw/pitch/roll option
...
add testrender.py file
allow option to enable OpenGL hardware renderer in multithreaded sim
b3RequestCameraImageSelectRenderer(commandHandle,ER_BULLET_HARDWARE_OPENGL);
2016-08-08 14:23:44 -07:00
Erwin Coumans
f304fd7611
add one more pybullet renderImage API and testrender.py example
...
tweak Bullet Inverse Dynamics, work-around compiler issue
2016-08-02 11:12:23 -07:00
Erwin Coumans
93db3d7ba6
fix CMD_INIT_POSE+INIT_POSE_HAS_INITIAL_ORIENTATION,
...
setWorldToBaseRot takes inverse orientation (need to remove that API!)
2016-08-02 09:30:33 -07:00
Erwin Coumans
ab86b66e92
Merge branch 'master' of https://github.com/erwincoumans/bullet3
2016-07-25 17:22:14 -07:00
Erwin Coumans
6b0ceace7f
Merge branch 'master' of https://github.com/erwincoumans/bullet3
2016-07-25 11:49:56 -07:00
Erwin Coumans
a6216f4f24
add robotics learning grasp contact example
...
add wsg50 gripper with modified r2d2 gripper tip
expose a fudge factor to scale inertia, to make grasping more stable
(until we have better grasping contact model/implementation)
2016-07-25 11:48:44 -07:00
erwin coumans
75e86051c2
Add inverse kinematics example with implementations by Sam Buss.
...
Uses Kuka IIWA model description and 4 methods:
Selectively Damped Least Squares,Damped Least Squares,
Jacobi Transpose, Jacobi Pseudo Inverse
Tweak some PD values in Inverse Dynamics example and Robot example.
2016-07-24 22:22:42 -07:00
erwincoumans
e55628c7ac
Merge pull request #708 from matpalm/paramNameFix
...
GetJointInfo used linkIndex param, switched to jointIndex for naming consistency
2016-07-21 17:02:55 -07:00
Mat Kelcey
51ec707230
fix GetJointInfo to use a param called jointIndex (not linkIndex) for naming consistency
2016-07-20 11:01:02 -07:00
erwin coumans
2302709e2d
OpenVR support: track multiple controllers and buttons
2016-07-18 23:13:46 -07:00
erwin coumans
c28cd03fbd
OpenVR controller can pick/drag objects. Instructions, Windows only:
...
Compile using premake+visual studio, and compile App_SharedMemoryPhysics_VR
Compile pybullet using cmake using cmake -DBUILD_PYBULLET=OFF -DCMAKE_BUILD_TYPE=Release ..
Create a symbolic link from c:\python\dlls\pybullet.pyd to C:\develop\bullet3\cmp\lib\Release\pybullet.dll
App_SharedMemoryPhysics_VR
Run Python. Here are some Python lines to get going:
import pybullet as p
p.connect(p.SHARED_MEMORY)
p.loadURDF("cube.urdf")
p.setGravity(0,0,-10)
p.setRealTimeSimulation(1)
Allow real-time simulation in physics server, add pybullet command setRealTimeSimulation to control it
Mesh decimation (reduce number of triangles/vertices) using a Blender modifier for Kuka IIWA and Husky
Disabled the 'glFlush' commands in GLInstancingRenderer.
Add VR controller methods to examples\CommonInterfaces\CommonExampleInterface.h
Use the ANSI version in Windows file/string operations instead of unicode, hope this doesn't break builds.
2016-07-17 23:50:11 -07:00
Erwin Coumans
c54a61b97a
More example code is memory-leak free now, in particular PhysicsServerExample.
...
/PhysicsServerCommandProcessor
also fixed some memory issue in InverseDynamicsExample (the base class is supposed to delete collision shape memory)
2016-07-16 21:29:31 -07:00
Erwin Coumans
589fa376b3
only add compound child shapes to 'allocated' list once
2016-07-16 17:58:06 -07:00
erwincoumans
824c721710
Merge pull request #699 from erwincoumans/master
...
Add kiva_shelf to prepare for picking/grasping task
2016-07-14 10:51:34 -07:00
erwin coumans
4a705d1e03
Add kiva_shelf to prepare for picking/grasping task
...
Fix uninitialized variable jointDamping/jointFriction in SDF importer
Add SDF <pose> parsing in visual, inertial, collision elements.
Slight improvement in TinyRender loading performance of largish meshes (30k vertices)
Reduce #define MAX_SDF_BODIES to 500, due to some issue in client code, todo: figure out what the issue is.
b3RobotSimAPI support SDF file loading
Tiny improvement in OpenGL hardware renderer lighting, to distinguish faces without textures
2016-07-14 00:05:57 -07:00
erwincoumans
31e7f2e309
Merge pull request #697 from matpalm/addFovToRenderImage
...
pybullet renderimage with projection matrix calculated using field of view
2016-07-13 18:46:42 -07:00
erwincoumans
6c856d9fa3
Merge pull request #694 from matpalm/flipDepthImage
...
fix for vertically flipped depth buffer in TinyRenderer::render
2016-07-13 15:56:33 -07:00
Erwin Coumans
10cc6f14cb
add option to use hardware OpenGL renderer for synthetic camera
2016-07-12 18:16:13 -07:00
Mat Kelcey
048c01d7c4
Merge branch 'master' of git://github.com/bulletphysics/bullet3 into addFovToRenderImage
2016-07-12 13:52:25 -07:00
Mat Kelcey
ad18cbafe8
Merge branch 'master' of git://github.com/bulletphysics/bullet3 into flipDepthImage
2016-07-12 13:51:48 -07:00
Mat Kelcey
2466dc155d
fix for vertically flipped depth buffer in TinyRendererVisualShapeConverter::render
2016-07-12 13:46:48 -07:00
erwin coumans
7633cfb800
prepare robotics learning examples, see examples/RoboticsLearning/b3RobotSimAPI.h
...
prepare compliant contact work, urdf loading of parameters (see data/cube.urdf)
2016-07-11 00:26:40 -07:00
erwin coumans
02582e3a78
shrink down cube size of BasicDemo 10 times (it looked ginormous in VR) from 2x2x2 meter to 0.2
...
add test for VR HUD/sub-titles
fix issue in previous commit, partial string use %.8s not %8.s
use long long int in b3Clock
fix warning/error in pointer alignment in serialization
Fix pybullet Windows compilation.
(thanks to bkeys/https://github.com/bulletphysics/bullet3/pull/687 )
2016-07-09 15:09:09 -07:00
Mat Kelcey
54979a0f89
pybullet renderimage with projection matrix calculated using field of view
2016-07-08 15:47:50 -07:00
erwin coumans
60d2b99151
Physics runs in a separate thread from rendering in PhysicsServerExample (preliminary)
...
Improve rendering performance. OpenVR experience is smooth now.
commit needs a bit more testing before pushing in main repo.
2016-07-07 19:24:44 -07:00
erwin coumans
d0f20eafd1
Allow to build PhysicsServer in VR mode, to see the URDF/SDF robots in proper scale in VR.
...
Add option to have Z as up-axis for VR examples.
Add OpenVR LICENSE + README file
Don't crash VR app when no HMD is detected, just exit.
For now, don't request debug lines in client, it slows down physics server in VR mode too much.
2016-07-02 18:53:19 -07:00
Erwin Coumans
013dbda023
implement a few more pybullet methods:
...
pybullet_applyExternalForce, pybullet_applyExternalTorque, pybullet_setTimeStep,
pybullet_resetBasePositionAndOrientation,
pybullet_getQuaternionFromEuler,
pybullet_getEulerFromQuaternion
2016-06-26 18:18:30 -07:00
Erwin Coumans
c17c39c2c9
move PD control from PhysicsServerCommandProcessor into btMultiBodyJointMotor
...
improvements/changes in pybullet API
2016-06-24 11:06:56 -07:00
Erwin Coumans (Google)
6d1948e79e
tweaks in pybullet and shared memory C-API:
...
allow to reset the state of a single joint
allow to set the target/mode for a single joint motor at a time
rename pybullet API: initializeJointPositions -> resetJointState
2016-06-24 07:31:17 -07:00
Erwin Coumans
2cd0eba257
re-introduce old method in pybullet for temporary back-wards compatibility
...
b3JointControlCommandInit requires 3 args, but it was only 2,
use b3JointControlCommandInit2 for now.
2016-06-23 08:40:36 -07:00
Erwin Coumans
8b96e2de3c
a few pybullet tweaks to set desired joint motor targets (pos/vel/torque)
2016-06-22 23:21:47 -07:00
Erwin Coumans
a67df7fd03
fix cmake and premake build systems, after adding texture support in SDF,
...
in a nutshell, add the following two files:
examples/Importers/ImportMeshUtility/b3ImportMeshUtility.cpp
examples/ThirdPartyLibs/stb_image/stb_image.cpp
2016-06-19 17:35:25 -07:00
Erwin Coumans
e3b2b1a969
add texture support in SDF, URDF for both OpenGL and software renderer (TinyRenderer)
2016-06-18 18:02:20 -07:00
erwincoumans
c7365837cd
Merge pull request #661 from erwincoumans/master
...
fix some issues related to controlling a robot/multibody beyond body …
2016-06-17 07:34:07 -07:00
Erwin Coumans
53a0772257
fix some issues related to controlling a robot/multibody beyond body index 0
...
(most testing happened with a single robot/multibody so far)
preliminary pybullet.setJointControl implementation
2016-06-16 18:46:34 -07:00
yunfeibai
1329f265c8
Set view and projection matrices from camera and frustum parameters.
2016-06-16 11:48:37 -07:00
Erwin Coumans
95a09bec99
implement getJointInfo for objects loaded through SDF
2016-06-15 18:01:41 -07:00
Erwin Coumans
456c844a6b
work-in-progress send object/joint information after loading SDF file
2016-06-14 18:41:19 -07:00
Erwin Coumans
566ed87c93
fix a regression in a test
2016-06-13 18:58:52 -07:00
erwincoumans
6523df336e
Fix pybullet Windows build errors: C99 requires variables to be defined at the start of the function.
...
Improve CMake Windows support to build PyBullet (BUILD_PYBULLET)
Implement b3LoadSdfCommandInit in shared memory API
Implement pybullet SDF loading binding, in loadSDF API
TODO for SDF support is provide way to query object/link/joint information.
2016-06-13 10:11:28 -07:00
Jasmine Hsu
ecc192df94
render image with ability to set pixel resolution and initial camera position
2016-06-10 15:07:52 -07:00
Erwin Coumans
98d2f91f3c
fix flipped tinyrenderer image
2016-06-09 12:12:46 -07:00
Erwin Coumans
e0c3392cee
don't pass width/height into renderObject
2016-06-07 17:02:47 -07:00
Erwin Coumans
d2e50d045b
fix issues related to camera width/height
...
add width,height as arguments to pybullet.renderImage(x,y,[viewMat4x4],[projMat4x4])
2016-06-07 16:11:58 -07:00
Erwin Coumans
1c7f87aff1
implement first draft of pybullet.renderImage for synthetic camera
...
remove a few debug printf from tinyrenderer
2016-06-06 18:54:05 -07:00
erwin coumans
4b2c0f6d89
make one of the cubes in two_cubes.sdf static (immovable) using the <static> tag in SDF
...
add an example using 'direct'
fix the send-desired-state commands, to add flags for arguments set, using default values.
Start exposing SDF loading in shared memory api, not fully implemented yet.
2016-06-03 19:03:56 -07:00
Erwin Coumans
5bf125cab5
fix some compile issues using premake
...
use textured cube/sphere model for test
2016-06-02 13:54:52 -07:00
Erwin Coumans
aa4d2ae01d
initial hookup of TinyRenderer to shared memory interface
2016-06-01 17:47:41 -07:00
erwin coumans
ef85a71d4b
more work on synthetic camera
2016-06-01 11:04:10 -07:00
erwin coumans
f469a2cb49
update to tinyrenderer synthetic camera
2016-05-31 22:55:13 -07:00
erwin coumans
14aa666c6f
preparation to receive camera image data from physics server
...
increase shadowmap world size default to 50 units (meter), 10 units (meter) was too small for most examples.
2016-05-31 10:23:04 -07:00
erwin coumans
2fc0358750
Expose a better API to allow any render engine to be used for the physics simulation when loading URDF/SDF files.
...
See bullet3/examples/Importers/ImportURDFDemo/DefaultVisualShapeConverter.h
Give the kuka_iiwa/model.urdf some blue color, not just orange, to mimick the original a bit better
Preparation for the CMD_CAMERA_IMAGE_COMPLETED command, to expose a virtual camera to the robotics API
2016-05-19 18:37:15 -07:00
Erwin Coumans
fb2134f15f
add combobox to select software/opengl rendering to compare
2016-05-18 17:57:13 -07:00
Erwin Coumans
7994a339ee
disable RTC update for Physics Server by default
2016-05-18 16:21:40 -07:00
erwin coumans
a395ddcb06
add option to embed a physics server in the physics client example, for easier debugging
2016-05-18 09:34:42 -07:00
erwin coumans
606f78da43
work-in-progress tinyrenderer -> shared memory API synthetic camera image
2016-05-17 23:57:19 -07:00
erwin coumans
6a9c54c4ef
Remove unused ROS urdf (was replaced by Bullet UrdfParser.
...
Small refactoring for ExampleBrowser: move examples cpp files in the app/executable
Move ExtendedTutorials in its own app/executable as a test.
2016-05-12 23:03:12 -07:00
yunfeibai
1bebcc6d9a
Merge remote-tracking branch 'upstream/master'
2016-05-10 10:18:27 -07:00
Erwin Coumans
ab4299f517
expose the local inertial frame for each link in the shared memory API
...
struct b3LinkState
{
double m_worldPosition[3];//this is the inertial frame
double m_worldOrientation[4];
double m_localInertialPosition[3];//this is the local frame from inertial to link frame
double m_localInertialOrientation[4];
};
const btTransform link_frame_world =
inertial_frame_world * m_local_inertial_frame->inverse();
2016-04-29 14:46:25 -07:00
erwincoumans
66bfb7e708
Update PhysicsClientC_API.cpp
...
fix a copy/paste bug -> pos+quat = 7, but pos is just 3
2016-04-25 09:37:04 -07:00
Erwin Coumans
f99d1c45aa
expose multibody link world transform in the shared memory API
2016-04-23 17:29:46 -07:00
yunfeibai
cbeddfc897
Modify shared memory client example to test joint motor torque measurement.
2016-04-19 16:52:47 -07:00
yunfeibai
c384383250
Merge branch 'master' of https://github.com/bulletphysics/bullet3
...
Update measured torque name.
2016-04-19 14:20:28 -07:00
yunfeibai
c3afbf7689
set desired position target
2016-04-19 14:19:18 -07:00
Erwin Coumans
0f5ee7a0a9
rename m_jointForce -> m_jointMotorForce to separate the name from m_jointForceTorque (which should have been called m_jointReactionForce)
2016-04-19 12:22:38 -07:00
erwincoumans
05845d7df9
Merge pull request #602 from erwincoumans/master
...
handle window closing in InProcessPhysicsClientSharedMemoryMainThread
2016-04-19 10:58:13 -07:00
yunfeibai
f9719e2405
Add measured joint motor force to joint sensor state.
2016-04-19 10:44:59 -07:00
Erwin Coumans
bebe9a728b
handle window closing in InProcessPhysicsClientSharedMemoryMainThread
2016-04-19 08:29:20 -07:00
Erwin Coumans
59e0bef988
remove compile errors and some debug code in ExampleBrowser.
2016-04-14 12:19:55 -07:00
Erwin Coumans
2cbfeb9590
run GUI on main thread for Mac OSX/__APPLE__, due to OS limitation
...
add b3CreateInProcessPhysicsServerAndConnectMainThread to test.c
2016-04-14 08:51:20 -07:00
Erwin Coumans
0ca56e756f
add joint damping in PhysicsServerCommandProcessor
2016-04-13 17:21:43 -07:00
Erwin Coumans
4df7257250
more comments in SharedMemory C API
2016-04-13 17:09:48 -07:00
Erwin Coumans
34e6eb4a18
add a few lines of documentation and some error checks in SharedMemory API
2016-04-13 13:06:15 -07:00
Erwin Coumans
f3c7f30684
fix some memory leaks in ImportURDF / PhysicsServerCommandProcessor
2016-04-11 16:42:02 -07:00
Erwin Coumans
59b32b7af1
re-enable command log and playback in physics server
...
report applied motor torque in physics server
2016-04-08 18:17:17 -07:00
Erwin Coumans
643cf5ab1d
Merge branch 'master' of https://github.com/erwincoumans/bullet3
2016-03-17 16:12:48 -07:00
Erwin Coumans
7e4dfb7207
remove SimpleOpenGL3 demo, it breaks some builds
...
reset callback to 0 after exiting a demo to avoid issues
2016-03-17 16:11:53 -07:00
erwincoumans
fe92de3e50
add infrastructure float btMultiBodyLink m_jointDamping, m_jointFriction (actual damping/friction is in a separate commit)
...
add door.urdf for testing damping/friction
2016-03-17 14:54:46 -07:00
erwincoumans
efbb1edecc
Allow InProcessExampleBrowser to use a malloc allocated memory block, instead of system shared memory.
...
Make shared memory client/server a bit more robust, in case the server is terminated early.
2016-03-10 14:36:46 -08:00
erwincoumans
40a9b8cea0
fix relative include path
2016-03-07 15:12:33 -08:00
erwincoumans
9be978337f
quick draft implementation for SharedMemoryInProcessPhysicsC_API
2016-03-07 14:56:16 -08:00
Erwin Coumans
a3154f7a56
use b3ConnectSharedMemory in PhysicsClient example, instead of b3ConnectPhysicsLoopback
2016-01-27 13:36:33 -08:00
Erwin Coumans
b4701613c8
consistent *API.* in examples/SharedMemory
2015-11-23 08:00:42 -08:00
erwincoumans
bd4c4eb3c5
rename API->Api
2015-11-22 21:32:20 -08:00
erwincoumans
03bf78ef49
add physics server loopback (both client and server in the same process, using shared memory)
...
add physics server direct (client and server in the same process, directly processing commands without shared memory transport mechanism)
2015-11-22 20:50:32 -08:00
Erwin Coumans
f6a8079353
sync repo
2015-11-11 12:44:26 -08:00
erwincoumans
3b9b803683
b3CreateBoxCommandSetColorRGBA: allow to specify color when creating bodies through shared memory API
...
Parse and use colors from URDF file (single rgba color per link, not per visual)
Rename btMultiBody 'stepVelocities' to 'computeAccelerationsArticulatedBodyAlgorithmMultiDof'
btHashMap, add const Value* operator[]
remove a few more obsolete btMultiBody methods (on the non-multi-dof path)
fix spelling typo in fillConstraintJacobianMultiDof (fil -> fill)
Add mention to Jakub Stepien for his work on btMultiBody
2015-11-06 17:11:15 -08:00
Erwin Coumans
7ef06d532e
remove debug test
2015-11-05 17:35:05 -08:00
Erwin Coumans
2317307a22
Add b3GetStatusActualState() to C_API.
...
Change pick-and-move C_API to use handlers
2015-11-04 16:08:28 -08:00
erwincoumans
d6464ce40d
add 'replay' command log feature: no mouse interaction during replay, and use a fixed number of sim steps in stepSimulation.
...
workaround for reversed separating normal in gjk/epa when using very small shapes, detect case and revert normal.
use smaller world size (10 units versus 100) for higher resolution shadow map
use a hard-coded rolling friction of 0.2 for objects in physics server (will make this configurable)
fix loading of command log files, when platform features are different (64bit/32bit)
2015-11-01 12:48:15 -08:00
Erwin Coumans
6e042b1901
re-enable wireframe in PhysicsClient
...
inintialize variables in constructor of PhysicsClient
2015-10-30 13:24:02 -07:00
erwin coumans
c68c215ead
add rudimentary command logging for shared memory physics server
2015-10-30 10:30:48 -07:00
erwin coumans
819c4f1951
Merge branch 'master' of https://github.com/erwincoumans/bullet3
2015-10-29 11:26:01 -07:00
erwin coumans
f7bbbd88e6
preparation for CommandLogging for PhysicsServer.
2015-10-29 11:25:50 -07:00
erwin coumans
9442791cf1
Fix PhysicsServer connection issue, in cases where shared memory was not properly shut down.
2015-10-29 11:18:26 -07:00
erwincoumans
650189d50b
Allow both remote debug drawer and local debug drawer for PhysicsServer (shared memory etc)
2015-10-29 08:28:49 -07:00
Erwin Coumans
6a6c0297fe
Merge branch 'master' of https://github.com/erwincoumans/bullet3
2015-10-28 13:44:30 -07:00
erwin coumans
2d5d89d999
Allow to request the state of a rigid body (position, orientation, lin/ang velocity) through shared memory API
...
PhysicsClientC_API: b3RequestActualStateCommandInit requires a body unique Id as second argument
2015-10-27 15:46:13 -07:00
erwin coumans
9cc2b1ec12
Physics SharedMemory:
...
Add flags BOX_SHAPE_HAS_MASS and BOX_SHAPE_HAS_COLLISION_SHAPE_TYPE to CMD_CREATE_RIGID_BODY
(which maps to CMD_CREATE_BOX_COLLISION_SHAPE for backward compatibility for now)
Need to add way to receive world transform
2015-10-27 14:55:46 -07:00
erwincoumans
57f50f1778
Create a PhysicsLoopBack that includes both PhysicsClient and PhysicsServer over shared memory.
...
Add a test for PhysicsLoopBack.
2015-10-26 17:56:21 -07:00
Erwin Coumans
ec1947bbbd
add SIM_PARAM_UPDATE_DELTA_TIME flag to fix setting the time step
...
in shared memory API
2015-10-24 13:50:11 -07:00
Erwin Coumans
818037c011
Fix issue related to CMD_RESET_SIMULATION
2015-10-24 13:49:25 -07:00
Erwin Coumans
f28150c368
catch setting of invalid joint angles in PhysicsClientC_Api
...
use the proper m_bodyUniqueIndex (todo: fix this field, move to shared command data)
2015-10-24 13:48:53 -07:00
Takuya NAKAOKA
3a11fff3ad
Fix slow simulation in PhysicsServerExample
...
Removed maxSteps to regain simulation speed
2015-10-20 14:51:40 +09:00
Erwin Coumans
21b7a47129
although still not implemented, IMU enum had wrong value, thanks JF
2015-10-17 20:12:50 -07:00
Erwin Coumans
e5175cde9a
although still not implemented, IMU enum had wrong value, thanks JF
2015-10-17 18:52:48 -07:00
=
bc09125095
fix include guard, thanks Aaron!
...
fix uninitialized body index in PhysicsServer
2015-10-16 08:18:26 -07:00
=
4df58c35c7
use const in PhysicsClientC_Api, thanks to Roland
...
fix some warnings for Clang, thanks to Aaron
2015-10-15 08:15:22 -07:00
erwin coumans
a0e507280c
Implement CMD_INIT_POSE to set base position, base orientation and joint position (angle).
...
See PhysicsClientExample for example use of CMD_INIT_POSE.
Change: CMD_INIT_POSE uses m_initPoseArgs and not m_sendDesiredStateCommandArgument
2015-10-13 22:23:28 -07:00
erwin coumans
4a29986662
initial support for multiple robots in shared memory API
2015-10-13 11:32:25 -07:00
=
5e4badc099
make PhysicsClient an interface class, and move shared memory implementation
...
of physics client into PhysicsClientSharedMemory class/file.
This will allow implementation of UDP and other transport protocols to a physics server.
2015-09-24 22:50:34 -07:00
=
e05825f639
improvements to the shared memory physics API:
...
support picking in C API etc.
2015-09-24 22:42:22 -07:00
=
23bdd0ed36
more work on physics client c-api over shared memory
2015-09-17 09:37:44 -07:00
=
003a42478b
another step closer to useable shared memory C API
...
(force/torque sensor needs new API)
in a nutshell, users of shared memory physics API should not
directly poke into shared memory, not fill 'SharedMemorCommand'
nor read SharedMemoryStatus directly. The C-API declares 'handles' for those,
to avoid it from happening.
2015-09-16 23:09:10 -07:00
=
d72cda101c
fixes in shared memory client/server: check for valid pointers
2015-09-09 15:14:47 -07:00
erwincoumans
e4b5f4730d
Merge pull request #473 from takuyanakaoka/detach-shared-mem
...
Detach posix shared memory correctly
2015-09-09 15:13:27 -07:00
Takuya NAKAOKA
4cbd86a058
Detach posix shared memory correctly
...
* shmget() fails after shmctl() is called with IPC_RMID. This patch
removes shmget() in releaseSharedMemory so that a client can detach
a shared memory correctly after a server removed it.
* A server should also detach a shared memory.
2015-09-09 12:35:26 +09:00
=
5be9119455
run the PhysicsServerExample 'stepSimulation' smoother
...
fix a warning in ThirdParty/stb_image
fix an single/double precision issue in btPolyhedralContactClipping.cpp
2015-09-08 13:39:09 -07:00
erwin coumans
2909b5fae3
add picking to shared memory physics server
2015-09-04 11:28:08 -07:00
erwin coumans
f75df90d82
Allow batches of debug lines. The PhysicsClientExample rendering is still slow (one line at a time, instead of batches)
...
Prepare for IMU sensor in Shared Memory Server
2015-09-03 14:18:22 -07:00
=
5a0ca58436
fix force/torque feedback
2015-08-31 12:36:08 -07:00
Erwin Coumans (Google)
98c93a7330
fix inline, __inline for _WIN32
2015-08-27 18:13:54 -07:00
Erwin Coumans (Google)
3d130d9d66
reset simulation in test/SharedMemory/test for proper cleanup,
...
and it can restart without shutting down/restarting physics server
w
2015-08-27 17:51:31 -07:00
Erwin Coumans
2e7949bb3e
fix some warnings
2015-08-26 15:26:53 -07:00
erwin coumans
faab737738
add a robot joint sensor example, reading joint reaction forces/torques using the shared memory API
2015-08-24 15:26:29 -07:00
Erwin Coumans
9ec08592b6
fix a copy/paste typo, thanks Roland!
2015-08-21 18:18:12 -07:00
=
bbc450a3de
position/velocity control through constraint for shared memory server
2015-08-20 14:57:14 -07:00
=
63873e2926
fix issue, cannot assume 16-byte alignment in shared memory,
...
causing crashes when SIMD btVector3 is stored on Mac OSX.
2015-08-20 08:09:22 -07:00
erwincoumans
081a40d254
initial implementation to send debug lines from physics server to client,
...
need to add streaming because memory is too small to store all lines
initial test of PD control in physics server, need to switch to PD control for motor constraint, instead of using external forces.
2015-08-19 22:51:16 -07:00
erwincoumans
89c2a729ce
Improved simple TimeSeriesCanvas
...
Fixes in RobotControlExample
Disable gravity by default in PhysicsServer
2015-08-07 13:17:33 -07:00
Erwin Coumans
03d991c92b
add command-line argument for example browser and shared memory app, --shared_memory_key=<int>
...
fix some shared memory issues, client uses attach/detach, server uses create/remove shared memory
implement CMD_RESET_SIMULATION
2015-08-07 00:13:26 -07:00
=
f750275cf9
fix _WIN32 build (there is no <err.h>)
2015-08-06 12:07:08 -07:00
=
46fae61c69
fixes in shared memory:
...
only allow server to create and initialize shared memory,
client will report failure
intercept signals to cleanup shared memory in standalone app, thanks to
Roland Philippsen.
2015-08-06 11:59:31 -07:00
=
eb6663ed4b
further work on shared memory API
...
fix dependency of BulletDynamics to Bullet3Common (b3Printf)
2015-08-02 14:00:43 -07:00
erwincoumans
19c5be5646
small progress towards shared memory C-api and test.c.
2015-07-30 23:22:44 -07:00
=
3fe9138e8c
minor refactoring
2015-07-23 11:51:25 -07:00
erwin coumans
0fe6d343bc
move m_updateFlags to command, and make it 64bit
2015-07-23 10:51:09 -07:00
Erwin Coumans
812c67e221
fix various warnings, more work on shared memory API
2015-07-22 18:06:05 -07:00
Erwin Coumans
05fc203ec1
Separate SharedMemoryStatus from SharedMemoryCommand
...
Added CMD_CMD_SEND_PHYSICS_SIMULATION_PARAMETERS (set gravity as example)
and CMD_INIT_POSE, not fully implemented yet.
2015-07-21 21:46:28 -07:00
Erwin Coumans
8e163c984d
allow to control of powered joints after loading a URDF file, through shared memory
...
more refactor of shared memory joint control API
2015-07-20 23:35:29 -07:00
erwin coumans
b563c7c8ce
add additional example using server and client for future simple robot control of simulated robot
...
(load urdf, get state, set desired state, step simulation)
Create SharedMemoryCommand and put that into the queue
move arrays for Q, Qdot etc into the command
2015-07-15 15:23:40 -07:00
erwin coumans
259bcb1989
mix physics client/server into a single example for easier/faster development of shared memory experiment
...
add premake option to choose targetdir for binaries/libraries
add simple hinge.urdf file
2015-07-15 12:57:45 -07:00
=
48f6484b3d
make OSX/Unix version of PosixSharedMemory work
...
pass on useFixedBase to URDF loader in PhysicsServer
2015-07-14 16:23:01 -07:00
erwin coumans
54a76f6e0c
Refactor of PhysicsClient/PhysicsServer, to separate from the example browser code.
...
(as usual, work-in-progress)
2015-07-14 15:30:17 -07:00
=
482f31597b
implement preliminary CMD_SEND_DESIRED_STATE with CONTROL_MODE_VELOCITY and
...
CONTROL_MODE_TORQUE.
2015-07-14 08:34:02 -07:00
=
7452df0964
Pass initial position and orientation for CMD_LOAD_URDF. (public github commit)
2015-07-12 14:48:43 -07:00
erwincoumans
6c9ce344ea
fix shadowmap crash on some Intel GPUs, see https://github.com/bulletphysics/bullet3/issues/4
...
remove targetdir from all libraries in premake, so it is much easier to create a separate folder for all binary+lib
transmit the serialized btMultiBody data back from server to client, after the server loads a URDF file. This includes base+link+joint names
tweak the serialization routines, so it is easier to skip pointers and to serialize directly to a shared memory buffer
also tweak the serialization code to allow to process data without 'DNA' schema data (assuming file-DNA = memory DNA)
2015-07-10 22:20:06 -07:00
erwincoumans
285ac286fa
some work towards streaming Bullet data over shared memory for client/server
2015-07-09 14:04:58 -07:00
Erwin Coumans (Google)
8517e85b21
fix various warning
...
add b3ResourcePath utility, to locate resources relative to executable
2015-07-03 18:17:14 -07:00
Erwin Coumans
5d44d596ed
fix build system (case sensitive filename)
2015-06-28 22:00:03 -07:00
Erwin Coumans
f8add8bba0
fixes in build system for URDF parser
2015-06-28 21:21:57 -07:00
Erwin Coumans
039174a809
add alternative URDF parser that doens't use ROS urdf
2015-06-28 14:09:21 -07:00
erwin coumans
b14afba350
more work-in-progress on joint-torque sensor sample and server/client shared memory API
2015-06-22 15:30:57 -07:00
Erwin Coumans
4688540a98
minor update for shared memory interface
2015-06-21 13:24:36 -07:00
erwin coumans
2d79dda032
prepare for joint/torque feedback. First for btRigidBody, then btMultiBody.
2015-06-09 18:13:05 -07:00
erwin coumans
2c3db1c631
Add a "add button" option in the CommonParameterInterface and implement it for Gwen.
...
Add some buttons for shared memory requests in the PhysicsClient
2015-06-09 16:51:55 -07:00
erwin coumans
a94ac6300a
add Windows version of shared memory, very basic implementation (only allows one single allocation)
2015-06-04 15:37:18 -07:00
Erwin Coumans (Google)
190382e9ec
enable posix shared memory on non-Win32 platforms (Linux and Mac) for example browser
2015-05-30 20:32:29 -07:00
=
c28afd2242
add missing files
2015-05-29 15:38:32 -07:00
=
bc806ab68c
exit gracefully and call destructor of the current active example
...
fflush after printf
implemented stepForward and Shutdown for the SharedMemory client/server
2015-05-29 15:04:05 -07:00
=
6fedad9db7
fix SharedMemory premake file
2015-05-29 11:37:21 -07:00
=
7abefca6f1
small improvement to the shared memory physics server/client
2015-05-28 17:49:55 -07:00
=
82576d0bee
added preliminary shared memory physics client/server
...
fix a bug in CommonMultiBodyBase: don't use data if it hasn't been allocated
2015-05-28 16:05:24 -07:00