Project Icon

bullet3

开源实时物理模拟引擎 支持VR游戏和机器人应用

Bullet Physics SDK是开源的C++物理引擎,提供实时碰撞检测和多物理模拟功能。适用于虚拟现实、游戏、视觉效果、机器人和机器学习等领域。支持Python绑定(PyBullet)和OpenCL GPGPU加速。具有高性能和跨平台特性,是物理模拟的有力工具。

Travis构建状态 Appveyor构建状态

Bullet物理引擎SDK

这是Bullet物理引擎SDK的官方C++源代码仓库:用于虚拟现实、游戏、视觉效果、机器人、机器学习等领域的实时碰撞检测和多物理仿真。

PyBullet

问题

问题追踪器被大量支持问题淹没,目前已关闭,等待清理。请使用PyBullet论坛与他人讨论。

PyBullet

强烈推荐使用PyBullet Python绑定,以获得对机器人、强化学习和虚拟现实的更好支持。使用pip install pybullet安装,并查看PyBullet快速入门指南

安装简单:

pip3 install pybullet --upgrade --user
python3 -m pybullet_envs.examples.enjoy_TF_AntBulletEnv_v0_2017may
python3 -m pybullet_envs.examples.enjoy_TF_HumanoidFlagrunHarderBulletEnv_v1_2017jul
python3 -m pybullet_envs.deep_mimic.testrl --arg_file run_humanoid3d_backflip_args.txt

如果您在研究中使用PyBullet,请按以下方式引用:

@MISC{coumans2021,
author =   {Erwin Coumans and Yunfei Bai},
title =    {PyBullet, a Python module for physics simulation for games, robotics and machine learning},
howpublished = {\url{http://pybullet.org}},
year = {2016--2021}
}

Bullet Physics C++的要求

支持C++ 2003标准的C++编译器。该库已在Windows、Linux、Mac OSX、iOS和Android上测试过,但应该可以在任何具有C++编译器的平台上运行。 一些可选的演示需要OpenGL 2或OpenGL 3,也有一些非图形演示和单元测试。

贡献者和编码风格信息

https://docs.google.com/document/d/1u9vyzPtrVoVhYqQOGNWUgjRbfwfCdIts_NzmvgiJ144/edit

实验性OpenCL GPGPU支持的要求

整个碰撞检测和刚体动力学可以在GPU上执行。

需要高端桌面GPU,如AMD Radeon 7970或NVIDIA GTX 680或更好的显卡。 我们已在Windows、Linux和Mac OSX上成功测试了该软件。 目前该软件不适用于OpenCL CPU设备。它可能在笔记本电脑GPU上运行,但性能可能不会很好。请注意, OpenCL驱动程序经常无法编译内核。存在一些单元测试来追踪问题,但需要更多工作来覆盖所有OpenCL内核。

许可证

除非在特定文件夹/文件中另有标注,所有源代码文件均采用宽松的zlib许可证 (http://opensource.org/licenses/Zlib)。

使用vcpkg构建Bullet的说明

您可以使用vcpkg依赖管理器下载并安装Bullet:

git clone https://github.com/Microsoft/vcpkg.git
cd vcpkg
./bootstrap-vcpkg.sh
./vcpkg integrate install
./vcpkg install bullet3

vcpkg中的Bullet端口由Microsoft团队成员和社区贡献者保持更新。如果版本过时,请在vcpkg仓库上创建问题或拉取请求

使用premake构建Bullet的说明。您也可以使用cmake。

Windows

点击build_visual_studio_vr_pybullet_double.bat并打开build3/vs2010/0_Bullet3Solution.sln 当提示时,将项目转换为较新版本的Visual Studio。 如果您在C:\根目录下安装了Python,批处理文件应该能自动找到它。 否则,编辑此批处理文件以选择Python包含/库目录的位置。

Windows虚拟现实沙盒(适用于HTC Vive和Oculus Rift)

构建并运行App_SharedMemoryPhysics_VR项目,最好使用Release/优化构建。 您可以从Python pybullet连接到沙盒,使用:

import pybullet as p
p.connect(p.SHARED_MEMORY) #或 (p.TCP, "localhost", 6667) 或 (p.UDP, "192.168.86.10",1234)

Linux和Mac OSX gnu make

确保安装了gcc和cmake(Linux上使用sudo apt-get install build-essentialsudo apt-get install cmake,Mac上使用brew install cmake,或访问https://cmake.org)

在终端中输入:

./build_cmake_pybullet_double.sh

此脚本将调用cmake并在build_cmake目录中构建。您可以在Bullet/examples/pybullet中找到pybullet。 BulletExampleBrowser二进制文件将位于Bullet/examples/ExampleBrowser中。

您也可以使用premake构建Bullet。build3文件夹中有premake可执行文件。 根据您的系统(Linux 32位、64位或Mac OSX),使用以下行之一 使用premake:

cd build3
./premake4_linux --double gmake
./premake4_linux64 --double gmake
./premake4_osx --double --enable_pybullet gmake

然后

cd gmake
make

注意,在Linux上,您需要使用cmake来构建pybullet,因为编译器在混合共享和静态库时会出现问题。

Mac OSX Xcode

点击build3/xcode4.command或在终端窗口中执行

./premake_osx xcode4

使用方法

App_ExampleBrowser可执行文件将位于bin文件夹中。 您可以通过终端/命令提示符运行它,或直接点击它。

[--start_demo_name="Demo Name"]     以选定的演示开始  
[--mp4=moviename.mp4]               创建窗口的mp4视频,需要安装ffmpeg
[--mouse_move_multiplier=0.400000]  设置鼠标移动灵敏度
[--mouse_wheel_multiplier=0.01]     设置鼠标滚轮灵敏度
[--background_color_red= 0.9]       设置背景颜色的红色分量。绿色和蓝色同理
[--fixed_timestep= 0.0]             使用实时增量时间(0.0)或固定步长(0.016666)

您可以使用鼠标拾取来抓取物体。按住ALT或CONTROL键时,可以使用Maya风格的相机鼠标控制。 按F1创建一系列截图。按ESC退出演示应用程序。

查看docs文件夹和Bullet物理论坛以获取更多信息。

项目侧边栏1项目侧边栏2
推荐项目
Project Cover

豆包MarsCode

豆包 MarsCode 是一款革命性的编程助手,通过AI技术提供代码补全、单测生成、代码解释和智能问答等功能,支持100+编程语言,与主流编辑器无缝集成,显著提升开发效率和代码质量。

Project Cover

AI写歌

Suno AI是一个革命性的AI音乐创作平台,能在短短30秒内帮助用户创作出一首完整的歌曲。无论是寻找创作灵感还是需要快速制作音乐,Suno AI都是音乐爱好者和专业人士的理想选择。

Project Cover

有言AI

有言平台提供一站式AIGC视频创作解决方案,通过智能技术简化视频制作流程。无论是企业宣传还是个人分享,有言都能帮助用户快速、轻松地制作出专业级别的视频内容。

Project Cover

Kimi

Kimi AI助手提供多语言对话支持,能够阅读和理解用户上传的文件内容,解析网页信息,并结合搜索结果为用户提供详尽的答案。无论是日常咨询还是专业问题,Kimi都能以友好、专业的方式提供帮助。

Project Cover

阿里绘蛙

绘蛙是阿里巴巴集团推出的革命性AI电商营销平台。利用尖端人工智能技术,为商家提供一键生成商品图和营销文案的服务,显著提升内容创作效率和营销效果。适用于淘宝、天猫等电商平台,让商品第一时间被种草。

Project Cover

吐司

探索Tensor.Art平台的独特AI模型,免费访问各种图像生成与AI训练工具,从Stable Diffusion等基础模型开始,轻松实现创新图像生成。体验前沿的AI技术,推动个人和企业的创新发展。

Project Cover

SubCat字幕猫

SubCat字幕猫APP是一款创新的视频播放器,它将改变您观看视频的方式!SubCat结合了先进的人工智能技术,为您提供即时视频字幕翻译,无论是本地视频还是网络流媒体,让您轻松享受各种语言的内容。

Project Cover

美间AI

美间AI创意设计平台,利用前沿AI技术,为设计师和营销人员提供一站式设计解决方案。从智能海报到3D效果图,再到文案生成,美间让创意设计更简单、更高效。

Project Cover

AIWritePaper论文写作

AIWritePaper论文写作是一站式AI论文写作辅助工具,简化了选题、文献检索至论文撰写的整个过程。通过简单设定,平台可快速生成高质量论文大纲和全文,配合图表、参考文献等一应俱全,同时提供开题报告和答辩PPT等增值服务,保障数据安全,有效提升写作效率和论文质量。

投诉举报邮箱: service@vectorlightyear.com
@2024 懂AI·鲁ICP备2024100362号-6·鲁公网安备37021002001498号