Commit Graph

1332 Commits

Author SHA1 Message Date
Erwin Coumans
b63e15d15c fix example 2020-09-02 02:23:04 -07:00
Erwin Coumans
d8d81f9ca4 laikago_toes_zup.urdf: fill in inertia values, computed as PyBullet does internally (from mass and collision volumes) 2020-08-17 16:22:31 -07:00
Erwin Coumans
8b42b90393 Merge remote-tracking branch 'bp/master' 2020-08-13 19:38:36 -07:00
erwincoumans
76a9b51993
Merge pull request #2931 from AiRuiChen/fix-minitaur-logging
Fix minitaur_logging proto and import
2020-08-13 19:35:11 -07:00
erwincoumans
15041841a5
Merge pull request #2933 from AiRuiChen/fix-pybullet-gym-envs
Fix pybullet gym envs
2020-08-13 19:33:21 -07:00
Erwin Coumans
16efd7b288 fix memory leak in pybullet.calculateJacobian 2020-08-13 17:02:54 -07:00
Erwin Coumans
82493e9fbb fix copy/paste bug in pybullet.c related to collisionShapeOrientationAObj (missing Obj)
this would lead to the collisionShapeOrientationA not being considered.
2020-08-12 21:26:43 -07:00
erwincoumans
17d373db55
Merge pull request #2937 from addy1997/master
prev keyword removed
2020-08-11 08:30:55 -07:00
Peng Xu
20667bd7d0 Pybullet fast numpy input support for rayTestBatch. 2020-08-11 02:19:23 -07:00
Erwin Coumans
a17df118f1 re-add constraints.py I wanted to delete the changes, not the file!
(confusing github UI!)
2020-08-07 09:32:30 -07:00
erwincoumans
d1505e187a
Merge pull request #2950 from DarioUrbina/develop_dario
Inverted Pendulum Actuated by Tendons
2020-08-07 09:30:32 -07:00
erwincoumans
2bc3d87d8d
Delete constraint.py 2020-08-07 09:29:39 -07:00
Xuchen Han
eef0d647cd Tune parameters to effectively reduce the stiffness of the picking force. 2020-08-03 23:05:08 -07:00
erwincoumans
b623f5d123
Merge pull request #2967 from erwincoumans/master
fix raycast filter masks, they can be negative
2020-08-03 13:18:27 -07:00
erwincoumans
eb32f48000
Merge pull request #2958 from buoyancy99/patch-1
fix bug of using undefined name p
2020-08-03 11:37:19 -07:00
Erwin Coumans
d12d886e13 raycast filter masks can be negative, always apply the mask (-1 default). Thanks to Tingnan for reporting/reproduction case. 2020-08-03 11:00:14 -07:00
Erwin Coumans
51aed38377 fix import 2020-07-31 15:30:53 -07:00
buoyancy99
1edb8d17f9
fix bug of using undefined name p 2020-07-29 23:51:40 -07:00
Xuchen Han
fa0d452651 Initialize proper collision margin for deformable_ball.py 2020-07-28 21:00:27 -07:00
Erwin Coumans
1e8f39b492 improve premake4 build in case X11 headers are missing
improve video_sync_mp4.py example
allow to create a heightfield from file or programmatically in C++ robotics api. Example:

{
		b3RobotSimulatorCreateCollisionShapeArgs shapeArgs;
		shapeArgs.m_shapeType = GEOM_HEIGHTFIELD;
		bool useFile = true;
		if (useFile)
		{
			shapeArgs.m_fileName = "D:/dev/bullet3/data/heightmaps/gimp_overlay_out.png";
			shapeArgs.m_meshScale.setValue(.05, .05, 1);
		}
		else
		{
			shapeArgs.m_numHeightfieldColumns = 256;
			shapeArgs.m_numHeightfieldRows = 256;
			shapeArgs.m_meshScale.setValue(.05, .05, 1);
			shapeArgs.m_heightfieldData.resize(shapeArgs.m_numHeightfieldRows * shapeArgs.m_numHeightfieldColumns);
			double heightPerturbationRange = 0.05;
			for (int j = 0; j<int(shapeArgs.m_numHeightfieldColumns / 2); j++)
			{
				for (int i = 0; i < (int(shapeArgs.m_numHeightfieldRows / 2)); i++)
				{
					double height = ((double)rand() / (RAND_MAX)) * heightPerturbationRange;
					shapeArgs.m_heightfieldData[2 * i + 2 * j * shapeArgs.m_numHeightfieldRows] = height;
					shapeArgs.m_heightfieldData[2 * i + 1 + 2 * j * shapeArgs.m_numHeightfieldRows] = height;
					shapeArgs.m_heightfieldData[2 * i + (2 * j + 1) * shapeArgs.m_numHeightfieldRows] = height;
					shapeArgs.m_heightfieldData[2 * i + 1 + (2 * j + 1) * shapeArgs.m_numHeightfieldRows] = height;
				}
			}
		}
		int shape = sim->createCollisionShape(shapeArgs.m_shapeType, shapeArgs);
		b3RobotSimulatorCreateMultiBodyArgs bodyArgs;
		bodyArgs.m_baseCollisionShapeIndex = shape;
		int groundId = sim->createMultiBody(bodyArgs);
		int texId = sim->loadTexture(shapeArgs.m_fileName);
		b3RobotSimulatorChangeVisualShapeArgs args;
		args.m_objectUniqueId = groundId;
		args.m_linkIndex = -1;
		args.m_textureUniqueId = texId;
		sim->changeVisualShape(args);
	}
2020-07-24 18:09:13 -07:00
Darío Urbina
370b2f72ff valerolab 2020-07-23 09:32:46 -07:00
Darío Urbina
5081ac5b34 Inverted Pendulum Tendon Actutation 2020-07-22 11:19:10 -07:00
CuriousCAT
9c62c3f1f1
prev keyword removed 2020-07-16 11:46:49 +05:30
Eric Yihan Chen
3a6a279b9a Fix pybullet gym envs 2020-07-14 21:08:51 -07:00
Eric Yihan Chen
6b38a4cfdb Fix minitaur logging proto and import 2020-07-14 17:16:29 -07:00
Erwin Coumans
c9ca9cb6c6 disable Center of Mass tracking reward by default, since resulting policies don't work well.
See also https://github.com/bulletphysics/bullet3/issues/2928#issuecomment-658349531
2020-07-14 12:10:15 -07:00
Darío Urbina
01d74be777 Seeing the relatonship and understanding of the creation of two contraints 2020-07-13 12:22:49 -07:00
erwincoumans
d19cd89b4a
Merge pull request #2912 from ManifoldFR/deepmimic-gym-fixes
DeepMimic: add COM reward
2020-07-08 10:54:20 -07:00
ManifoldFR
1f6ae38040 DeepMimic: add retrained walk motion with COM 2020-07-08 17:03:46 +02:00
Erwin Coumans
c517c434e6 pybullet allow to enable/change joint limits:
pybullet.changeDynamicsInfo(objectUniqueId, linkIndex, jointLowerLimit=..., jointUpperLimit=...) # jointLowerLimit <= jointUpperLimit

and joint limit max force:
pybullet.changeDynamicsInfo(objectUniqueId, linkIndex, jointLimitForce=...)

For example:
p.changeDynamics(sphereUid,linkIndex, jointLowerLimit=1, jointUpperLimit=3, jointLimitForce=10.5)

add b3ChangeDynamicsInfoSetJointLimit/b3ChangeDynamicsInfoSetJointLimitForce
add getConstraintType for btMultiBodyConstraint
2020-07-07 19:42:23 -07:00
ManifoldFR
a3810d15ef fix setting useComReward=false 2020-07-06 16:56:24 +02:00
ManifoldFR
2fe3fe945d DeepMimic: Make COM reward optional 2020-07-06 16:47:22 +02:00
ManifoldFR
53a3af8918 Merge branch 'master' into deepmimic-gym-fixes 2020-07-02 10:12:06 +02:00
ManifoldFR
b200bf59e0 DeepMimic: add COM reward 2020-07-01 19:15:21 +02:00
erwincoumans
63e1d7d840
Merge pull request #2888 from AiRuiChen/change-env-name
Ensure naming consistency in gym registry
2020-06-30 19:06:53 -07:00
Eric Yihan Chen
0f05cdba18 Add missing names in pybullet_envs.getList() 2020-06-29 11:29:43 -07:00
ManifoldFR
45b061c879 variable timestep for deepmimic env 2020-06-29 10:30:09 +02:00
ManifoldFR
d0838d3bcb variable timestep for deepmimic env 2020-06-29 10:26:08 +02:00
Eric Yihan Chen
6cdebabd2b rename bullet envs for consistency 2020-06-27 15:10:20 -07:00
ManifoldFR
04350bc9ab add COM reward to DeepMimic 2020-06-25 15:59:13 +02:00
ManifoldFR
b925988821 DeepMimic Gym enhancements
* fix render() camera up axis
* make render() camera track character
* increase render resolution
* add option to restart mocap clip at t=0 at reset (default=random time)
* Gym env: option for "test mode" (episode starts at mocap clip start)
* Gym env: option to offset/rescale actions and obs (like original code)
2020-06-25 12:03:30 +02:00
Erwin Coumans
b4624ad237 fix pybullet_utils import 2020-06-23 16:14:18 -07:00
Erwin Coumans
d1ded7d704 use pybullet.URDF_GOOGLEY_UNDEFINED_COLORS for standard gym envs 2020-06-01 23:38:59 -07:00
erwincoumans
a1522b3891
Merge pull request #2822 from ManifoldFR/patch-1
Modify DeepMimic Gym env step() to query policy at 30Hz
2020-06-01 17:23:25 -07:00
erwincoumans
50af23e487
Merge pull request #2832 from xhan0619/pybullet-api
Set numNonContactInnerIterations from Pybullet
2020-06-01 17:19:45 -07:00
erwincoumans
eea724bc02
Merge pull request #2837 from erwincoumans/master
also allow reportHitNumber for single pybullet.rayTest, better mtl/urdf color selection
2020-06-01 17:18:24 -07:00
Daniele Reda
409b0eaa39 fix double humanoid instantiation 2020-05-31 21:38:38 -07:00
Xuchen Han
a33a9412fa add numNonContactInnerIterations to getPhysicsParameters 2020-05-29 08:28:52 -07:00
Xuchen Han
e6fdaebea9 add api for setting non contact iteration for pybullet 2020-05-28 17:58:21 -07:00
Wilson
829475c38a
Set DeepMimic Gym env to query policy at 30Hz
Addresses issue #2821
2020-05-24 16:30:47 +02:00