Problems trying to integrate AGEIA PhysX engine on irrlicht.

If you are a new Irrlicht Engine user, and have a newbie-question, this is the forum for you. You may also post general programming questions here.
Post Reply
DW5000AD321

Problems trying to integrate AGEIA PhysX engine on irrlicht.

Post by DW5000AD321 »

y use dev-c++ and is installed in

C:\Dev-c++ , normally all packages are there with their headers and libraries... like irrlicht for example.

but AGEIA PhysX Engine is in C:\Program File\AGEIA Technologies\AGEIA PhysX SDK\

i am triyng to compile the example on this tutorial

http://www.twilightstar.net/%7Eandrew/w ... torial.htm

but mi problem is that when i do the include part i get several errors of compilation.

in the proyect properties i added the directories where PhysX Libraries were, and for the headers too.

can someone please tell me step by step how to do it correctly on Dev-C++ plz?
Baal Cadar
Posts: 377
Joined: Fri Oct 28, 2005 10:28 am
Contact:

Post by Baal Cadar »

In order to prevent those several compiler errors, you have to do several steps to fix stuff.
Sloppy questions -> Sloppy answers.

Provide *exact* error messages and more info on your setup. Your path contains several spaces, did you wrap it with ""?
dw5000ad3
Posts: 8
Joined: Tue Apr 11, 2006 1:37 am

Post by dw5000ad3 »

compilation errors like this:

In file included from
15C:\Archivosdeprograma\AGEIATechnologies\AGEIA PhysX SDK\v2.3.2\SDKs\Foundation\include\NxVec3.h:18,

from C:\Archivos de programa\AGEIA Technologies\AGEIA PhysX SDK\v2.3.2\SDKs\Foundation\include\NxBounds3.h

25 C:\Archivos de programa\AGEIA Technologies\AGEIA PhysX SDK\v2.3.2\SDKs\Foundation\include\NxBounds3.h:15, from C:\Archivos de programa\AGEIA Technologies\AGEIA PhysX SDK\v2.3.2\SDKs\Foundation\include\NxFoundation.h from C:/Archivos de programa/AGEIA Technologies/AGEIA PhysX SDK/v2.3.2/SDKs/Foundation/include/NxBounds3.h:15, from C:/Archivos de programa/AGEIA Technologies/AGEIA PhysX SDK/v2.3.2/SDKs/Foundation/include/NxFoundation.h

21 C:\Archivos de programa\AGEIA Technologies\AGEIA PhysX SDK\v2.3.2\SDKs\Foundation\include\NxFoundation.h:25, from C:\Archivos de programa\AGEIA Technologies\AGEIA PhysX SDK\v2.3.2\SDKs\Physics\include\NxPhysics.h from C:/Archivos de programa/AGEIA Technologies/AGEIA PhysX SDK/v2.3.2/SDKs/Foundation/include/NxFoundation.h:25, from C:/Archivos de programa/AGEIA Technologies/AGEIA PhysX SDK/v2.3.2/SDKs/Physics/include/NxPhysics.h

11 C:\Archivos de programa\AGEIA Technologies\AGEIA PhysX SDK\v2.3.2\SDKs\Physics\include\NxPhysics.h:21, from Invitacion.cpp from C:/Archivos de programa/AGEIA Technologies/AGEIA PhysX SDK/v2.3.2/SDKs/Physics/include/NxPhysics.h:21, from Invitacion.cpp

11 C:\C++ mis proyectos\Irrlicht\Gravedad AGEIA PhysX\Invitacion.cpp
In static member function
`static void NxMath::sinCos(NxF32, NxF32&, NxF32&)':

725 C:\Archivos de programa\AGEIA Technologies\AGEIA PhysX SDK\v2.3.2\SDKs\Foundation\include\NxMath.h

`_asm' undeclared (first use this function)

(Each undeclared identifier is reported only once for each function it appears in.)


AND MANY OTHER WARNINGS FROM THE HEADERS (LIKE IF THEY WERE WRONG BUT THEY CANT BE U_U).


if someone can help i would apreciate it.

EDITED: this is the include part of the program.

#pragma comment(lib, "PhysXLoader.lib")
#pragma comment(lib, "NxCooking.lib")
#pragma comment(lib, "Irrlicht.lib")


#include <NxPhysics.h>
#include <NxCooking.h>
#include <stdlib.h>
#include <irrlicht.h>
#include <iostream>
#include <string.h>
#include <Stream.h>

AND THIS IS MY PATH SET:

Path:%SystemRoot%\system32;%SystemRoot%;%SystemRoot%\System32\Wbem;C:\Archivos de programa\Archivos comunes\Adobe\AGL; C:\Dev-Cpp\bin; C:\Archivos de programa\AGEIA Technologies\AGEIA PhysX SDK\v2.3.2\SDKs\Cooking\include; C:\Archivos de programa\AGEIA Technologies\AGEIA PhysX SDK\v2.3.2\SDKs\Foundation\include; C:\Archivos de programa\AGEIA Technologies\AGEIA PhysX SDK\v2.3.2\SDKs\lib\win32; C:\Archivos de programa\AGEIA Technologies\AGEIA PhysX SDK\v2.3.2\SDKs\NxCharacter\include ; C:\Archivos de programa\AGEIA Technologies\AGEIA PhysX SDK\v2.3.2\SDKs\NxExtensions\include ; C:\Archivos de programa\AGEIA Technologies\AGEIA PhysX SDK\v2.3.2\SDKs\Physics\include ; C:\Archivos de programa\AGEIA Technologies\AGEIA PhysX SDK\v2.3.2\SDKs\PhysXLoader\include ;C:\Archivos de programa\QuickTime\QTSystem\
dw5000ad3
Posts: 8
Joined: Tue Apr 11, 2006 1:37 am

Post by dw5000ad3 »

i think i made a mistake putting headers in the path....
should i put the bin files from AGEIA PhysX ?
hybrid

Post by hybrid »

The tutorial is for VC++, you're probably using g++. There might be some defines wrong. Best would be to change to vc++, or check with Ageia if they support mingw/g++-win32. Or fix the headers yourself.
dw5000ad3
Posts: 8
Joined: Tue Apr 11, 2006 1:37 am

Post by dw5000ad3 »

i mailed the guy who made the tutorial, he never said that the tutorial wont work with Dev-c++ , there must be an easy way to solve this but i dont know how yet. ill keep trying other posibilities
hybrid

Post by hybrid »

Not saying that it won't work does not really help since most people just use one compiler for their projects. But the tutorial is not the problem. you should check with Ageia documentation whether it is compatible with mingw/g++-win32. The problem lies within their area of responsibility.
dw5000ad3
Posts: 8
Joined: Tue Apr 11, 2006 1:37 am

Post by dw5000ad3 »

ill keep looking for that detail you mentioned Hybrid...

anyway, can someone try to compile a program like this? but in Dev-cpp the last version (the beta one).

#pragma comment(lib, "PhysXLoader.lib")
#pragma comment(lib, "NxCooking.lib")
#pragma comment(lib, "Irrlicht.lib")

#include <NxPhysics.h>
#include <NxCooking.h>
#include <Stream.h>
#include <irrlicht.h>

int main(){
printf("have good day");
return 0;
}


You will need to install AGEIA PhysX Engine first, and link the libraries and headers. in the tutorial there is a link for downloading AGEIA PhysX.
just to see if someone can get the headers and libraries to work properly.
Post Reply