Page 7 of 29

Posted: Sun Feb 04, 2007 2:46 pm
by mr.Zog
Hi!

First of all, I really appreciate the work being done!
I've spent the last few days a lot with Irrlicht & Newton, and now I'm gonna switch over to your framework, because it just saves time and we have to be finished with our project in about 4 months (one-semester-game-project ;) )

I got a strange problem though:
A few pages back, kohaar mentioned something about mouse-sensitivity.
Now, when I run your demo-example, everything works correct.

As soon as I compile the demo and try to run it, it looks ok, but as soon as I try to look with the mouse, it "stutters" really bad.
Movement with arrowkeys works fine though, so its not a framerate problem...(?)

Do you have a clou what could cause this issue?
I mean I haven't changes anything in the code...

I'm compiling with VS2005 under WinXP and would be thankful for any comments!


edit: I've did some more tests, and found out that:
your compiled version works in every graphics mode(dx8,9,ogl)
and if I compile, in DX8 & ogl it (mouse-looking) "stutters" and in DX9 it doesn't...it's really weird.

Posted: Tue Feb 06, 2007 12:10 pm
by white tiger
edit: I've did some more tests, and found out that:
your compiled version works in every graphics mode(dx8,9,ogl)
and if I compile, in DX8 & ogl it (mouse-looking) "stutters" and in DX9 it doesn't...it's really weird.
Maybe on dx8\ogl the FPS change a lot during game execution and on dx9 change a bit (ion your implementation of this two APIs) .. however to be sure wait for the net release :D on my conputer this doesn't happen in the next release

-------------------------------------

i've make some progress. implementing 2 getClosestPoint function (one from 2 bodies and one from a body and a point), create a class to management camera FPS. now to create a camera FPS cimply call IWorld::createCameraFPS (in the current release you need to build the camera manually) and ported some functions from newton.

unfortunately i have problem to make ragdoll working :(

Posted: Tue Feb 06, 2007 10:11 pm
by mr.Zog
I think I found the problem:
I put

Code: Select all

p_world->update();
at the end of the mainloop (right before driver->endScene(); ) and now I can look smoothly with the mouse in all graphic modes :)

Posted: Wed Feb 07, 2007 12:35 pm
by white tiger
perfect :D

Posted: Mon Feb 12, 2007 10:52 pm
by Lorian
g++ -o materialsandshapes materials\ and\ shapes.cpp -I/usr/local/include/irrnewt/ -lirrnewt -lIrrlicht -lGLU -lXxf86vm

Yes my friends, that is the sound of IrrNewt working on Linux. :)

At least, partially anyway, so far the only example I have got to work is the materials and shapes one, which explodes when you exit it...
*** glibc detected *** ./materialsandshapes: double free or corruption (!prev): 0x088e2118 ***

Still, good to have it working. If I can work out the kinks I will post it up.

Posted: Wed Feb 14, 2007 7:18 pm
by Nargil
g++ -o materialsandshapes materials\ and\ shapes.cpp -I/usr/local/include/irrnewt/ -lirrnewt -lIrrlicht -lGLU -lXxf86vm

Where did you get the linux library irrnewt from ?

Posted: Wed Feb 14, 2007 7:26 pm
by white tiger
great :D currently i'm working on 0.3 release. i'm improving character controling, write a new example on it. I have already writen a ICameraBodyFPS class. I have also ported some functions from newton and write some help function (addGlobalForce, addLocalForce, ...).

There will be 12 examples in irrnewt 0.3 :D

There is a problem. Next release will contain those:

1)irrnewt.dll and irrnewt.lib for visual studio
2)irrnewt.dll and irrnewt.lib for win32 gcc
3)irrnewt source
4)examples source
5)examples win32 binaries
6)documentation
7)media file to run examples

all of those in a zip file make the zip file big. I propose to release two zip files. First 1-2-3-4-6-7 and second 5. What about?

Posted: Wed Feb 14, 2007 7:38 pm
by white tiger
Where did you get the linux library irrnewt from ?
i'm sorry but i don't understand :wink:

irrnewt compilable on win32 g++ (Cygwin or MinGW "release" (i don't know if this is the correct term)) means that you can compile it trought g++ also under linux (the g++'s binaries made for your distribution of course) and on all platform in wich you can compile g++ (or download a precompiled version)

From http://gcc.gnu.org/
"We strive to provide regular, high quality releases, which we want to work well on a variety of native and cross targets (including GNU/Linux), "

Of course maybe we need to change some g++'s command line parameters on linux :wink:

Posted: Wed Feb 14, 2007 8:08 pm
by Nargil
sure, but even the header files aint working. There are a lot of errors such as:
_cdecl being not recognized. After deleting all the _cdecl and __cdecl calls there are also another errors such as:

Code: Select all

/home/nargil/Desktop/C++/Linux/irrlicht_rpg6/include/dll_exports.hpp:9: warning: ignoring #pragma warning 
/home/nargil/Desktop/C++/Linux/irrlicht_rpg6/include/dll_exports.hpp:25: warning: no newline at end of file
/home/nargil/Desktop/C++/Linux/irrlicht_rpg6/include/pos_rot.hpp:59: warning: no newline at end of file
/home/nargil/Desktop/C++/Linux/irrlicht_rpg6/include/irrtonewt.hpp:22: warning: no newline at end of file
/home/nargil/Desktop/C++/Linux/irrlicht_rpg6/include/structures.hpp:253: warning: no newline at end of file
/home/nargil/Desktop/C++/Linux/irrlicht_rpg6/include/collision_manager.hpp:63: warning: no newline at end of file
/home/nargil/Desktop/C++/Linux/irrlicht_rpg6/include/world.hpp:240: warning: no newline at end of file
/home/nargil/Desktop/C++/Linux/irrlicht_rpg6/include/intersection_point.hpp:42: warning: no newline at end of file
/home/nargil/Desktop/C++/Linux/irrlicht_rpg6/include/ragdoll.hpp:65: warning: no newline at end of file
/home/nargil/Desktop/C++/Linux/irrlicht_rpg6/include/body.hpp:396: warning: no newline at end of file
/home/nargil/Desktop/C++/Linux/irrlicht_rpg6/include/contact.hpp:30: warning: no newline at end of file
/home/nargil/Desktop/C++/Linux/irrlicht_rpg6/include/material_pair.hpp:101: warning: no newline at end of file
/home/nargil/Desktop/C++/Linux/irrlicht_rpg6/include/material_pair_and_contact.hpp:42: warning: no newline at end of file
/home/nargil/Desktop/C++/Linux/irrlicht_rpg6/include/material_collision_callback.hpp:48: warning: no newline at end of file
/home/nargil/Desktop/C++/Linux/irrlicht_rpg6/include/joint.hpp:98: warning: no newline at end of file
/home/nargil/Desktop/C++/Linux/irrlicht_rpg6/include/vehicle_simple.hpp:124: warning: no newline at end of file
/home/nargil/Desktop/C++/Linux/irrlicht_rpg6/include/vehicle_tire.hpp:194: warning: no newline at end of file
/home/nargil/Desktop/C++/Linux/irrlicht_rpg6/include/utils.hpp:64: warning: no newline at end of file
/home/nargil/Desktop/C++/Linux/irrlicht_rpg6/include/vehicle_car.hpp:49: warning: no newline at end of file
/home/nargil/Desktop/C++/Linux/irrlicht_rpg6/include/joint_universal.hpp:38: warning: no newline at end of file
/home/nargil/Desktop/C++/Linux/irrlicht_rpg6/include/joint_upvector.hpp:57: warning: no newline at end of file
/home/nargil/Desktop/C++/Linux/irrlicht_rpg6/include/joint_hinge.hpp:46: warning: no newline at end of file
/home/nargil/Desktop/C++/Linux/irrlicht_rpg6/include/joint_corkscrew.hpp:36: warning: no newline at end of file
/home/nargil/Desktop/C++/Linux/irrlicht_rpg6/include/joint_slider.hpp:42: warning: no newline at end of file
/home/nargil/Desktop/C++/Linux/irrlicht_rpg6/include/joint_ball.hpp:37: warning: no newline at end of file
/home/nargil/Desktop/C++/Linux/irrlicht_rpg6/include/IrrNewt.hpp:79: warning: no newline at end of file
/home/nargil/Desktop/C++/irrlicht-1.2/include/ISceneUserDataSerializer.h:25: warning: ‘class irr::scene::ISceneUserDataSerializer’ has virtual functions but non-virtual destructor
/home/nargil/Desktop/C++/Linux/irrlicht_rpg6/include/structures.hpp:102: warning: ‘irr::newton::SJointUpVector::PinDir’ will be initialized after
/home/nargil/Desktop/C++/Linux/irrlicht_rpg6/include/structures.hpp:101: warning:   base ‘irr::newton::SJoint’
/home/nargil/Desktop/C++/Linux/irrlicht_rpg6/include/structures.hpp:101: warning:   when initialized here
/home/nargil/Desktop/C++/Linux/irrlicht_rpg6/include/structures.hpp:112: warning: ‘irr::newton::SJointHinge::PinDir’ will be initialized after
/home/nargil/Desktop/C++/Linux/irrlicht_rpg6/include/structures.hpp:106: warning:   base ‘irr::newton::SJoint’
/home/nargil/Desktop/C++/Linux/irrlicht_rpg6/include/structures.hpp:106: warning:   when initialized here
/home/nargil/Desktop/C++/Linux/irrlicht_rpg6/include/structures.hpp:150: warning: ‘irr::newton::SJointSlider::PinDir’ will be initialized after
/home/nargil/Desktop/C++/Linux/irrlicht_rpg6/include/structures.hpp:144: warning:   base ‘irr::newton::SJoint’
/home/nargil/Desktop/C++/Linux/irrlicht_rpg6/include/structures.hpp:144: warning:   when initialized here
/home/nargil/Desktop/C++/Linux/irrlicht_rpg6/include/structures.hpp:186: warning: ‘irr::newton::STire::BodyOffsetFromSceneNode’ will be initialized after
/home/nargil/Desktop/C++/Linux/irrlicht_rpg6/include/structures.hpp:185: warning:   ‘irr::scene::ISceneNode* irr::newton::STire::Node’
/home/nargil/Desktop/C++/Linux/irrlicht_rpg6/include/structures.hpp:167: warning:   when initialized here
/home/nargil/Desktop/C++/Linux/irrlicht_rpg6/include/structures.hpp:185: warning: ‘irr::newton::STire::Node’ will be initialized after
/home/nargil/Desktop/C++/Linux/irrlicht_rpg6/include/structures.hpp:176: warning:   ‘irr::f32 irr::newton::STire::Width’
/home/nargil/Desktop/C++/Linux/irrlicht_rpg6/include/structures.hpp:167: warning:   when initialized here
/home/nargil/Desktop/C++/Linux/irrlicht_rpg6/include/structures.hpp:170: error: no matching function for call to ‘irr::newton::SPosRot::SPosRot(irr::newton::SPosRot)’
/home/nargil/Desktop/C++/Linux/irrlicht_rpg6/include/pos_rot.hpp:31: note: candidates are: irr::newton::SPosRot::SPosRot(irr::newton::SPosRot&)
/home/nargil/Desktop/C++/Linux/irrlicht_rpg6/include/pos_rot.hpp:27: note:                 irr::newton::SPosRot::SPosRot(irr::core::vector3df, irr::core::vector3df)
/home/nargil/Desktop/C++/Linux/irrlicht_rpg6/include/pos_rot.hpp:22: note:                 irr::newton::SPosRot::SPosRot()
/home/nargil/Desktop/C++/Linux/irrlicht_rpg6/include/structures.hpp:216: warning: ‘irr::newton::SCar::UpVector’ will be initialized after
/home/nargil/Desktop/C++/Linux/irrlicht_rpg6/include/structures.hpp:203: warning:   ‘irr::f32 irr::newton::SCar::TiresMass’
/home/nargil/Desktop/C++/Linux/irrlicht_rpg6/include/structures.hpp:190: warning:   when initialized here
/home/nargil/Desktop/C++/Linux/irrlicht_rpg6/include/structures.hpp:218: warning: ‘irr::newton::SCar::TiresOffsetFromChassis’ will be initialized after
/home/nargil/Desktop/C++/Linux/irrlicht_rpg6/include/structures.hpp:211: warning:   ‘irr::f32 irr::newton::SCar::SuspensionShock’
/home/nargil/Desktop/C++/Linux/irrlicht_rpg6/include/structures.hpp:190: warning:   when initialized here
/home/nargil/Desktop/C++/Linux/irrlicht_rpg6/include/structures.hpp:215: warning: ‘irr::newton::SCar::TiresBodyOffsetFromSceneNode’ will be initialized after
/home/nargil/Desktop/C++/Linux/irrlicht_rpg6/include/structures.hpp:197: warning:   ‘irr::newton::IBody* irr::newton::SCar::ChassisBody’
/home/nargil/Desktop/C++/Linux/irrlicht_rpg6/include/structures.hpp:190: warning:   when initialized here
/home/nargil/Desktop/C++/Linux/irrlicht_rpg6/include/structures.hpp:195: error: no matching function for call to ‘irr::newton::SPosRot::SPosRot(irr::newton::SPosRot)’
/home/nargil/Desktop/C++/Linux/irrlicht_rpg6/include/pos_rot.hpp:31: note: candidates are: irr::newton::SPosRot::SPosRot(irr::newton::SPosRot&)
/home/nargil/Desktop/C++/Linux/irrlicht_rpg6/include/pos_rot.hpp:27: note:                 irr::newton::SPosRot::SPosRot(irr::core::vector3df, irr::core::vector3df)
/home/nargil/Desktop/C++/Linux/irrlicht_rpg6/include/pos_rot.hpp:22: note:                 irr::newton::SPosRot::SPosRot()
/home/nargil/Desktop/C++/Linux/irrlicht_rpg6/include/irrnewt_base.hpp:22: warning: ‘class irr::newton::IrrNewt_Base’ has virtual functions but non-virtual destructor
/home/nargil/Desktop/C++/Linux/irrlicht_rpg6/include/collision_manager.hpp:22: warning: ‘class irr::newton::ICollisionManager’ has virtual functions but non-virtual destructor
/home/nargil/Desktop/C++/Linux/irrlicht_rpg6/include/world.hpp:44: warning: ‘class irr::newton::IWorld’ has virtual functions but non-virtual destructor
/home/nargil/Desktop/C++/Linux/irrlicht_rpg6/include/ragdoll.hpp:33: error: extra qualification ‘irr::newton::IRagDoll::’ on member ‘build’
/home/nargil/Desktop/C++/Linux/irrlicht_rpg6/include/ragdoll.hpp:21: warning: ‘class irr::newton::IRagDoll’ has virtual functions but non-virtual destructor
/home/nargil/Desktop/C++/Linux/irrlicht_rpg6/include/ragdoll.hpp:40: warning: ‘class irr::newton::IRagDollBone’ has virtual functions but non-virtual destructor
/home/nargil/Desktop/C++/Linux/irrlicht_rpg6/include/body.hpp:28: warning: ‘class irr::newton::IBody’ has virtual functions but non-virtual destructor
/home/nargil/Desktop/C++/Linux/irrlicht_rpg6/include/tree_body.hpp:19: warning: ‘class irr::newton::ITreeBody’ has virtual functions but non-virtual destructor
/home/nargil/Desktop/C++/Linux/irrlicht_rpg6/include/material_collision_callback.hpp:18: warning: ‘class irr::newton::IMaterialCollisionCallback’ has virtual functions but non-virtual destructor
/home/nargil/Desktop/C++/Linux/irrlicht_rpg6/include/material.hpp:21: warning: ‘class irr::newton::IMaterial’ has virtual functions but non-virtual destructor
/home/nargil/Desktop/C++/Linux/irrlicht_rpg6/include/body_controller.hpp:17: warning: ‘class irr::newton::ICharacterController’ has virtual functions but non-virtual destructor
/home/nargil/Desktop/C++/Linux/irrlicht_rpg6/include/joint.hpp:21: warning: ‘class irr::newton::IJoint’ has virtual functions but non-virtual destructor
/home/nargil/Desktop/C++/Linux/irrlicht_rpg6/include/vehicle_simple.hpp:22: warning: ‘class irr::newton::IVehicleSimple’ has virtual functions but non-virtual destructor
/home/nargil/Desktop/C++/Linux/irrlicht_rpg6/include/vehicle_tire.hpp:22: warning: ‘class irr::newton::IVehicleTire’ has virtual functions but non-virtual destructor
/home/nargil/Desktop/C++/Linux/irrlicht_rpg6/include/utils.hpp:22: warning: ‘class irr::newton::IUtils’ has virtual functions but non-virtual destructor
/home/nargil/Desktop/C++/Linux/irrlicht_rpg6/include/vehicle_car.hpp:24: warning: ‘class irr::newton::ICar’ has virtual functions but non-virtual destructor
/home/nargil/Desktop/C++/Linux/irrlicht_rpg6/include/joint_universal.hpp:13: warning: ‘class irr::newton::IJointUniversal’ has virtual functions but non-virtual destructor
/home/nargil/Desktop/C++/Linux/irrlicht_rpg6/include/joint_upvector.hpp:15: warning: ‘class irr::newton::IJointUpVector’ has virtual functions but non-virtual destructor
/home/nargil/Desktop/C++/Linux/irrlicht_rpg6/include/joint_hinge.hpp:13: warning: ‘class irr::newton::IJointHinge’ has virtual functions but non-virtual destructor
/home/nargil/Desktop/C++/Linux/irrlicht_rpg6/include/joint_corkscrew.hpp:13: warning: ‘class irr::newton::IJointCorkscrew’ has virtual functions but non-virtual destructor
/home/nargil/Desktop/C++/Linux/irrlicht_rpg6/include/joint_slider.hpp:13: warning: ‘class irr::newton::IJointSlider’ has virtual functions but non-virtual destructor
/home/nargil/Desktop/C++/Linux/irrlicht_rpg6/include/joint_ball.hpp:13: warning: ‘class irr::newton::IJointBall’ has virtual functions but non-virtual destructor
:: === Build finished: 9 errors, 72 warnings ===
my cpp file:

Code: Select all

#include <irrlicht.h>
#include <IrrNewt.hpp>
#include "newton.h"
#include <iostream>
#include <vector>
#include <cstdio>
#include <cstdlib>
#include <wchar.h>


using namespace irr;
using namespace std;
using namespace core;
using namespace scene;
using namespace video;
using namespace io;
using namespace gui;


int main()
{
    return 0;
}

Posted: Sat Feb 17, 2007 2:40 pm
by white tiger
yes, in fact i have saied that the next release will be compilable on linux. I have solved those problems at all :D

Posted: Sun Feb 18, 2007 3:56 pm
by white tiger
News:

I have improved character controlling a lot.

Now there are jump() , crouch() (from standing to crouching) and stand() (from crouching to standing) functions. Of course all functions have done tests before jumping\crouching. For example if you call jump() and the body is already jumping and\or it doesn't have anthing under its feet no happen.

I have also added two functions, setClimbStairForce() and setStairMaxHeight(). These allow to climb stair in automatic, without jumping (irrnewt check if a stair is in body movement direction and add the force specified by setClimbStairForce() if yes)

bye

Posted: Sun Feb 18, 2007 7:38 pm
by Nargil
white tiger wrote:yes, in fact i have saied that the next release will be compilable on linux. I have solved those problems at all :D
When can we expect the next realease ? Because I dont know if I should wait for it, or try to implement PhysX myself.

Posted: Mon Feb 19, 2007 3:40 pm
by white tiger
next release will be released when it is ready. I don't know the exact date.

Posted: Thu Feb 22, 2007 7:23 pm
by white tiger
I have compiled irrnewt on linux g++ (previously i have compiled it on win32 g++). Next release of irrnewt will be a static library under linux (like irrlicht and newton)

screen-shot (car example):

Image

in linux console:
root@1[IrrNewt_src]# g++ -I"../../../irrlicht 1.2/include" -I"../../../newtonLinux/newtonSDK/sdk" *.cpp -c

# ar rcsv libirrnewt.a *.o

# g++ -I"../../../irrlicht 1.2/include" -I"../../../newtonLinux/newtonSDK/sdk" -L"./" "hello world.cpp" -lIrrlicht "/usr/lib/libGL.so.1.2" "/usr/lib/libGLU.so.1.3.060401" -lirrnewt -lnewton -ohello_world.bin

# ./hello world.bin

Posted: Wed Mar 07, 2007 5:36 am
by kburkhart84
I'm probably going to use this thingy in some projects of my own and have a couple questions. If I have a character model(don't care about ragdoll), and I shoot it, is there a way to say whether it was the leg or arm or whatever without doing separate models? Also, can you set your own callback functions for when specific objects collide?? Like if I make an asteroid game, if I want the asteroids to bounce off of each other, that shouldn't be too hard, but if when they hit the ship, I need to damage the ship, then I'd need my own callback function right. Also, is it possible with your wrapper and Newton to do Space physics without gravity and without air pressure to stop objects over time, like as if you were in outer space obviously??? Can this be done, or this newton not set to do this.