Page 1 of 1

[fixed]MY3D MeshFileLoader

Posted: Tue May 20, 2008 2:52 pm
by Acki
Hi,
as I discovered in this Thread the My3D loader is out of date !!!
So I converted the latest my3d source to Irr-1.4 and you can download the new files here:
My3D-1.4.zip
simply replace the old files with this new ones and recompile the engine... ;)

but I'm also a little bit confused... :shock:
in the material renderer files (CD3D8MaterialRenderer.h and CD3D9MaterialRenderer.h) there is this line:

Code: Select all

/! Transparent vertex alpha material renderer
class CD3D9MaterialRenderer_TRANSPARENT_VERTEX_ALPHA : public CD3D9MaterialRenderer
{
public:
.
.
.
    pID3DDevice->SetRenderState(D3DRS_DESTBLEND, D3DBLEND_INVSRCALPHA);
.
.
.
but the my3d site explaines that this line should be changed to:

Code: Select all

/! Transparent vertex alpha material renderer
class CD3D9MaterialRenderer_TRANSPARENT_VERTEX_ALPHA : public CD3D9MaterialRenderer
{
public:
.
.
.
    pID3DDevice->SetRenderState(D3DRS_DESTBLEND, D3DBLEND_INVSRCCOLOR);
.
.
.
I didn't change this and it works, I also changed this line but it seems to make no difference... :shock:
my question now is: should I change this line (as far as it seems to make no diffs, I won't until you say I should) ???

thx, Acki

Posted: Tue May 20, 2008 10:21 pm
by Zot
Hello, thanks for the quick update.
I'm now getting a strange texture load error, and I've tried using a 'Lightmaps' directory, as well as putting the maps with the other O.K. textures. hmm...

Image

Posted: Wed May 21, 2008 12:10 am
by Acki
Ohh, yes, this was an error I made when converting... :oops:
the files are updated now, so please download the new ones... ;)

Posted: Wed May 21, 2008 3:33 am
by frostysnowman
lies! My .my3d scenes load perfectly exported from 3dsmax7....

Whatever.

Posted: Wed May 21, 2008 11:16 am
by Acki
don't call me a lier !!! :evil:
I tried 3dsmax 6 and 7 and had this problem, and not just for this single scene, but also for my own scenes !!!

maybe you're using an other setup so this bug doesn't affect you ???
I'm using Irrlicht 1.4 recompiled for MinGW/GCC (Code::Blocks) with DX9 support...
I'm running XPpro(sp2) and my gfx card is a GeForce FX5200...

Posted: Wed May 21, 2008 5:30 pm
by frostysnowman
I tried to convey my message as somewhat humorous by saying "lies!", but I guess you can't translate emotion very well through text messages :P

I'm using Irrlicht 1.4 with Visual C++ 2008 Express Edition, xp pro sp2, Nvidia Geforce Go 6400, DX9 support.

Posted: Wed May 21, 2008 11:44 pm
by Acki
frostysnowman wrote:I tried to convey my message as somewhat humorous by saying "lies!", but I guess you can't translate emotion very well through text messages :P
I think you can't !!!
an emoticon (like :lol: ) would show humor, but just "somewhat!" is meant seriously and harsh...

you can teach and correct me when I'm wrong, but please don't call me a lier !!! ;)

Posted: Thu May 22, 2008 7:28 am
by hybrid
It's a liar, no one knows where or how often you lie around.
Anyway, where did you get any update from? The my3d format is not developed anywhere anymore. So I don't understand why there would be an update. Could you please provide alink to the original file sources?

Posted: Thu May 22, 2008 12:43 pm
by Acki
I just used the latest files from the project site: http://my3dproject.nm.ru/
and right, they are not new (I never said), but they are the latest... ;)
and as far as they solved my problem there are two possibilities:
1st - the files from Irrlicht are older than this ones
2nd - there is a bug with the implementation of the Irrlicht files...

in either case the question seems to be: when does the bug appear ???
maybe it depends on some settings...

you can download the mesh: testmesh.zip (exported with DXMax7)
I'm using:
Irrlicht 1.4 recompiled for MinGW/GCC (Code::Blocks) with DX9 support...
XPpro(sp2) and my gfx card is a GeForce FX5200

and this are the screenshots of the problem:

old loader, embeded lightmaps: no texture
Image

old loader, seperate lightmaps: no lightmap
Image

new loader, embeded and seperate lightmaps: ok
Image

Posted: Thu May 22, 2008 10:34 pm
by Acki
hybrid wrote:Anyway, where did you get any update from? The my3d format is not developed anywhere anymore. So I don't understand why there would be an update.
well, and if you have a look at the CMY3DMeshFileLoader.cpp files you'll see that the one from Irrlicht is v3.15 and the one I provide (the latest from the project site) is v3.16, so the loader from Irrlicht is outdated !!! ;)

Posted: Thu May 22, 2008 10:57 pm
by hybrid
No, the changes for 3.16 were only partially adopted in the loader, because we didn't merge the material changes and some other stuff. There's a patch on my webpage to bring in some other stuff, but it was never explained by the developer what the actual reasons for those changes are, and how they'd affect other apps. So I guess you're better off using b3d instead - this format is proprietary and dead.

Posted: Thu May 22, 2008 11:10 pm
by Acki
hybrid wrote:No, the changes for 3.16 were only partially adopted in the loader, because we didn't merge the material changes and some other stuff.
and probably you adopted a bug too... :lol:
hybrid wrote:So I guess you're better off using b3d instead - this format is proprietary and dead.
I love the my3d format and as the new loader works now correctly I see no reason to change... ;)

but it's ok, if you don't want to get the engine more bugfree you don't need to change the loader, I for myself have my IrrExtensions for such things... :lol:
but in my opinion this is an evidence of incapacity (just my opinion)... :P

Posted: Fri May 23, 2008 11:10 am
by hybrid
So have fun with your "opinion", seems to be more like an inability of proper communication though. But maybe some c::b user under Windows, using any of the supported Irrlicht versions for your (also pretty proprietary) extensions might like it...
BTW: For those who don't want to lose all the optimizations that went into the loader the last month: Change variable ls (somewhere around line 350 in the my3d loader) to s32 and fix the max() expression in the next line also to use ints instead of unsigned. Then the loader will work again... Will be fixed in SVN soon.

Re: MY3D MeshFileLoader

Posted: Sat May 24, 2008 1:49 pm
by MikeP
Acki wrote:Hi,
as I discovered in this Thread the My3D loader is out of date !!!
So I converted the latest my3d source to Irr-1.4 and you can download the new files here:
My3D-1.4.zip
simply replace the old files with this new ones and recompile the engine... ;)

thx, Acki
hi. it seems i'm facing the same problem that you solved, (thx to hybrid leading me to this thread). So I was happy.. and then I'm reading "simply replace old files and recompile the engine"
.. ok.. game over already. I never "recompiled the engine" and I'm not into this kind of things. .. but i'm not givin up easily so I searched in FAQs, and found that tutorial from acefelis :
http://irrlicht.sourceforge.net/phpBB2/ ... hp?t=20476

it starts with going to the tutorials page on the Irrlicht website.. ok..following the master... first thing he's asking : clicking on the second link (after getting C::B but that, I already have) which is , getting the MSVC2003++ toolkit :
http://www.microsoft.com/downloads/deta ... laylang=en
...game over again.. this is dead
I've tried getting that with Google but all I could find is "outdated stuff" .. "unused anymore.. M$$ changed it's SDK and blahblahblah"

well.. all I want is getting what I have in 3DStudio in Irrlicht :cry:
and after 3 days of struggling with this I'm reading hybrid saying My3D is old stuff and B3D is better.. I guess you guyz should emphasize the fact we HAVE to use B3D file type right in the homepage and a bit everywhere on this forum because if I tried with My3D that's because I saw several posts in there saying it was great for lightmapping and now it just sucks...

k well I'll give up. I have the new My3D loader Acki modified but compiling the engine to be able to use it is beyond my knowledge. :?

Posted: Sat May 24, 2008 10:19 pm
by hybrid
The only bug that I could find is due to a check for filename length (and some dumb substring handling made based upon that length). However, you can avoid the bug by using a long filename. Try a filename (the base file name) with more than 10 characters :)