C4 Engine Bullet Integration

Show what you made with Bullet Physics SDK: Games, Demos, Integrations with a graphics engine, modeler or any other application
Post Reply
JamesH
Posts: 19
Joined: Mon Oct 16, 2006 6:19 pm

C4 Engine Bullet Integration

Post by JamesH » Sat Nov 29, 2008 7:16 pm

This is an integration of Bullet into the C4 Engine. The demo isn't anything fancy graphics-wise but is just a series of test worlds. The main demo is coming along later and is based around the assets from Rabbit project. The minimum graphics requirements are here, and at the moment it's only for windows - I'll be working on a Mac version when I buy a Mac shortly.

This is a first beta release and I'll post the source later next week over in the Community Contributed Tools section of the C4 forums. I've created a self contained download that will just run once extracted, no need to copy anything else or install anything. The Bullet integration has improved loads since I first used it, it fact the way it handles static meshes (I've created them as static shapes in a single body - I'll break them down by zones later) doesn't impact performance as much as they do in PhysX. I do think the Demo world and Cemetery run faster.

The Demo is built against C4 1.4.10 and Bullet 2.7.3.

This is brief description on getting up and running with the C4 Bullet Integration. This release is an early Beta as there are a few issues to fix, but it is playable.

Download

Download from here, 80MB.

Installation

Just Extract the archive somewhere on your harddrive and double click C4.exe to run.

Running

From the main screen select Start Single Player and choose one of the worlds. There are only a few at the moment as they were used to test the Bullet Features.

I have included the C4 PhysX user guide that I initially wrote for the C4 - PhysX integration, some of the content holds true for the Bullet integration as well, and I haven't got round to updating it yet. The Bullet Editor Page in the World Editor is not covered yet - but I will get around to this in the next few weeks. At least it will give you an idea on how to open the editor and change the worlds or create new ones.
There is also a World Editor pluign for Bullet functions that can save a model using convex decomposition as a Collada file. I'll create a document for this - as it's not entirely straight forward.

For Beginners to C4, check out the book, the Beginners Guide to the C4 Engine available from here is also a good starting point. Also the wiki, located here will explain a lot as well.

Features
  • Rigid Bodies and Constraints with configurable settings
    Image
  • SoftBodies with configurable Settings, the shadows are broken at the moment for the soft bodies and I'm waiting for the soft shadow solution in C4 before I attempt to fix this. But at least it gives you an idea...
    Image
  • ConvexDecomposition with configurable settings
    Image
  • Just the btPointToPointConstraint at the moment.
World Test Files
  • Physics-01 - General Rigid Body test using convex shapes for the barrels and crates.
  • Physics-02 - General Rigid Body test using primitive boxes and spheres as well as the convex shapes.
  • Physics-03 - Lots of the above.
  • Physics-04 - Lots and lots of the above.
  • Physics-05 - A scene with constraints and rigid bodies.
  • Physics-Base - A starting world to create your own world.
  • Physics-Blocker - Using a panel and a script (from the graphical script editor) to delete a static body.
  • Physics-Column - Two columns, one created using a convex rigid body, the other one created using convexdecomposition saved to a file and loaded at runtime.
  • Physics-Column-SB - Two columns, one created using convexdecomposition saved to a file and loaded at runtime, and the other is a softbody
  • Physics-Couch - A couch's collision meshes for the cushions created with ConvexDecomposition at runtime.
  • Physics-Door - A kinematic Actor used as a door.
  • Physics-Lasers - A world that contains two zones, and the rigid bodies pass between each
  • Physics-Ninja - A character model thats cllision mesh loaded from a file (initially generated using convex decomposition)
  • Physics-Ninja-SB - a soft body version of the Ninja character - the constraints need a little work yet

JamesH
Posts: 19
Joined: Mon Oct 16, 2006 6:19 pm

Re: C4 Engine Bullet Integration

Post by JamesH » Sun Nov 30, 2008 1:00 pm

I've updated the archive with a few fixes
  • Moved the simulation to a fixed timestep.
  • Changed the hullShape margin to 0.001F and this reduces the noticeable instability in worlds 01 and 02.
  • Fixed the sleeping actors not activating when the gravity is changed using the panel.
Also to view the debug wireframe at any time, open the command console (press the key directly beneath the ESC key) and type

Code: Select all

pdebug 1
to change it back

Code: Select all

pdebug 0

JamesH
Posts: 19
Joined: Mon Oct 16, 2006 6:19 pm

Re: C4 Engine Bullet Integration

Post by JamesH » Sun Nov 30, 2008 5:38 pm

Ok, final update for the evening, fixed a stepsimulation issue and updated the archive

JamesH
Posts: 19
Joined: Mon Oct 16, 2006 6:19 pm

Re: C4 Engine Bullet Integration

Post by JamesH » Tue Dec 02, 2008 10:03 pm

I've uploaded a new archive, it fixes quite a lot of issues. I've still got a bit of work to do on softbodies, the Controller settings for joints and the BulletScene node.

JamesH
Posts: 19
Joined: Mon Oct 16, 2006 6:19 pm

Re: C4 Engine Bullet Integration

Post by JamesH » Thu Dec 04, 2008 7:23 pm

I've uploaded a new version that's built against 273SP1

If you are a C4 licensee, then the source is available from here

Post Reply