Physics Simulation Forum

 

All times are UTC




Post new topic Reply to topic  [ 9 posts ] 
Author Message
PostPosted: Wed Sep 22, 2010 11:37 pm 
Offline

Joined: Mon Oct 28, 2013 12:18 am
Posts: 14
You can download the Bullet 2.77 from the usual place at http://code.google.com/p/bullet/downloads/list (based on svn revision 2218)

The main new feature is the OpenCL and DirectCompute hardware accelerated cloth simulation.
Thanks to Lee Howes from AMD for this contribution and thanks to NVIDIA for a Fermi GTX 470 GPU for compatibility testing!

We have done a lot of work to streamline OpenCL development for various platforms. We can debug OpenCL kernels using MiniCL, a simplified OpenCL replacement that compiles kernels using the regular C/C++ compiler. The demos can be compiled using OpenCL 1.0 and 1.1 using the most recent AMD and NVIDIA OpenCL SDKs for Windows and Linux as well as Mac OSX. A lot of work went into tweaking the CMakeLists.txt for the cmake build system so it works nicely with various OpenCL SDKs cross-platform. We also used a modified version of CMake to generate Visual Studio project files that we distribute, using relative paths and environment variables etc. The OpenCL kernels are embedded in the executable by default, but they can also be loaded from disk.

There is also a DirectCompute cloth implementation for Microsoft DirectX11. You can see Lee Howes presentation at MSDN here: http://channel9.msdn.com/Blogs/gclassy/ ... ed-Physics


  • OpenCL & DX11 cloth simulation as part of BulletSoftBody. See Bullet/Demos/OpenCLClothDemo and Bullet/Demos/DX11ClothDemo. This is an initial implementation, and there is no support for collision detection or other advanced features yet.
  • New btParallelConstraintSolver as part of BulletMultiThreaded. Although mainly targetting PlayStation 3 SPUs it also accelerates multi-core PCs. See Bullet/Demos/MultiThreadedDemo or get the spubullet-2.77 from PS3 Devnet.
  • Many more bug fixes and minor features.

Check out the precompiled Windows executables in the download section.

Some related news:

  • We forked the 3ds Max plugin, replacing PhysX by Bullet. It is open source under the MIT license and it supports .bullet export. See http://dynamica.googlecode.com for source and precompiled versions.
  • OgreKit is a new open source framework that makes very easy to develop using Bullet, Ogre, OpenAL and Lua. It directly reads Blender .blend files and works on Windows, Linux, Mac OSX and iPhone/iPad. See http://gamekit.googlecode.com
  • Cinema 4D release 12 has improved support for Bullet, including constraints and their improved soft body implementation. Cinema 4D 12 also supports .bullet export. Download a free trial demo here: http://www.maxon.net

Feedback is welcome,
Erwin


Attachments:
gpu_cloth.png
gpu_cloth.png [ 90.65 KiB | Viewed 46459 times ]
Top
 Profile  
 
PostPosted: Fri Sep 24, 2010 7:34 am 
Offline

Joined: Fri May 21, 2010 2:48 pm
Posts: 35
Very-very-very nice additions!! Downloading now!


Top
 Profile  
 
PostPosted: Fri Sep 24, 2010 8:09 am 
Offline

Joined: Fri May 21, 2010 2:48 pm
Posts: 35
A few questions after i made some tests with prebuilt binaries.
1. Should i press something or do something for particles demo to actually show particles? It's just i see only profiling info and a wrireframe cube. No particles inside, but FPS is low (checked with FRAPS) and it seems that they are computed but not drawn.
2. Are rigid bodies collisions accelerated throught OpenCL? Or it's just cloth simulation?

Forgot to mentions, that i was testing on Win7_x86, ATI 4850 with Catalyst 10.9 and Stream SDK 2.2.

PS. OGRE demo hangs after about a half a minute of game play.


Top
 Profile  
 
PostPosted: Sat Sep 25, 2010 6:03 am 
Offline

Joined: Fri May 21, 2010 2:48 pm
Posts: 35
Erwin? Could you please comment any of these?


Top
 Profile  
 
PostPosted: Sat Sep 25, 2010 10:58 am 
Offline

Joined: Mon Dec 15, 2008 6:52 pm
Posts: 14
The OpenCL cloth demo doesn't work for me on a Mac (Nvidia 330M), the flags are displayed but nothing happens. The MiniCL version works fine.

Particles Demo seems to work ok though.


Top
 Profile  
 
PostPosted: Mon Sep 27, 2010 3:31 pm 
Offline

Joined: Fri Jun 18, 2010 12:58 am
Posts: 3
ca$per wrote:
2. Are rigid bodies collisions accelerated throught OpenCL? Or it's just cloth simulation?


No. This is just very early work that we wanted to get into the tree quickly for various reasons and to see what changes we'd need to make within the bullet code to cleanly integrate accelerated computation engines. The DirectCompute version has progressed further with more optimisation of data access patterns to play with how to perform the solutions efficiently on a multithreaded wide SIMD machine. The optimisations in the DC version can be carried across to CL with minimal effort but I've not had time to test it yet.

I do have a GPU-emulation version of one-way capsule collision now that integrates into the Bullet broadphase. This will map across to actual GPU compute kernels very simply but again, just like the GPU I'm multitasking on this. Expanding it to other colliders is not a serious complication but doing two-way collisions efficiently will still need some more thought.

I can't comment on issues with the particle sim or Apple problems. I have seen an early version of this run on a mac, though, Erwin and my colleague had it running some time ago. It's possible that something changed or the changes to the build system broke something.


Top
 Profile  
 
PostPosted: Wed Nov 10, 2010 10:06 pm 
Offline

Joined: Wed Nov 10, 2010 8:57 am
Posts: 7
Hi there,

I am new to bullet, I'm using it via the ogre bullet wrapper.
My code compiles against bullet 2.76 and I was wondering if I can use the 3ds max plugin with it?

Thanks!


Top
 Profile  
 
PostPosted: Tue Feb 15, 2011 1:25 am 
Offline

Joined: Tue Feb 15, 2011 1:23 am
Posts: 1
Glad to hear about the 3ds max plugin, but will there be a 64 bit version?


Top
 Profile  
 
PostPosted: Sun Mar 06, 2011 10:00 am 
Offline

Joined: Sun Mar 06, 2011 9:54 am
Posts: 1
Very very nice release, thanks :)

I got some minor compiling errors though : on 32 bits Linux, I had to add "#include <stdio.h>" to Demos/OpenCLClothDemo/cloth.h" for sprintf to be defined and I had to add linking to the pthread library in Demos/MultiThreadedDemo/CMakeLists.txt and Demos/ThreadingDemo/CMakeLists.txt

Code:
LINK_LIBRARIES(

OpenGLSupport   BulletMultiThreaded BulletDynamics  BulletCollision LinearMath    ${GLUT_glut_LIBRARY} ${OPENGL_gl_LIBRARY} ${OPENGL_glu_LIBRARY} pthread

)


Top
 Profile  
 
Display posts from previous:  Sort by  
Post new topic Reply to topic  [ 9 posts ] 

All times are UTC


Who is online

Users browsing this forum: No registered users and 1 guest


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to:  
cron
Powered by phpBB® Forum Software © phpBB Group