IrrNewt irrlicht\newton framework >> SVN access

Announce new projects or updates of Irrlicht Engine related tools, games, and applications.
Also check the Wiki
Dances
Posts: 454
Joined: Sat Jul 02, 2005 1:45 am
Location: Canada
Contact:

Post by Dances »

white tiger wrote:
because I don't think jump was working as it should...
What's the problem?
No matter how I coded it or what I set either jump value to my character just wouldn't jump. I eventually did it myself by testing how much the character was moving on Y, but then moved on to drawing a line and seeing if it collides.

However, I still haven't gotten to changing to 0.4 yet, it may well work properly in it.
buhatkj
Posts: 444
Joined: Fri Dec 12, 2003 4:53 am
Contact:

Post by buhatkj »

just want to thank you for 0.4, it's very impressive. I got it integrated with irredit this weekend, and now I can add objects to IrrEdit, and depending on the ID I automatically build newton bodies at scene load and have fully simulated objects without hard coding them at all :-)
I am really glad you didnt use custom scene nodes for your body types, otherwise none of that would be practical.
My irrlicht-based projects have gone underground for now, but if you want, check out my webcomic instead! http://brokenboomerang.net
white tiger
Posts: 269
Joined: Tue Oct 31, 2006 3:24 pm
Contact:

Post by white tiger »

you're welcome :wink:
joshcryer
Posts: 46
Joined: Thu Sep 13, 2007 8:57 am
Contact:

Post by joshcryer »

Hey guys, I'm trying to do sphere collisions with meshes,and I am having a bit of trouble. Could anyone give me a basic idea of how I could accomplish this? I already know how to calculate my reflect vector, I just need to know how to get the intersection between spheres. I do all my own gravity calculations, so I don't need to use Newtons gravity, just the collision. Here's a link to a video of what I'm trying to do: http://www.youtube.com/watch?v=LlwUzeDYFkY
a_haouchar
Posts: 97
Joined: Sat Oct 14, 2006 10:51 am
Location: Australia,melbourne

Post by a_haouchar »

Has anyone managed to port this in their irrwizard project?
sio2
Competition winner
Posts: 1003
Joined: Thu Sep 21, 2006 5:33 pm
Location: UK

Post by sio2 »

Just a note: I've posted my demo - which uses IrrNewt - in the Project Announcements section.
Vsk
Posts: 343
Joined: Thu Sep 27, 2007 4:43 pm

Post by Vsk »

Hello, first thanks for this easy to use wrapper. It makes so much easy my work with physic. Until now it seem very complete.
But I have some problems that I can understand them.

It seem that position of mesh, bounding box of irrlich, bounding box of irrnewt (in debug mode) and centremass are realy inconsisten between them.

It just draw for example the bounding box from irrlicht far away from the bounding box en debug mode from irrnewt.

What it is?
I am using the las verstion of irrnewt with irrlicht 1.1.
Thanks since now for your answer.
Vsk.
Vsk
Posts: 343
Joined: Thu Sep 27, 2007 4:43 pm

Post by Vsk »

Hi, anyone there :D?

Well actually I think I have in part solve the problem.
But it is strange, if drawAllDebugInfo is off then the bouding box of irrlicht are draw else where. If it is on, then it draws in the "right place" but some of them kinda bad.

I am using irrnewt to make some tank simulator and I have some problems that are making me work hardly.
As I think I say in other post, I have made turn the tank in the "real way" but as another user said, it seem slow, so I have to increase the torque in the case of turn. Is this a failure of newton?

But about irrnewt, these are the problems that I have:
For example (tell me if I concetual wrong):
I have the tank base like a irrlicht node and irrnewt body (actually like a IvehicleSimple with 9 wheel per side).
Then I have the turret like another irrlicht node and another body with a hinge joint. Is this correct? Should I use another type of joint?
But the problems is the POINT OF JOINT BETWEEN THEM!.
There is not a function on irrnewt that returns you the boundingbox from newton perspective, I mean like irrlicht have for the visual part.
I mean the ones that you can see when you set "drawAllDebugINfo" on.

The other thing: if I do this:
punto2->setPosition(joint.Pivot);
Where punto2 is a node sphere from newton and joint is the joint between the tank base and the turret and this functions is called on every loop:
Why it draws me on the start position an not with the tank along its movement?
This problem makes the problem before even more difficult to resolve.

Another problem: Why my program get stuck when I used EBT_AUTODETECT for the turret for example. It has not so much polygons.
It gets stuck or is just proccessing and I must wait LONG time?
In resume: I have problem to position in exact way (remember it is a simulator) every part of the tank with irrnewt it seem unpractical.
If I doing anything wrong I will be thanked if you tell me.
Thanks again for such an exelent wrapper and I hope your help.
Vsk.
Obeleh
Posts: 28
Joined: Tue Oct 02, 2007 7:46 am

Post by Obeleh »

The link is broken :(
Obeleh
Posts: 28
Joined: Tue Oct 02, 2007 7:46 am

Post by Obeleh »

Could maybe someone upload this somewhere?
Vsk
Posts: 343
Joined: Thu Sep 27, 2007 4:43 pm

Post by Vsk »

Did you try irrnewt at google. It has its own web with download section.
Greetings.
Obeleh
Posts: 28
Joined: Tue Oct 02, 2007 7:46 am

Post by Obeleh »

I did... the link points to SF
kiranmaya
Posts: 31
Joined: Tue Jan 30, 2007 9:10 am

Post by kiranmaya »

the link is broken...
can anyOne upload the Irrnewton in any space Providing site.........
is it working with irrlicht 1.4 beta.........?
is there any modifications?
i hope some one will upload it......
Vsk
Posts: 343
Joined: Thu Sep 27, 2007 4:43 pm

Post by Vsk »

Hello again. Is there any activity on this topic ? does irrnewt continue on advance?. This is an exelent tool, it wil be bad if it'd stop.
Well I continue posting my doubts (if anyone can tell me why noboy answer me it will be good :().
Well now I have some good news and bads, good is that irrlicht + irrnewt support a 2x2 kilometer2 terrain (with not so much details). Bad news is that when I create the terrain, if a set more than "1" level of datail on the terrain constructor, then irrnewt create a physic world with realy low detail!!!.
If a set "1" then it creates an amazing physic model from the terrain mesh.

The problems is that there is not on irrlicht a function over the terrain node that allows you to change de level of detal propertie!. (there is one but is for each parch!!!).
So what I got is the following:
If a put "1" on the constructor, then irrnewt create a perfect world. But I have no level of detail!!!! and it is realy slow.
Else a set 5 for example, then it works smooth but irrnewt create a realy bad physic world, i.e. terrain surface are badly represent, (realy bad).

Any sugestion.
Thanks in advance.
Vsk.
nano
Posts: 25
Joined: Mon May 07, 2007 1:12 pm

Post by nano »

When i try to compile any of the examples i get something like this:
--------------------Configuration: ragdoll - Win32 Debug--------------------
Linking...
ragdoll.obj : error LNK2001: unresolved external symbol "__declspec(dllimport) public: struct irr::newton::SIntersectionPoint __thiscall irr::newton::ICollisionManager::getCollisionFirstPointEx(class irr::core::line3d<float>)" (__imp_?getCollisionFi
rstPointEx@ICollisionManager@newton@irr@@QAE?AUSIntersectionPoint@23@V?$line3d@M@core@3@@Z)
ragdoll.obj : error LNK2001: unresolved external symbol "__declspec(dllimport) public: class irr::newton::ICollisionManager * __thiscall irr::newton::IWorld::getCollisionManager(void)" (__imp_?getCollisionManager@IWorld@newton@irr@@QAEPAVICollisionM
anager@23@XZ)
ragdoll.obj : error LNK2001: unresolved external symbol "__declspec(dllimport) public: void __thiscall irr::newton::IBody::setMaterial(class irr::newton::IMaterial *)" (__imp_?setMaterial@IBody@newton@irr@@QAEXPAVIMaterial@23@@Z)
ragdoll.obj : error LNK2001: unresolved external symbol "__declspec(dllimport) public: class irr::newton::IBody * __thiscall irr::newton::IUtils::launchCube(void)" (__imp_?launchCube@IUtils@newton@irr@@QAEPAVIBody@23@XZ)
ragdoll.obj : error LNK2001: unresolved external symbol "__declspec(dllimport) public: class irr::newton::IUtils * __thiscall irr::newton::IWorld::getUtils(void)" (__imp_?getUtils@IWorld@newton@irr@@QAEPAVIUtils@23@XZ)
ragdoll.obj : error LNK2001: unresolved external symbol "__declspec(dllimport) public: void __thiscall irr::newton::IRagDoll::setFreezeToBones(bool)" (__imp_?setFreezeToBones@IRagDoll@newton@irr@@QAEX_N@Z)
ragdoll.obj : error LNK2001: unresolved external symbol "__declspec(dllimport) public: class irr::newton::IBody * __thiscall irr::newton::IRagDollBone::getBody(void)" (__imp_?getBody@IRagDollBone@newton@irr@@QAEPAVIBody@23@XZ)
ragdoll.obj : error LNK2001: unresolved external symbol "__declspec(dllimport) public: class irr::newton::IRagDollBone * __thiscall irr::newton::IRagDoll::findBone(int)" (__imp_?findBone@IRagDoll@newton@irr@@QAEPAVIRagDollBone@23@H@Z)
ragdoll.obj : error LNK2001: unresolved external symbol "__declspec(dllimport) public: void __thiscall irr::newton::IRagDoll::setAutoFreezeToBones(bool)" (__imp_?setAutoFreezeToBones@IRagDoll@newton@irr@@QAEX_N@Z)
ragdoll.obj : error LNK2001: unresolved external symbol "__declspec(dllimport) public: void __thiscall irr::newton::IRagDoll::setMaterialToBones(class irr::newton::IMaterial *)" (__imp_?setMaterialToBones@IRagDoll@newton@irr@@QAEXPAVIMaterial@23@@Z)
ragdoll.obj : error LNK2001: unresolved external symbol "__declspec(dllimport) public: void __thiscall irr::newton::IRagDoll::addForceContinuousToBones(class irr::core::vector3d<float>)" (__imp_?addForceContinuousToBones@IRagDoll@newton@irr@@QAEXV?$
vector3d@M@core@3@@Z)
ragdoll.obj : error LNK2001: unresolved external symbol "__declspec(dllimport) public: class irr::newton::IRagDoll * __thiscall irr::newton::IWorld::createRagDoll(struct irr::newton::SRagDoll)" (__imp_?createRagDoll@IWorld@newton@irr@@QAEPAVIRagDoll
@23@USRagDoll@23@@Z)
ragdoll.obj : error LNK2001: unresolved external symbol "__declspec(dllimport) public: class irr::scene::ISceneNode * __thiscall irr::newton::IUtils::buildDefaultRagdoll(class irr::core::vector3d<float>,class irr::video::ITexture *)" (__imp_?buildDe
faultRagdoll@IUtils@newton@irr@@QAEPAVISceneNode@scene@3@V?$vector3d@M@core@3@PAVITexture@video@3@@Z)
ragdoll.obj : error LNK2001: unresolved external symbol "__declspec(dllimport) public: void __thiscall irr::newton::IWorld::drawAllDebugInfos(void)" (__imp_?drawAllDebugInfos@IWorld@newton@irr@@QAEXXZ)
ragdoll.obj : error LNK2001: unresolved external symbol "__declspec(dllimport) public: void __thiscall irr::newton::IWorld::update(void)" (__imp_?update@IWorld@newton@irr@@QAEXXZ)
ragdoll.obj : error LNK2001: unresolved external symbol "__declspec(dllimport) public: void __thiscall irr::newton::IMaterial::setElasticity(class irr::newton::IMaterial *,float)" (__imp_?setElasticity@IMaterial@newton@irr@@QAEXPAV123@M@Z)
ragdoll.obj : error LNK2001: unresolved external symbol "__declspec(dllimport) public: void __thiscall irr::newton::IMaterial::setSoftness(class irr::newton::IMaterial *,float)" (__imp_?setSoftness@IMaterial@newton@irr@@QAEXPAV123@M@Z)
ragdoll.obj : error LNK2001: unresolved external symbol "__declspec(dllimport) public: void __thiscall irr::newton::IMaterial::setFriction(class irr::newton::IMaterial *,float,float)" (__imp_?setFriction@IMaterial@newton@irr@@QAEXPAV123@MM@Z)
ragdoll.obj : error LNK2001: unresolved external symbol "__declspec(dllimport) public: class irr::newton::IBody * __thiscall irr::newton::IWorld::createBodyAuto(class irr::scene::ISceneNode *,class irr::scene::IMesh *,float,unsigned int,class irr::c
ore::CMatrix4<float>,class irr::core::vector3d<float>,enum irr::newton::E_CALCULATE_OFFSET,enum irr::newton::E_CALCULATE_SIZE)" (__imp_?createBodyAuto@IWorld@newton@irr@@QAEPAVIBody@23@PAVISceneNode@scene@3@PAVIMesh@63@MIV?$CMatrix4@M@core@3@V?$vect
or3d@M@93@W4E_CALCULATE_OFFSET@23@W4E_CALCULATE_SIZE@23@@Z)
ragdoll.obj : error LNK2001: unresolved external symbol "__declspec(dllimport) public: class irr::newton::IMaterial * __thiscall irr::newton::IWorld::createMaterial(void)" (__imp_?createMaterial@IWorld@newton@irr@@QAEPAVIMaterial@23@XZ)
ragdoll.obj : error LNK2001: unresolved external symbol "__declspec(dllimport) class irr::newton::IWorld * __cdecl irr::newton::createPhysicsWorld(class irr::IrrlichtDevice *)" (__imp_?createPhysicsWorld@newton@irr@@YAPAVIWorld@12@PAVIrrlichtDevice@
2@@Z)
Debug/ragdoll.exe : fatal error LNK1120: 21 unresolved externals
Error executing link.exe.

ragdoll.exe - 22 error(s), 0 warning(s)
So i figured i needed to recompile the irrNewt dll for 1.3(.1) and when i try to do that i get this:
...
material_pair_and_contact.obj : error LNK2001: unresolved external symbol __imp__NewtonMaterialGetContactNormalSpeed
material_pair_and_contact.obj : error LNK2001: unresolved external symbol __imp__NewtonMaterialGetContactTangentSpeed
ragdoll.obj : error LNK2001: unresolved external symbol __imp__NewtonRagDollEnd
ragdoll.obj : error LNK2001: unresolved external symbol __imp__NewtonRagDollSetTransformCallback
ragdoll.obj : error LNK2001: unresolved external symbol __imp__NewtonRagDollSetForceAndTorqueCallback
ragdoll.obj : error LNK2001: unresolved external symbol __imp__NewtonRagDollBegin
ragdoll.obj : error LNK2001: unresolved external symbol __imp__NewtonCreateRagDoll
ragdoll.obj : error LNK2001: unresolved external symbol __imp__NewtonRagDollBoneSetLimits
ragdoll.obj : error LNK2001: unresolved external symbol __imp__NewtonRagDollBoneGetBody
ragdoll.obj : error LNK2001: unresolved external symbol __imp__NewtonRagDollBoneSetID
ragdoll.obj : error LNK2001: unresolved external symbol __imp__NewtonRagDollAddBone
ragdoll.obj : error LNK2001: unresolved external symbol __imp__NewtonRagDollFindBone
tree_body.obj : error LNK2001: unresolved external symbol __imp__NewtonTreeCollisionSerialize
tree_body.obj : error LNK2001: unresolved external symbol __imp__NewtonCreateTreeCollisionFromSerialization
vehicle_simple.obj : error LNK2001: unresolved external symbol __imp__NewtonVehicleSetTireCallback
vehicle_simple.obj : error LNK2001: unresolved external symbol __imp__NewtonConstraintCreateVehicle
vehicle_simple.obj : error LNK2001: unresolved external symbol __imp__NewtonVehicleGetTireUserData
vehicle_simple.obj : error LNK2001: unresolved external symbol __imp__NewtonVehicleGetFirstTireID
vehicle_simple.obj : error LNK2001: unresolved external symbol __imp__NewtonVehicleGetNextTireID
vehicle_simple.obj : error LNK2001: unresolved external symbol __imp__NewtonVehicleReset
vehicle_tire.obj : error LNK2001: unresolved external symbol __imp__NewtonVehicleAddTire
vehicle_tire.obj : error LNK2001: unresolved external symbol __imp__NewtonVehicleGetTireMatrix
vehicle_tire.obj : error LNK2001: unresolved external symbol __imp__NewtonVehicleRemoveTire
world.obj : error LNK2001: unresolved external symbol __imp__NewtonWorldSetUserData
world.obj : error LNK2001: unresolved external symbol __imp__NewtonMaterialGetDefaultGroupID
world.obj : error LNK2001: unresolved external symbol __imp__NewtonCreate
world.obj : error LNK2001: unresolved external symbol __imp__NewtonDestroy
world.obj : error LNK2001: unresolved external symbol __imp__NewtonMaterialDestroyAllGroupID
world.obj : error LNK2001: unresolved external symbol __imp__NewtonDestroyAllBodies
world.obj : error LNK2001: unresolved external symbol __imp__NewtonUpdate
world.obj : error LNK2001: unresolved external symbol __imp__NewtonSetBodyLeaveWorldEvent
world.obj : error LNK2001: unresolved external symbol __imp__NewtonWorldForEachBodyDo
world.obj : error LNK2001: unresolved external symbol __imp__NewtonSetWorldSize
world.obj : error LNK2001: unresolved external symbol __imp__NewtonSetSolverModel
world.obj : error LNK2001: unresolved external symbol __imp__NewtonSetFrictionModel
world.obj : error LNK2001: unresolved external symbol __imp__NewtonSetMinimumFrameRate
world.obj : error LNK2001: unresolved external symbol __imp__NewtonGetTimeStep
world.obj : error LNK2001: unresolved external symbol __imp__NewtonWorldGetVersion
../bin_debug/visual_studio/IrrNewt.dll : fatal error LNK1120: 153 unresolved externals
Error executing link.exe.

IrrNewt.dll - 204 error(s), 0 warning(s)

I've set my directory includes like this:

I've set my VC++ (.net) directories as such:

INCLUDE:
C:\Program Files\NewtonSDK\sdk
C:\Irrlicht\IrrNewt\include
C:\Irrlicht\irrlicht-1.3.1\include

LIB:
C:\Program Files\NewtonSDK\sdk\lib_st
C:\Irrlicht\IrrNewt\lib\win32-vc++6
C:\Irrlicht\irrlicht-1.3.1\lib\Win32-visualstudio

EXECUTABLE:
C:\Program Files\NewtonSDK\sdk\dll
C:\Irrlicht\IrrNewt\bin\visual_studio
C:\Irrlicht\irrlicht-1.3.1\bin\Win32-VisualStudio

I wasn't sure about the Newton lib as i couldn't actually find any documentation on what lib_st, lib_mt, lib_st_double and lib_mt_double actually meant, i just assumed it meant something like single threaded, multiple threaded and just went with _st.

I'm not sure if these have anything to do with the errors i'm getting. I put the Newton.dll from the Newton dll directory into my windows>system32 directory too just incase but that made no difference either.

Can anyone help me figure out why it isn't working? I've been completely stumped for a week.
Post Reply