Page 3 of 4

Posted: Sat Feb 28, 2009 11:13 am
by Frank Dodd
Cool video Alvaro! It makes a big difference to the interaction with the level obviously, but I think its a bit more than that I still get vertigo when I'm looking over the edge of a virtual cliff :D your project is coming along very nicely.

Posted: Sun Mar 01, 2009 7:08 pm
by Frank Dodd
Please find and updated the Beta Release of the wrapper Please keep in mind that this is still a beta release and has not replaced the last official release yet.

Along with some corrections this version also includes the ability to Create, Lock and Unlock images, a Maya camera courtesy of Alvaro and new commands for the push affector and Spherical Terrain. The documentation has been updated and there are are another six examples.

I hope you enjoy the update.

Posted: Sun Mar 01, 2009 10:30 pm
by afecelis
Fantastic!
Thanks Frank! :D Your wrapper rocks! I can never be tired of saying so.

testing it out now.

regards,
Alvaro

Posted: Fri Mar 06, 2009 5:57 pm
by afecelis
Frank's having some issues with his web account, so while he fixes things up there's a mirror to latest beta here:
http://files.wildspad.com/afecelis/irrl ... v0_6_1.zip

regards,

Alvaro

Posted: Mon Mar 09, 2009 7:37 pm
by Frank Dodd
Hi Guys,

I have just posted a new wrapper this now supports more commands and is essentially just a few tweaks: -
  • Corrections to allow compilation under Linux without modification
  • Captured keyboard commands are now also sent to the active camera.
  • Correction to example 44 to prevent a crash under build for Direct3D
  • Corrections to build for DirectX to support all 236 commands in the library
The ms version of the DLL is now fully up to date and I have managed to compile the wrapper on Linux (Fedora 4). My thanks to everyone with their help on this.

Many thanks for your work on this Alvaro!

Posted: Mon Mar 09, 2009 8:22 pm
by afecelis
this is great news! :) The moment I was waiting for! :D
Thanks a lot TO YOU Frank for your hard work and perseverance. ;)

I want to see it running in Linux! ;)
regards,
Alvaro

PS. Mirrored here:
http://files.wildspad.com/afecelis/irrl ... rapper.zip
http://files.wildspad.com/afecelis/irrl ... rapper.zip

Posted: Tue Mar 24, 2009 3:25 am
by frost_bite
I am Looking forward to the next release of IrrlichtWrapper, with Irrlicht 1.5 support.

Any idea when it will work with irrlicht 1.5?

Posted: Wed Jul 29, 2009 11:09 pm
by Frank Dodd
Sorry about the late reply frost_bite, I have no plans to update to 1.5 at the moment as it would require substantial modifications to the custom nodes and my time is being taken up by my work on two complimentary libraries for a form of simple MMO Communications and AI.

Posted: Fri Oct 30, 2009 11:54 am
by tinhtoitrangtay
It can't work on Irrlicht 1.6

Posted: Thu Mar 25, 2010 12:24 am
by Frank Dodd
Hi Guys,

I have just released the latest this now exposes 289 commands through a C interface and runs on Irrlicht 1.7.1.

Many thanks to Agamemnus and the_car and of course to all the guys working on Irrlicht.

Posted: Fri Apr 30, 2010 7:36 am
by Innopeor
Im interested in some examples contained in this wrapper, still in somewhere those examples written in c++ instead than bas?

Posted: Sun May 09, 2010 2:53 pm
by Frank Dodd
Innopeor wrote:Im interested in some examples contained in this wrapper, still in somewhere those examples written in c++ instead than bas?
My apologies for the late reply I am not receiving notifications of new postings at the moment.

None of these examples are written in C++ they only exist in BASIC. Translating them to C++ would not be difficult it would just take some time. It would be a matter of looking up each of the Irr* commands in the source and copying out the code in the function. It certainly would not make for good C++ code but it would make a good example of the sequence of calls and values that were required.

Posted: Sun May 09, 2010 3:01 pm
by Frank Dodd
Hello Everone

I have just posted the latest wrapper this now supports 332 commands: -
  • Imported Blindside's XEffects modules
  • Imported Bitplane's Batching Mesh module
  • Better GUI support
  • Added in lots of new examples and lots of new commands
This distribution is now compiled with MS by default and will work with DirectX out of the box. The wrapper is also compiled to Fedora 11 binaries although I recommend Linux users recompile their own library.

My most sincere thanks to everyone that contributed modules, advice and code for this version of the wrapper it is absolutely invaluable.

Posted: Wed May 26, 2010 7:41 am
by chung
i have tested the irrstop command with window close , but when i restart irrrunning remain false and it doesnt work.

that's why i suggest you to add to the wrapper a irrclose (closedevice) command to use as follow :

restart=0
debut:
irrstart(...)
while irrrunning
...
wend
irrclose
irrstop
if restart=0 then restart=1:goto debut

don't work

the following works (i have not tested it with the gui)

restart=0
debut:
irrstart(...)
while irrrunning
... irrclose
wend
irrstop
if restart=0 then restart=1:goto debut

other commands i suggest you to add , as i use them in my flight simulator :

irrsetnoderotation123 : an easy way to reach any position with 3 angles , using quaternions (not so easy with irrsetnoderotation )

irrdraw2dline : draw 2d lines

irrdraw2dimagescale : draw 2d images with resize

Code: Select all

extern "C" __declspec(dllexport) void Irrclose(void)
{
	device->closeDevice();
return ;
}


extern "C" __declspec(dllexport) void Irrsetnoderotation123
              (ISceneNode * testNode,f32 const o1,f32 const o2,f32 const o3) 
{ 
   quaternion rot1;
   rot1.fromAngleAxis(o1*DEGTORAD,vector3df(0,1,0));
   quaternion rot2;
   rot2.fromAngleAxis(o2*DEGTORAD,vector3df(0,0,1));
   quaternion rot3;
   rot3.fromAngleAxis(o3*DEGTORAD,vector3df(1,0,0));
   quaternion rot123=rot3*(rot2*rot1);
   
   vector3df eulers; 
   rot123.toEuler(eulers); //... in radians 
   eulers *= RADTODEG;   //... and now in degrees 
   testNode->setRotation(eulers); 
      
return;
} 


extern "C" __declspec(dllexport) void irrdraw2dline(s32 const x0,s32 const y0,s32 const x1,s32 const y1,
                                 u32 const A,u32 const R,u32 const G,u32 const B )
{
       position2d<s32> xy0=position2d<s32>(x0,y0);
       position2d<s32> xy1=position2d<s32>(x1,y1);
       driver->draw2DLine(xy0,xy1,SColor(A,R,G,B) );   
return ;
} 


extern "C" __declspec(dllexport) void  irrdraw2dimagescale(
                                video::ITexture * texture,
                                int TX,int TY,int BX,int BY,
                                int TX2,int TY2,int BX2,int BY2,
                                bool usealpha )
{
    driver->draw2DImage(
            texture,
            rect<s32>(TX2,TY2,BX2,BY2),
            rect<s32>(TX,TY,BX,BY),
            NULL,
            NULL,usealpha);
return ;
}
:roll:

Posted: Thu May 27, 2010 10:57 pm
by Frank Dodd
Thanks Chung I will take a look into the items you have highlighted.

There is a pitch, yaw, roll based node control in:
IrrSetNodeRotationPositionChange

There is also a 2D image draw with scaling too in:
IrrDraw2DImageElementStretch