How do you use my3d exporter for 3ds max?

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
SuB
Posts: 16
Joined: Fri Aug 27, 2004 9:27 pm

How do you use my3d exporter for 3ds max?

Post by SuB »

I downloaded both the example and the plugin, but how am I supposed to make it do the things it should do

Should I load it into 3ds max and how do I do that?

Should I compile the dsw? because he gives me 2 errors

MAX2MY3DExp.obj : error LNK2001: unresolved external symbol "public: virtual char * __thiscall ClassDesc::GetRsrcString(long)" (?GetRsrcString@ClassDesc@@UAEPADJ@Z)

and the other dsw gives me

e:\3d engines\tools\my3dplugin\my3dplugin\maxsdk\5\maxsdk\include\max.h(20) : fatal error C1083: Cannot open include file: 'strbasic.h': No such file or directory

while the .h is there and the link is correct

Please help me out here, I've looked all over the forum but the search button doesn't really do his job so

tnx in advance

SuB
ZDimitor
Posts: 202
Joined: Fri Jul 16, 2004 3:27 am
Location: Russia

Post by ZDimitor »

1st) Compiling plugin:
In file MAX2MY3DExp.cpp comment this line

Code: Select all

char * ClassDesc::GetRsrcString(long) {return NULL;}
After that compilation should be ok.

2nd) Tutorials you can search at this threads:

http://irrlicht.sourceforge.net/phpBB2/ ... &start=165
http://irrlicht.sourceforge.net/phpBB2/ ... 17&start=0
http://irrlicht.sourceforge.net/phpBB2/ ... php?t=4530
SuB
Posts: 16
Joined: Fri Aug 27, 2004 9:27 pm

Post by SuB »

That line was allready commented and now he's giving me this:

E:\3d engines\tools\MY3DPlugin\MY3DPlugin\My3D\my3d_max_exporter\MAX2MY3DExp.cpp(27) : fatal error C1189: #error : Unknown 3DSMAX version!!! (specify MY_MAX5 or MY_MAX6 define directives).
ZDimitor
Posts: 202
Joined: Fri Jul 16, 2004 3:27 am
Location: Russia

Post by ZDimitor »

:lol: :lol: :lol:
Then uncomment it (this error appear on some systems, i don't now when exactly), and about 2nd - check the project settings, MY_MAX5 must be defined in 'preprocessor definitions' (for 3DSMAX5).
SuB
Posts: 16
Joined: Fri Aug 27, 2004 9:27 pm

Post by SuB »

:(, I'm so noobish

how do you define MY_MAX5? Because just writing _MY_MAX5 in the prepoc. def. still gives me the error
ZDimitor
Posts: 202
Joined: Fri Jul 16, 2004 3:27 am
Location: Russia

Post by ZDimitor »

1) You can did it through the IDE (Visual C++) options
Project->Settings->C/C++(Tab)->Preprocessor(Combo Box)->Preprocesor definitions (Edit Box)
The result string in that edit box must be
WIN32,NDEBUG,_WINDOWS,_MBCS,_USRDLL,MY3D_MAX_EXPORTER_EXPORTS,MY_MAX5

You can just copy/paste it...

2) Or you can define it by hand:
In file MAX2MY3DTok.h put this string

Code: Select all

#define MY_MAX5
Thats all.
SuB
Posts: 16
Joined: Fri Aug 27, 2004 9:27 pm

Post by SuB »

I'm on the edge of a nerve breakdown

why does your program hate me ?

You've been so helpfull but it keeps giving me more errors,

after defining MY_MAX5, it gives me 43 errors

Is there an .exe of your program or something precompiled, because me VS 6.0 isn't able to compile your code, no matter what I do.

Sorry to be such an annoyance, but I've seen what your program can do, and I can't wait to use it :(
SuB
Posts: 16
Joined: Fri Aug 27, 2004 9:27 pm

Post by SuB »

Oh, and it's 43
error LNK2001: unresolved external symbol
errors,

I've read you have to recompile the source with your own compiler, how do I do that?
ZDimitor
Posts: 202
Joined: Fri Jul 16, 2004 3:27 am
Location: Russia

Post by ZDimitor »

It looks like, VS6 projects *.dsw or *.dsp corrupted (because MY_MAX5 must be alredy defined), now the problem in that some SDK libraries not linked to your project (it very strange to).
I suggest you to upload My3D Tools one more time from this links:
http://www.danielpatton.com/afecelis/Zd ... xample.zip
http://www.danielpatton.com/afecelis/Zd ... Plugin.zip

Lets start from the clear page :)

After that in VC6 open the file my3d_max5_exporter.dsp and try to compile plugin.
Post here your results...
And don't make any changes in project!
SuB
Posts: 16
Joined: Fri Aug 27, 2004 9:27 pm

Post by SuB »

I just compiled the .dsp
and VS6 gives me

Compiling resources...
Compiling...
animout.cpp
export.cpp
E:\3d engines\tools\MY3DPlugin\MY3DPlugin\My3D\my3d_max_exporter\export.cpp(492) : warning C4305: 'initializing' : truncation from 'const double' to 'float'
E:\3d engines\tools\MY3DPlugin\MY3DPlugin\My3D\my3d_max_exporter\export.cpp(493) : warning C4305: 'initializing' : truncation from 'const double' to 'float'
MAX2MY3DExp.cpp
E:\3d engines\tools\MY3DPlugin\MY3DPlugin\My3D\my3d_max_exporter\MAX2MY3DExp.cpp(242) : warning C4101: 'spin' : unreferenced local variable
Linking...
Creating library ../../obj/my3d_max5_exporter.lib and object ../../obj/my3d_max5_exporter.exp
my3d_max5_exporter.exp : warning LNK4070: /OUT:my3d_max_exporter.dle directive in .EXP differs from output filename "../../bin/my3d_max5_exporter.dle"; ignoring directive
MAX2MY3DExp.obj : error LNK2001: unresolved external symbol "public: virtual char * __thiscall ClassDesc::GetRsrcString(long)" (?GetRsrcString@ClassDesc@@UAEPADJ@Z)
../../bin/my3d_max5_exporter.dle : fatal error LNK1120: 1 unresolved externals
Error executing link.exe.
ZDimitor
Posts: 202
Joined: Fri Jul 16, 2004 3:27 am
Location: Russia

Post by ZDimitor »

Now in file MAX2MY3DExp.cpp comment this line

Code: Select all

char * ClassDesc::GetRsrcString(long) {return NULL;}
And try again to compile.[/code]
SuB
Posts: 16
Joined: Fri Aug 27, 2004 9:27 pm

Post by SuB »

That's strange, it was allready commented, I deleted everything, redownloaded the plugin, compiled the .dsp and the line was allready commented

I uncommented the line and when I compile it asks me for an .exe for the debug session
ZDimitor
Posts: 202
Joined: Fri Jul 16, 2004 3:27 am
Location: Russia

Post by ZDimitor »

You dont need to debug it. Press F7 (build all), everything should be fine.
After compilation in directory (../../bin/) you can find your plugin my3d_max5_exporter.dle.
SuB
Posts: 16
Joined: Fri Aug 27, 2004 9:27 pm

Post by SuB »

YIPEE

It created the my3d_max5_exporter.dle :d

now, I'll try to figure out what to do with the .dle :D :D

but in case I don't reply to my message, plz tell me what to do with the file

btw: Thank you very very very much for your help
ZDimitor
Posts: 202
Joined: Fri Jul 16, 2004 3:27 am
Location: Russia

Post by ZDimitor »

:D
Usage:
1) Compile My3D plugin (*.dle);
2) Copy it into 3DSMAX/plugin directory;
3) Run 3DSMAX;
4) Create lightmapped scene in 3DSMAX;
5) Use My3D plugin to export it into *.my3d file;
6) Load scene into Irrlicht with this class (CMy3DMeshLoader included in My3D Example);
7) Enjoy!
Post Reply