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:
Binary file not shown.
@@ -27,7 +27,7 @@ project "App_BulletExampleBrowser"
|
|||||||
initOpenCL("clew")
|
initOpenCL("clew")
|
||||||
end
|
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()
|
initOpenGL()
|
||||||
initGlew()
|
initGlew()
|
||||||
|
|
||||||
@@ -137,13 +137,8 @@ project "App_BulletExampleBrowser"
|
|||||||
"../SharedMemory/plugins/stablePDPlugin/Shape.cpp",
|
"../SharedMemory/plugins/stablePDPlugin/Shape.cpp",
|
||||||
"../SharedMemory/plugins/stablePDPlugin/RBDUtil.cpp",
|
"../SharedMemory/plugins/stablePDPlugin/RBDUtil.cpp",
|
||||||
"../SharedMemory/plugins/stablePDPlugin/RBDModel.cpp",
|
"../SharedMemory/plugins/stablePDPlugin/RBDModel.cpp",
|
||||||
"../SharedMemory/plugins/stablePDPlugin/Rand.cpp",
|
|
||||||
"../SharedMemory/plugins/stablePDPlugin/MathUtil.cpp",
|
"../SharedMemory/plugins/stablePDPlugin/MathUtil.cpp",
|
||||||
"../SharedMemory/plugins/stablePDPlugin/KinTree.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/SharedMemoryCommands.h",
|
||||||
"../SharedMemory/SharedMemoryPublic.h",
|
"../SharedMemory/SharedMemoryPublic.h",
|
||||||
"../SharedMemory/b3RobotSimulatorClientAPI_NoGUI.cpp",
|
"../SharedMemory/b3RobotSimulatorClientAPI_NoGUI.cpp",
|
||||||
|
|||||||
@@ -2,7 +2,11 @@ import pybullet as p
|
|||||||
import json
|
import json
|
||||||
import time
|
import time
|
||||||
|
|
||||||
p.connect(p.GUI)
|
useGUI = True
|
||||||
|
if useGUI:
|
||||||
|
p.connect(p.GUI)
|
||||||
|
else:
|
||||||
|
p.connect(p.DIRECT)
|
||||||
|
|
||||||
useZUp = False
|
useZUp = False
|
||||||
useYUp = not useZUp
|
useYUp = not useZUp
|
||||||
@@ -198,15 +202,19 @@ p.getCameraImage(320,200)
|
|||||||
|
|
||||||
while (p.isConnected()):
|
while (p.isConnected()):
|
||||||
|
|
||||||
|
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
|
||||||
|
|
||||||
erp = p.readUserDebugParameter(erpId)
|
|
||||||
|
|
||||||
kpMotor = p.readUserDebugParameter(kpMotorId)
|
|
||||||
maxForce=p.readUserDebugParameter(forceMotorId)
|
|
||||||
kp=kpMotor
|
kp=kpMotor
|
||||||
|
|
||||||
|
|
||||||
frameReal = p.readUserDebugParameter(frameId)
|
|
||||||
frame = int(frameReal)
|
frame = int(frameReal)
|
||||||
frameNext = frame+1
|
frameNext = frame+1
|
||||||
if (frameNext >= numFrames):
|
if (frameNext >= numFrames):
|
||||||
|
|||||||
13
setup.py
13
setup.py
@@ -3,6 +3,8 @@ from setuptools import find_packages
|
|||||||
from sys import platform as _platform
|
from sys import platform as _platform
|
||||||
import sys
|
import sys
|
||||||
import glob
|
import glob
|
||||||
|
import os
|
||||||
|
|
||||||
|
|
||||||
from distutils.core import setup
|
from distutils.core import setup
|
||||||
from distutils.extension import Extension
|
from distutils.extension import Extension
|
||||||
@@ -12,6 +14,8 @@ from glob import glob
|
|||||||
# monkey-patch for parallel compilation
|
# monkey-patch for parallel compilation
|
||||||
import multiprocessing
|
import multiprocessing
|
||||||
import multiprocessing.pool
|
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):
|
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
|
# 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)
|
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):
|
def _single_compile(obj):
|
||||||
try: src, ext = build[obj]
|
try: src, ext = build[obj]
|
||||||
except KeyError: return
|
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
|
# convert to list, imap is evaluated on-demand
|
||||||
pool = multiprocessing.pool.ThreadPool(N)
|
pool = multiprocessing.pool.ThreadPool(N)
|
||||||
list(pool.imap(_single_compile,objects))
|
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
|
import distutils.ccompiler
|
||||||
distutils.ccompiler.CCompiler.compile=parallelCCompile
|
distutils.ccompiler.CCompiler.compile=parallelCCompile
|
||||||
|
|
||||||
|
|
||||||
#see http://stackoverflow.com/a/8719066/295157
|
#see http://stackoverflow.com/a/8719066/295157
|
||||||
import os
|
import os
|
||||||
|
|
||||||
@@ -381,7 +388,7 @@ elif _platform == "win32":
|
|||||||
+["examples/ThirdPartyLibs/glad/gl.c"]
|
+["examples/ThirdPartyLibs/glad/gl.c"]
|
||||||
elif _platform == "darwin":
|
elif _platform == "darwin":
|
||||||
print("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 += '-DB3_NO_PYTHON_FRAMEWORK '
|
||||||
CXX_FLAGS += '-DHAS_SOCKLEN_T '
|
CXX_FLAGS += '-DHAS_SOCKLEN_T '
|
||||||
CXX_FLAGS += '-D_DARWIN '
|
CXX_FLAGS += '-D_DARWIN '
|
||||||
|
|||||||
Reference in New Issue
Block a user