38 lines
1.3 KiB
Python
38 lines
1.3 KiB
Python
# server.py
|
|
import time
|
|
import argparse
|
|
|
|
import pybullet as p
|
|
import pybullet_data
|
|
|
|
|
|
def main(type = 'SHARED_MEMORY_SERVER'):
|
|
# Подключаемся к графическому серверу в режиме SHARED_MEMORY_SERVER
|
|
# physicsClient = p.connect(p.SHARED_MEMORY_SERVER)
|
|
physicsClient = p.connect(getattr(p, type))
|
|
print(f"start pybullet ph client {physicsClient}")
|
|
# Настраиваем среду
|
|
p.setAdditionalSearchPath(pybullet_data.getDataPath())
|
|
p.setGravity(0, 0, -10)
|
|
|
|
while True:
|
|
# Основной цикл физического движка
|
|
p.stepSimulation()
|
|
time.sleep(1.0 / 240.0)
|
|
|
|
|
|
if __name__ == "__main__":
|
|
# Парсер аргументов командной строки
|
|
parser = argparse.ArgumentParser(description="Запуск PyBullet сервера.")
|
|
parser.add_argument(
|
|
"--test",
|
|
action="store_true",
|
|
help="Запустить сервер в режиме GUI_SERVER"
|
|
)
|
|
|
|
args = parser.parse_args()
|
|
|
|
# Если передан аргумент --test, устанавливаем тип подключения SHARED_MEMORY_SERVER
|
|
connection_type = 'GUI_SERVER' if args.test else 'SHARED_MEMORY_SERVER'
|
|
main(connection_type)
|