PhysX wrapper for Blitz3D

Blitz3D Forums/Blitz3D Userlibs/PhysX wrapper for Blitz3D

The forum is locked. These are the original blitzbasic.com forums, kept so they can still be read. No new topics, replies or edits can be made here. To join in, head over to the Blitz3D+ forums.

Hi,

Maybe a pb with the BLITZPX.DLL . It's different of the Blitz3D dll's wrapper, BUT, SAME NAME !!!

JP
Edit : My test code works well with the "official" header without any change . This is a...what can i say...a "sort of validation" of my DECLS converter. Ho, IT'S WORKS...surprise.... ;-)

// Test Blitz3D SDK and PhysX'S Rubux wrapper
#include <Windows.h>
#include <math.h>
#include <stdio.h>
#include <time.h>
#include <Blitzpx.h> // Official Rubux header file.
#include <blitz3dsdk.h>

int main( int argc, char** argv ){

    // #include "INCLUDE_physx.cpp" // My Physx declaration
    srand(time(NULL)); // random generator

	bbBeginBlitz3D(); // Init SDK

    bbSetBlitz3DDebugMode(1);

	bbGraphics3D(800, 600, 32, 0);

    int cam = bbCreateCamera();
    bbPositionEntity (cam,0,3,-10);

    int plane   = bbCreatePlane();
    int Texture = bbLoadTexture("cell.bmp");
    bbEntityTexture (plane,Texture);
    int miroir = bbCreateMirror(plane) 

    int light = bbCreateLight();
    bbRotateEntity (light,0,0,140);

	pxCreateWorld(1, "key");
	pxSetGravity(0, -10, 0);

    int entity = bbCreateCube();
	bbScaleMesh (entity,0.5,0.5,0.5);
    bbEntityColor(entity,rand() % 255,rand() % 255,rand() % 255);
    bbEntityTexture (entity,Texture);

    int body = pxBodyCreateCube(1,1,1,5); // Create body. Size==> Blitz_Size*2
    pxBodySetPosition(body,0,7,0);
    pxBodySetRotation(body,rand() % 360,rand() % 360,rand() % 360);

	while (!bbKeyHit(KEY_ESCAPE)) {

        if (bbKeyHit(KEY_1))
            {
	  		pxBodyAddForce(body, 5, 0, 0, 2);
			}
        if (bbKeyHit(KEY_2))
            {
	  		pxBodyAddForce(body, 0, 5, 0, 2);
			}
        if (bbKeyHit(KEY_3))
            {
	  		pxBodyAddForce(body, 0, 0, 5, 2);
			pxBodyAddLocalForceAtLocalPos(body,0,0,3,-1,-1,-2,2);
			}
 		bbUpdateWorld();

		pxRenderPhysic(30,0);


	    bbPositionEntity (entity,pxBodyGetPositionX(body),pxBodyGetPositionY(body),pxBodyGetPositionZ(body));
    	bbRotateEntity (entity, pxBodyGetRotationPitch(body),pxBodyGetRotationYaw(body),pxBodyGetRotationRoll(body));

		bbRenderWorld();

		bbFlip();
	}

	bbEndBlitz3D();

	return 0;
}