There should be a function for me to load that in without having to manually convert stuff to triangles I think. At least, I'm assuming that's where the QUAD constant may be used.
Also when loading texture by handler, it looks like I have to explicitly pass in an extension.
So if a game uses a variety of formats (eg: both bmp and tga), I would store the extension of the referenced file and then pass it to the function call.
Now what if the game uses the extension "tga" for images that use DDS format? This method fails because my code sees "tga" and passes it in but the image format is DDS.
Now, all of the images are extension tga, but not all images are DDS. Some are actually tga. I'd have to open the file and do stuff with it to determine what format it actually is. A faster way to handle these situations would be helpful.
Important information: this site is currently scheduled to go offline indefinitely by end of the year.
Spotlight: Señor Casaroja's Noesis
-
- Moderator
- Posts: 1007
- Joined: Mon Mar 23, 2009 2:57 am
- Has thanked: 44 times
- Been thanked: 505 times
Re: Señor Casaroja's Noesis
Use RPGEO_QUAD instead of RPGEO_TRIANGLE. The primitive types are all listed in __NPReadMe.txt. The assumption on quad winding may or may not work for your index list.
The extension string passed to loadTexByHandler is only used to determine which data handler(s) to invoke, mainly for handlers which are name-dependent. If you're trying to load a DDS file from a .tga file that you loaded yourself, then just pass ".dds" to the function. The function doesn't care what your original filename was, and that isn't the reason the parameter exists. The data itself is also validated for each image format (this is the reason you're urged to write "check" functions for each data format you add), so if you have more than 1 format using the ".dds" extension (or whatever else), whichever handler confirms that the actual data is in an acceptable format is the handler that will be used.
Of course, it's also silly to be loading textures yourself when you don't have to. If the texture files are already available on the model's path, then you should just use the appropriate paths for the textures on your material(s) and let Noesis handle loading them for the preview. Especially in such cases where the textures don't even need to be converted/exported along with the model.
The extension string passed to loadTexByHandler is only used to determine which data handler(s) to invoke, mainly for handlers which are name-dependent. If you're trying to load a DDS file from a .tga file that you loaded yourself, then just pass ".dds" to the function. The function doesn't care what your original filename was, and that isn't the reason the parameter exists. The data itself is also validated for each image format (this is the reason you're urged to write "check" functions for each data format you add), so if you have more than 1 format using the ".dds" extension (or whatever else), whichever handler confirms that the actual data is in an acceptable format is the handler that will be used.
Of course, it's also silly to be loading textures yourself when you don't have to. If the texture files are already available on the model's path, then you should just use the appropriate paths for the textures on your material(s) and let Noesis handle loading them for the preview. Especially in such cases where the textures don't even need to be converted/exported along with the model.
-
- M-M-M-Monster veteran
- Posts: 2382
- Joined: Sat Apr 09, 2011 1:22 am
- Has thanked: 170 times
- Been thanked: 307 times
Re: Señor Casaroja's Noesis
When working with text files, I ignore the data that is provided to the loadModel function and open the file as a text file and then parse it line by line.
But then I have to pack the values into bytes. Should I go with the struct module or is there something else I can use?
Also this error:
Happens sometimes when I'm trying to read a line using file.readline()
But then I have to pack the values into bytes. Should I go with the struct module or is there something else I can use?
Also this error:
Code: Select all
UnicodeDecodeError: 'cp932' codec can't decode bytes in position 622-623: illegal multibyte sequence
I can pass multiple extensions in one call?The extension string passed to loadTexByHandler is only used to determine which data handler(s) to invoke
-
- Moderator
- Posts: 1007
- Joined: Mon Mar 23, 2009 2:57 am
- Has thanked: 44 times
- Been thanked: 505 times
Re: Señor Casaroja's Noesis
That's fairly wasteful, since it's already loaded into memory, and parsing out of memory should be much faster.finale00 wrote:When working with text files, I ignore the data that is provided to the loadModel function and open the file as a text file and then parse it line by line.
You don't need to for the purpose of passing it to Noesis. You can consider using the imm functions again if you're already parsing your data into native Python types. Otherwise, the struct module is probably the most common standard for Python binary packing.finale00 wrote:But then I have to pack the values into bytes. Should I go with the struct module or is there something else I can use?
Code: Select all
UnicodeDecodeError: 'cp932' codec can't decode bytes in position 622-623: illegal multibyte sequence
No, you may still be misunderstanding. The extension is only to hint at what the format is and matters primarily for modules that require an input to have a given file extension associated with it to be recognized as that format. You shouldn't be passing data to loadTexByHandler without knowing that it can/should be handled already as an existing format, and knowing what format it is you should know which extension to pass in to get the loader that you want.finale00 wrote:I can pass multiple extensions in one call?
-
- M-M-M-Monster veteran
- Posts: 2382
- Joined: Sat Apr 09, 2011 1:22 am
- Has thanked: 170 times
- Been thanked: 307 times
Re: Señor Casaroja's Noesis
I found the issue with the readline.
Some of the strings are encoded in shift-JIS.
So for example it could say
So I would just read a line, get the name, then read another line and grab the vert count and then start looping over the positions.
But now I'm stuck on getting the name lol
Some of the strings are encoded in shift-JIS.
So for example it could say
Code: Select all
name: 黒艶有
vertex 492 {
1.0 1.0 1.0
...
}
But now I'm stuck on getting the name lol
-
- Moderator
- Posts: 2602
- Joined: Sun May 18, 2008 3:01 pm
- Has thanked: 57 times
- Been thanked: 1422 times
-
- M-M-M-Monster veteran
- Posts: 2382
- Joined: Sat Apr 09, 2011 1:22 am
- Has thanked: 170 times
- Been thanked: 307 times
Re: Señor Casaroja's Noesis
Nope this is just the metasequoia format cause it looks like a good candidate for immediate mode rendering.
I tried extracting sonicomi archives using asmodean's extractor but the files didn't seem to come out right.
I tried extracting sonicomi archives using asmodean's extractor but the files didn't seem to come out right.
-
- veteran
- Posts: 95
- Joined: Wed Jun 08, 2011 7:14 am
- Has thanked: 18 times
- Been thanked: 9 times
Re: Señor Casaroja's Noesis
I wanted ask for help on using the "export from preview". I'm looking at Dissidia Final Fantasy models. If you need need for me to post a file for help I can but I think the problem is fairly generic and applies to other model formats.
I'll play the animation and stop it at any given point. I like the pose of the character and want to be able to export the model in the pose that it is in.
I select "export from preview", choose the destination as c:\, and change the main output type to ".dae - COLLADA" , tick the "Rotate 90" option and select OK.
I open up 3dsMax2010, drag and drop the .dae file into the window and select to use the open collada importer. To my dismay the model is in the original pose, not in the pose which I paused the animation in.
I hope I'm not totally confused on the use of "Export from preview" but if anyone could help me out with how to export models from preview mode and load them into 3dsMax I would greatly appreciate it.
EDIT: I should note that this sort of outcome happens when I look at the ff8 files as well; that's why I presumed it was a problem with myself that is somewhat generic.
LUBDAR
I'll play the animation and stop it at any given point. I like the pose of the character and want to be able to export the model in the pose that it is in.
I select "export from preview", choose the destination as c:\, and change the main output type to ".dae - COLLADA" , tick the "Rotate 90" option and select OK.
I open up 3dsMax2010, drag and drop the .dae file into the window and select to use the open collada importer. To my dismay the model is in the original pose, not in the pose which I paused the animation in.
I hope I'm not totally confused on the use of "Export from preview" but if anyone could help me out with how to export models from preview mode and load them into 3dsMax I would greatly appreciate it.
EDIT: I should note that this sort of outcome happens when I look at the ff8 files as well; that's why I presumed it was a problem with myself that is somewhat generic.
LUBDAR
-
- Moderator
- Posts: 2602
- Joined: Sun May 18, 2008 3:01 pm
- Has thanked: 57 times
- Been thanked: 1422 times
Re: Señor Casaroja's Noesis
just export it as fbx then play the animation in max and pause it on the frame you want.
-
- veteran
- Posts: 95
- Joined: Wed Jun 08, 2011 7:14 am
- Has thanked: 18 times
- Been thanked: 9 times
Re: Señor Casaroja's Noesis
Thanks for the quick reply chrrox!chrrox wrote:just export it as fbx then play the animation in max and pause it on the frame you want.
Is it just my computer?? I've attached the file.
I play the animation and go to "Export from preview". I selected .FBX as the output type, and export, and drag and drop it into max and I press play but nothing happens. It's still the original pose. the animation bar trudges along, but the number of total frames doesn't equal the same number from Noesis.
Last edited by LUBDAR on Mon Jan 09, 2012 1:51 am, edited 1 time in total.
-
- advanced
- Posts: 47
- Joined: Fri Dec 16, 2011 8:30 pm
- Has thanked: 2 times
- Been thanked: 3 times
Re: Señor Casaroja's Noesis
Hi - I would like your opinion on the Dark Souls BND archive files and FLEV 3d format. Is there anyway you could take a look at these and comment if it is possible to access the 3D models from this game?
http://xis9.com/000000ef.flv
and the BND (Noesis doesn't support this version)
http://xis9.com/000000b3.bnd
thanks and looking forward!
http://xis9.com/000000ef.flv
and the BND (Noesis doesn't support this version)
http://xis9.com/000000b3.bnd
thanks and looking forward!
- Rimbros
- ultra-veteran
- Posts: 495
- Joined: Fri Jul 09, 2010 12:23 am
- Has thanked: 41 times
- Been thanked: 16 times
Re: Señor Casaroja's Noesis
MMMM.. i never see .dat files in the golden axe bro, this its textures extracted from .pkg file any idea?chrrox wrote:its the same format as golden axe.Rimbros wrote:Mr. Adults, its Noesis compatible with Iron Man 2 xbox360 or ps2 game?, (.pkg files)
http://www.megaupload.com/?d=IQG9225C
Renders Art by Rimbros
http://s303.photobucket.com/albums/nn12 ... E/Renders/
Personal Game repository samples, send PM
http://s303.photobucket.com/albums/nn12 ... E/Renders/
Personal Game repository samples, send PM
-
- Moderator
- Posts: 1007
- Joined: Mon Mar 23, 2009 2:57 am
- Has thanked: 44 times
- Been thanked: 505 times
Re: Señor Casaroja's Noesis
It's loading the frames, Max just confines the range to whatever your global default is when you import animation from FBX. You have to click that little clock icon to the...I think it was to the lower-right of the animation bar by default. Then you have to expand the range of animation frames for the scene in the dialog that comes up.LUBDAR wrote:the animation bar trudges along, but the number of total frames doesn't equal the same number from Noesis.
-
- veteran
- Posts: 95
- Joined: Wed Jun 08, 2011 7:14 am
- Has thanked: 18 times
- Been thanked: 9 times
Re: Señor Casaroja's Noesis
Thanks for the help! Unfortunately, as I had feared, my I don't think my computer can handle it. It just took me about 7 minutes to get Max to recognize that I wanted to stop the animation.MrAdults wrote: It's loading the frames, Max just confines the range to whatever your global default is when you import animation from FBX. You have to click that little clock icon to the...I think it was to the lower-right of the animation bar by default. Then you have to expand the range of animation frames for the scene in the dialog that comes up.
Its O.K. though, usually as long as I can get the models into Max and they have bones, then I just spend time posing them.
Soon enough I'll upgrade computers...
-
- Moderator
- Posts: 1007
- Joined: Mon Mar 23, 2009 2:57 am
- Has thanked: 44 times
- Been thanked: 505 times
Re: Señor Casaroja's Noesis
3.77 is up, this one is another pretty significant release due to large amounts of restructuring under the hood.
The SMD loader crash fix is kind of speculative. It's a crash someone submitted through Noesis, and the stack seemed to be trashed, so I reviewed the area of the crash and generally tried to fool-proof everything to prevent any kind of stack corruption or out of range stack variables. (the actual crash happened when retrieving a counter variable off of the stack that had been corrupted by some other code that executed during a loop) Seemed like it may have been overflowing the texture name buffer, but I don't know. If by any chance you're the person that submitted that crash, if you can still reproduce it in 3.77 I'd appreciate you sending over the SMD file that's crashing it.
Edit: Oh, and one word of warning, your config and persistent settings will reset after you update to 3.77. I had to change one of the core config structures to fit space for the renderer DLL name. So you'll want to redo any custom settings. (which includes re-enabling auto-updating if you were using it)
Code: Select all
-3.77 - Removed all OpenGL dependencies and integrated a new graphics API standard into all of the Noesis modules. A new graphics module that uses OpenGL is now provided. (Direct3D and/or software renderers will probably be coming in the future)
-3.77 - Fixed another bug in the Kinect module.
-3.77 - Added RPGEO_QUAD_ABC_BCD, RPGEO_QUAD_ABC_ACD, RPGEO_QUAD_ABC_DCA to cover other common quad index order conventions. (RPGEO_QUAD is ABC_DCB, as now denoted by the comment in pluginshare.h)
-3.77 - Fixed a crash in the SMD loader.
-3.77 - When you select a bone in the data viewer, shift+clicking will auto-enable the bone's transform offset and allow you to rotate the bone with your mouse. (left and right buttons control which axes you're rotating)
-3.77 - Fixed a bug that occurred when parsing OBJ files with blank usemtl entries.
Edit: Oh, and one word of warning, your config and persistent settings will reset after you update to 3.77. I had to change one of the core config structures to fit space for the renderer DLL name. So you'll want to redo any custom settings. (which includes re-enabling auto-updating if you were using it)