Merge pull request #2082 from erwincoumans/master

PyBullet, fix setup/pip not finding standard libraries,  tweak premake files for ExampleBrowser, allow non-GUI mode for humanoidMotionCapture
This commit is contained in:
erwincoumans 2019-01-28 10:10:08 -08:00 committed by GitHub
commit e908003aaa
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
4 changed files with 27 additions and 17 deletions

Binary file not shown.

View File

@ -27,7 +27,7 @@ project "App_BulletExampleBrowser"
initOpenCL("clew")
end
links{"BulletExampleBrowserLib","gwen", "OpenGL_Window","BulletSoftBody", "BulletInverseDynamicsUtils", "BulletInverseDynamics", "BulletDynamics","BulletCollision","rbdl_static","LinearMath","BussIK", "Bullet3Common"}
links{"BulletExampleBrowserLib","gwen", "OpenGL_Window","BulletSoftBody", "BulletInverseDynamicsUtils", "BulletInverseDynamics", "BulletDynamics","BulletCollision","LinearMath","BussIK", "Bullet3Common"}
initOpenGL()
initGlew()
@ -137,13 +137,8 @@ project "App_BulletExampleBrowser"
"../SharedMemory/plugins/stablePDPlugin/Shape.cpp",
"../SharedMemory/plugins/stablePDPlugin/RBDUtil.cpp",
"../SharedMemory/plugins/stablePDPlugin/RBDModel.cpp",
"../SharedMemory/plugins/stablePDPlugin/Rand.cpp",
"../SharedMemory/plugins/stablePDPlugin/MathUtil.cpp",
"../SharedMemory/plugins/stablePDPlugin/KinTree.cpp",
"../SharedMemory/plugins/stablePDPlugin/FileUtil.cpp",
"../SharedMemory/plugins/stablePDPlugin/json/json_writer.cpp",
"../SharedMemory/plugins/stablePDPlugin/json/json_value.cpp",
"../SharedMemory/plugins/stablePDPlugin/json/json_reader.cpp",
"../SharedMemory/SharedMemoryCommands.h",
"../SharedMemory/SharedMemoryPublic.h",
"../SharedMemory/b3RobotSimulatorClientAPI_NoGUI.cpp",

View File

@ -2,7 +2,11 @@ import pybullet as p
import json
import time
p.connect(p.GUI)
useGUI = True
if useGUI:
p.connect(p.GUI)
else:
p.connect(p.DIRECT)
useZUp = False
useYUp = not useZUp
@ -198,15 +202,19 @@ p.getCameraImage(320,200)
while (p.isConnected()):
erp = p.readUserDebugParameter(erpId)
kpMotor = p.readUserDebugParameter(kpMotorId)
maxForce=p.readUserDebugParameter(forceMotorId)
if useGUI:
erp = p.readUserDebugParameter(erpId)
kpMotor = p.readUserDebugParameter(kpMotorId)
maxForce=p.readUserDebugParameter(forceMotorId)
frameReal = p.readUserDebugParameter(frameId)
else:
erp = 0.2
kpMotor = 0.2
maxForce=1000
frameReal = 0
kp=kpMotor
frameReal = p.readUserDebugParameter(frameId)
frame = int(frameReal)
frameNext = frame+1
if (frameNext >= numFrames):

View File

@ -3,6 +3,8 @@ from setuptools import find_packages
from sys import platform as _platform
import sys
import glob
import os
from distutils.core import setup
from distutils.extension import Extension
@ -12,6 +14,8 @@ from glob import glob
# monkey-patch for parallel compilation
import multiprocessing
import multiprocessing.pool
def parallelCCompile(self, sources, output_dir=None, macros=None, include_dirs=None, debug=0, extra_preargs=None, extra_postargs=None, depends=None):
# those lines are copied from distutils.ccompiler.CCompiler directly
macros, objects, extra_postargs, pp_opts, build = self._setup_compile(output_dir, macros, include_dirs, sources, depends, extra_postargs)
@ -21,7 +25,11 @@ def parallelCCompile(self, sources, output_dir=None, macros=None, include_dirs=N
def _single_compile(obj):
try: src, ext = build[obj]
except KeyError: return
self._compile(obj, src, ext, cc_args, extra_postargs, pp_opts)
newcc_args = cc_args
if _platform == "darwin":
if src.endswith('.cpp'):
newcc_args = cc_args + ["-stdlib=libc++"]
self._compile(obj, src, ext, newcc_args, extra_postargs, pp_opts)
# convert to list, imap is evaluated on-demand
pool = multiprocessing.pool.ThreadPool(N)
list(pool.imap(_single_compile,objects))
@ -29,7 +37,6 @@ def parallelCCompile(self, sources, output_dir=None, macros=None, include_dirs=N
import distutils.ccompiler
distutils.ccompiler.CCompiler.compile=parallelCCompile
#see http://stackoverflow.com/a/8719066/295157
import os
@ -381,7 +388,7 @@ elif _platform == "win32":
+["examples/ThirdPartyLibs/glad/gl.c"]
elif _platform == "darwin":
print("darwin!")
os.environ['LDFLAGS'] = '-framework Cocoa -framework OpenGL'
os.environ['LDFLAGS'] = '-framework Cocoa -stdlib=libc++ -framework OpenGL'
CXX_FLAGS += '-DB3_NO_PYTHON_FRAMEWORK '
CXX_FLAGS += '-DHAS_SOCKLEN_T '
CXX_FLAGS += '-D_DARWIN '