R: R: [Plib-devel] Update on 3ds loader
Brought to you by:
sjbaker
From: Paolo L. <p.l...@ci...> - 2000-04-10 09:53:11
|
Wolfram Kuss wrote: > Are you (Per/Paolo) working under Windo$? Yes, NT4 at office and 98 at home. I use the full Cygnus dev-sys (gcc = 2.9.2).=20 > Paolo, shall I send you the file? Yes, please. To all: what about to start using the anonymous FTP space for test = cases? (even if I got problems to go to = ftp://plib.sourceforge.net/pub/plib/) For now you could try to put such initialization in function = ssgLoad3ds() : mat_tfnames =3D new char*[MAX_MATERIALS]; // this line already exists for ( int _i=3D0; _i < MAX_MATERIALS; _i++ ) mat_tfnames =3D (char *)NULL; This is implemented in experimental version of the loader at = ftp://ftp.cira.it/paolo/plib/ssgLoad3ds.cxx that you can test in the = meanwhile. I'm not able to test such modification since my model, that I'll manage = to distribute soon as test case, is fully textured. To Per: - this version also set node name for VTable nodes to the actual object = name read in the file - previously the related material name was given = to the node (I did it, sorry). This is useful for later navigation in = the graph, e.g. to set/change properties to nodes for which the 3DS name = is known (in my case: don't lit the far cylinder showing the sky = texture); - thanks for the strdup() - I didn't realize how useful it is, but, once = discovered, I'm using it even too often! -----Messaggio originale----- Da: Wolfram Kuss [SMTP:w_...@rz...] Inviato: venerd=EC 7 aprile 2000 18.20 A: pli...@li... Oggetto: Re: R: [Plib-devel] Update on 3ds loader My problem is not that something is loaded too often or some texture is not found, but that it crashes because it is=20 dereferencing an invalid pointer. I am working under (on??) Windows NT. It crashes while loading chevy.3ds because it tries to reference an undefined pointer (the hex address is cdcdcdcd, which is Visual C++ way of saying bad pointer). I set a break point in parse_material and another one in=20 parse_mapname. The first three times it finds a breakpoint is in parse_material. Then it goes into parse_mapname. num_materials is three. mat_tfnames is obviously a array of pointers. The array is defined. However, the pointers are not. MAYBE the first three materials are un-textured, the texturenames are therefore not defined and when it=20 finds the first mapname it tries to compare it to the undefined, previous ones? Are you (Per/Paolo) working under Windo$? Paolo, shall I send you the file? Per, have you looked at the newest CVS-code, perhaps=20 it is different from the code you have? Do you use MSVC 6? Do you do a debug build? Bye bye, Wolfram. _______________________________________________ plib-devel mailing list pli...@li... http://lists.sourceforge.net/mailman/listinfo/plib-devel |