irrBP - An Irrlicht - Bullet Physics Wrapper

Announce new projects or updates of Irrlicht Engine related tools, games, and applications.
Also check the Wiki
Post Reply
Zurzaza
Posts: 153
Joined: Fri Mar 26, 2010 9:41 pm
Location: Filo (FE), Italy
Contact:

irrBP - An Irrlicht - Bullet Physics Wrapper

Post by Zurzaza »

Hi all,
Yes. I know that there is already irrBullet that makes a part of this work, but i want to present you an alternative.

irrBP was born near a month ago, when irrBullet wasn't the best choice of a physics engine in irrlicht.
So i decided to make a new wrapper myself, and implementing some new features.

Main features of irrBP (in developing...):

- Bullet Manager: You'll have a bullet-manager to use like a irrlicht' scene manager.
- Full (bullet) rigid body implementation
- Constraint implementation
- Physic Camera implementation
- Rigid Body Animator's in irrlicht style (on collide, on collision release,...)
- Soft Bodies support
- Vehicle support
- No memory leaks. You don't need to manage bullet's object memory.

Some videos with irrBP in action:

- http://www.youtube.com/watch?v=PrY8e4V9rqU
- http://www.youtube.com/watch?v=6eJhWPMUyL8

I haven't got any "official" release for now. But you can download the source and compile the lib from the irrBP homepage

You can learn to use it from the doxygen documentation home page.

Thanks to:
- Buck1000 for the trimesh converter
- Cobra for the "shooting" object source.

For any suggestion and bug feedback. I'm here..

irrBP homepage
irrBP SVN


***irrBP is continue working but it won't be updated anymore due to lack of time >Read This< ***
Last edited by Zurzaza on Fri Apr 05, 2013 4:07 pm, edited 7 times in total.
serengeor
Posts: 1712
Joined: Tue Jan 13, 2009 7:34 pm
Location: Lithuania

Post by serengeor »

Nice Job, maybe it will do the job for me and I won't need to create my own wrapper from scratch (AGAIN!) :)
Working on game: Marrbles (Currently stopped).
REDDemon
Developer
Posts: 1044
Joined: Tue Aug 31, 2010 8:06 pm
Location: Genova (Italy)

Post by REDDemon »

GOOD job. hope this time we will have a complete wrapper XD maybe you can merge your work with some one that tried to do a wrapper and use both your experience to make the final wrapper :)
Junior Irrlicht Developer.
Real value in social networks is not about "increasing" number of followers, but about getting in touch with Amazing people.
- by Me
Zurzaza
Posts: 153
Joined: Fri Mar 26, 2010 9:41 pm
Location: Filo (FE), Italy
Contact:

Post by Zurzaza »

REDDemon wrote:hope this time we will have a complete wrapper
This is my task for irrBP. Hope this can be reached soon ;)
booe
Posts: 76
Joined: Thu Jul 29, 2010 2:12 pm

Post by booe »

http://www.youtube.com/watch?v=6eJhWPMUyL8
There is a box floating inside the q3 level mesh around 0:06 on the left side of the screen.
Zurzaza
Posts: 153
Joined: Fri Mar 26, 2010 9:41 pm
Location: Filo (FE), Italy
Contact:

Post by Zurzaza »

booe wrote:http://www.youtube.com/watch?v=6eJhWPMUyL8
There is a box floating inside the q3 level mesh around 0:06 on the left side of the screen.
This is a bug of irrlicht i think, because the box is standing on the ground
Brainsaw
Posts: 1176
Joined: Wed Jan 07, 2004 12:57 pm
Location: Bavaria

Post by Brainsaw »

Good luck with this wrapper. I'll keep watching the thread (although I'll most likely not use it ;) ). I also though making the IrrOde wrapper would be a fast thing to do. That was 1.5 years ago. Still: keep up the work, although your testing of IrrOde did help me a lot.
Dustbin::Games on the web: https://www.dustbin-online.de/

Dustbin::Games on facebook: https://www.facebook.com/dustbingames/
Dustbin::Games on twitter: https://twitter.com/dustbingames
Zurzaza
Posts: 153
Joined: Fri Mar 26, 2010 9:41 pm
Location: Filo (FE), Italy
Contact:

Post by Zurzaza »

Thank you brainsaw...^^

Here is some news:
Trunk: R7 [Also released a pre.release package]

Improved Memory Management
Basic Soft Body Implementation (ropes and clothes). I'm looking for a method to convert irrlicht' meshes into soft body's triangles. Coming soon..
iRobo
Posts: 26
Joined: Mon Aug 23, 2010 1:41 pm
Location: Iran
Contact:

Post by iRobo »

Hi,
Nice work :wink:
I've a problem using it. I compiled irrBP 0.1(r15) and Bullet with MSVC 2008 with no errors.
when I use irrBP in my project (the way described in doc) I got plenty of LINK2005 errors like this :

Code: Select all

Error	1	error LNK2005: "public: class std::locale::facet * __thiscall std::locale::facet::_Decref(void)" (?_Decref@facet@locale@std@@QAEPAV123@XZ) already defined in IrrBPLib.lib(CIrrBPWorld.obj)	msvcprtd.lib	iRobo
or this :

Code: Select all

Error	22	error LNK2005: __lock already defined in MSVCRTD.lib(MSVCR90D.dll)	LIBCMT.lib	iRobo
I ordered lib files like this :

Code: Select all

#pragma comment( lib, "irrlicht.lib" )
#pragma comment( lib, "IrrBPLib.lib")
#pragma comment( lib, "BulletCollision.lib")
#pragma comment( lib, "BulletDynamics.lib")
#pragma comment( lib, "BulletSoftBody.lib")
#pragma comment( lib, "LinearMath.lib")
does anyone get these errors too?
thanks.[/code]
Zurzaza
Posts: 153
Joined: Fri Mar 26, 2010 9:41 pm
Location: Filo (FE), Italy
Contact:

Post by Zurzaza »

Did you try to compile the "hello world" application with your own version of "IrrBPLib"? If not, please, can you try to compile it?
If the same errors are returned, maybe there is something wrong in "IrrBPWorld" i think. Waiting for your answer (I haven't got vs2008, sorry!)
iRobo
Posts: 26
Joined: Mon Aug 23, 2010 1:41 pm
Location: Iran
Contact:

Post by iRobo »

thank you for reply,
I get this when I try to compile "hello world" project:

Code: Select all

Error	4	fatal error C1083: Cannot open include file: 'vld.h': No such file or directory	k:\irobo\dls\irrbp\helloworld\example.cpp	9	HelloWorld
Edit :
I managed to solve this. I downloaded "Visual Leak Detector" and add its path to include directories.
then I got some errors about finding BulletCollision.lib,... I moved them to the libs folder of irrBP. "irrlicht.lib" too. "irrBPlib.lib" too. "vld.lib" too.

then I got same errors (even more than my own program):

Code: Select all

Error	1	error LNK2005: "public: char const * __thiscall std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> >::c_str(void)const " (?c_str@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QBEPBDXZ) already defined in msvcprtd.lib(MSVCP90D.dll)	IrrBPLib.lib	iRobo

Code: Select all

Error	56	error LNK2005: _printf already defined in LIBCMTD.lib(printf.obj)	MSVCRTD.lib	iRobo
is it because of msvc2008? can I find precompiled headers for 2008 somewhere?
thanks.
Last edited by iRobo on Sat Sep 18, 2010 8:35 pm, edited 1 time in total.
Zurzaza
Posts: 153
Joined: Fri Mar 26, 2010 9:41 pm
Location: Filo (FE), Italy
Contact:

Post by Zurzaza »

vld is not necessary to compile irrbplib & Helloworld. it is just a memory leak detector plugin for vs.
It seems that something in the std libraries is changed in vs 2008. I'm trying to download vs2008 from MS Dreamspark, i will solve the bug as soon as possible. Thank you for your segnalation...

EDIT: If you absolutely need to test irrBP right now, you can try to include all source files in your project. Note: you can keep a bug tracking of your bug HERE
Zurzaza
Posts: 153
Joined: Fri Mar 26, 2010 9:41 pm
Location: Filo (FE), Italy
Contact:

Post by Zurzaza »

OK. I Found and solved the bug (the guide will be updated).

You need to change the runtime linked library in the BULLET_PHYSICS project from "DLL MultiThread" to "Multithreaded" and recompile the whole libraries ;)

I tried it on MS Visual Studio 2008 Pro and...the solution works! ;)
iRobo
Posts: 26
Joined: Mon Aug 23, 2010 1:41 pm
Location: Iran
Contact:

Post by iRobo »

Hi, Thank you very much

it solved "Hello world" problem. but I have a problem. I used /clr for some reasons. and "Multi-Threaded" is in conflict with /clr. (I have to change my project's runtime to "Multi-Threaded" too, right?)

I have faced some problems with CLR before too. so I just decided to reprogram my project without /clr parameter. I think it would prevent further difficulties

thank you again
iRobo
Posts: 26
Joined: Mon Aug 23, 2010 1:41 pm
Location: Iran
Contact:

Post by iRobo »

Hi, I just recode my project and compile it with MultiThreaded option successfully and I integrate irrBP in my prj. thank you again.

I've another question. How can I create convex hull bodies for models that I load in irrlicht?

thanks.
Post Reply