64 bit 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
3DModelerMan
Posts: 1691
Joined: Sun May 18, 2008 9:42 pm

64 bit Irrlicht.

Post by 3DModelerMan »

To use Irrlicht on a 64 bit system, does Irrlicht have to be recompiled for 64 bit? I just got a new computer that's 64 bit. I've been trying to get ready for another release of EditIrr, but I ran into a problem that I had heard users got before. The person who told me about it was on 64 bit too. It works perfect on my 32 bit machine though. It's on device->getSceneManager() calls that it's crashing... Could it be trying to give me a 32 bit pointer?
That would be illogical captain...

My first full game:
http://www.kongregate.com/games/3DModel ... tor#tipjar
Adler1337
Posts: 471
Joined: Sat Aug 09, 2008 6:10 pm
Location: In your base.

Post by Adler1337 »

To use Irrlicht on a 64 bit system, does Irrlicht have to be recompiled for 64 bit?
No I use irrlicht on 64 bit system all the time and I have no problems. I'm thinking your problem is being caused by something else. Maybe you could post some code or something.
multum in parvo
Bate
Posts: 364
Joined: Sun Nov 01, 2009 11:39 pm
Location: Germany

Post by Bate »

Yeah, usually all 32bit programs should run fine in a 64bit environment.
Never take advice from someone who likes to give advice, so take my advice and don't take it.
3DModelerMan
Posts: 1691
Joined: Sun May 18, 2008 9:42 pm

Post by 3DModelerMan »

I'm using a .lib and .dll that were compiled on a 32 bit system, on my 64 bit system. They're just the ones in the Irrlicht download.
That would be illogical captain...

My first full game:
http://www.kongregate.com/games/3DModel ... tor#tipjar
Nalin
Posts: 194
Joined: Thu Mar 30, 2006 12:34 am
Location: Lacey, WA, USA
Contact:

Post by Nalin »

You can not mix 32 and 64-bit code. If your program is 32-bit, all DLLs that it uses must also be 32-bit. That is the only restriction. Other than that, 32-bit code works perfectly fine on a 64-bit system. If you are getting crashing issues, make sure you don't have any old DLL files anywhere. If you are custom compiling Irrlicht, do a full rebuild and make sure you are using the correct Irrlicht.dll file. A lot of times the crash errors are because somebody has an old Irrlicht.dll file that they are accidentally using.
grumpymonkey
Posts: 222
Joined: Mon Jan 19, 2009 10:03 pm
Location: Miami, Florida
Contact:

Post by grumpymonkey »

You can not mix 32 and 64-bit code. If your program is 32-bit, all DLLs that it uses must also be 32-bit. That is the only restriction. Other than that, 32-bit code works perfectly fine on a 64-bit system. If you are getting crashing issues, make sure you don't have any old DLL files anywhere. If you are custom compiling Irrlicht, do a full rebuild and make sure you are using the correct Irrlicht.dll file. A lot of times the crash errors are because somebody has an old Irrlicht.dll file that they are accidentally using.
If DLLs are already compiled then you shouldn't have trouble using them in a 64bit program even if its 32bit right?
Image
Adler1337
Posts: 471
Joined: Sat Aug 09, 2008 6:10 pm
Location: In your base.

Post by Adler1337 »

I'm using a .lib and .dll that were compiled on a 32 bit system, on my 64 bit system. They're just the ones in the Irrlicht download.
32 bit can run in 64 bit fine. I'm 99% sure your problem is something else.
Edit: I have actually used your program on my 64 bit machine and it works fine. Is there something special I have to do to reproduce the error?
multum in parvo
3DModelerMan
Posts: 1691
Joined: Sun May 18, 2008 9:42 pm

Post by 3DModelerMan »

If you try to add a scene node or animator it doesn't work. Code execution never goes beyonde the smgr = Device->getSceneManager(); line. I think I'm getting a bad pointer on my 64 bit machine because it works perfect on my notebook. Here's the libraries used:
Irrlicht (tried with 32 bit and tried recompiling for 64 bit),
LUA (compiled on 32 bit I think)
ToLUA (I think it was compiled on 32 bit too)
Boost (No idea what that got compiled on)
wxWidgets (32 bit I think).
As you can see it's mostly 32 bit. Is there a way to get Code::Blocks and GCC to compile 32 bit programs on a 64 bit machine?
That would be illogical captain...

My first full game:
http://www.kongregate.com/games/3DModel ... tor#tipjar
Adler1337
Posts: 471
Joined: Sat Aug 09, 2008 6:10 pm
Location: In your base.

Post by Adler1337 »

Works for me. Animators work fine and I can add some scene nodes. When I try to add some of the nodes nothing happens(I assume it's because you haven't programmed it yet) and when I try to add an animated mesh the mesh doesn't show up, but nothing crashes. I am using Win7 64 bit.
multum in parvo
3DModelerMan
Posts: 1691
Joined: Sun May 18, 2008 9:42 pm

Post by 3DModelerMan »

It only happens when you compile it on a 64 bit machine. If you use the binary from sourceforge it works fine.
That would be illogical captain...

My first full game:
http://www.kongregate.com/games/3DModel ... tor#tipjar
ACE247
Posts: 704
Joined: Tue Mar 16, 2010 12:31 am

Post by ACE247 »

I see, you now ran into the same problem as me.
(I was the person that first had the problem)
I also tried tons of things to fix it but nothing worked.
I really prefer it IrrEdit, so I'd love it if there's some fix for this.

I tried compiling this in 32bit with 32bit libs etc for all dependencies, still nothing.
I also then tried compiling on a 32bit Win XP machine of mine and somehow got the same issue. :?
Hank
Posts: 7
Joined: Sat Oct 23, 2010 1:38 am

Post by Hank »

butting in again :)
For all those using Windows 7 – check that the folder where the art files are, are not protected with read-only properties by another 'user' (even if you are the only one using it)
I found that out when I wrote simple msi files and they refused to compile. I was logged in as Administrator and the folders where created by another user (me as BetaTester), so they did not link properly.

To save myself from grieve, I simply moved all my work from C:\ to C:\Users\MyName\ and no problems from then on. If your development is too advanced ( I just started ) trace the actions with something like Process Monitor and set the needed folders manually to Share - Read/Write to your AdminName. I tried to unlock all folders :oops: this was interesting, lucky me there was a restore point. :D
Post Reply