Jump to content

FreshLook

Members
  • Posts

    132
  • Joined

  • Last visited

Everything posted by FreshLook

  1. You must choose the skeleton number that matches the MDB head number. For example: P_HHM_skel05.GR2 for P_HHM_Head05.MDB. The facial bones are different for each skeleton number. Also, I suggest to use the Blender add-on (nwn2mdk-0.11.1-blender-2.8.zip), so you can import/export MDB/GR2 directly within Blender without using FBX. The installation procedure is same as any other Blender add-on. You may be interested in the neverwintervault forums (https://forum.neverwintervault.org/t/mdb-gr2-to-fbx-fbx-to-mdb-gr2-tools/348) and also the Discord server "NWN 2 Creator Channel" https://discordapp.com/invite/nEdn5Qx
  2. By looking at the screenshot, each bone appears to be enclosed by a bounding box, which seems oversized. I think the issue is related to this: in version 0.3, the units used for skeletons & animations were centimeters, and the skeleton scale was set to 0.01 so it didn't look too large in Blender, but using a scale of just 1.0 and meters as units seemed more logical to me so I changed it in 0.4. For some reason, the bounding boxes in 3ds max are oversized, but I'm not sure if consider it a bug of my tool. I searched about oversized max bounding boxes and found other people with similar issues. Maybe there is some import option to specify the units or you could hide/downscale the bounding boxes. Some interesting finds were: https://forums.autodesk.com/t5/3ds-max-forum/how-to-remove-white-boxes-around-object/td-p/7107917 https://forums.autodesk.com/t5/3ds-max-forum/importing-problems/td-p/7212982
  3. It's going to be very difficult for me to investigate this without more info. Could you tell me the files that you passed to nw2fbx? What is the contents of log.txt with version 0.6? That weird cage, is a single object or multiple objects? Could it be the collision spheres (objects starting with "COLS_")?
  4. It works with Blender 2.79. I suspect the problem is version 2.69 is quite old (2013). Could you try last version?
  5. nw2fbx generates FBX binary version 7.4, which is a format from year 2014, so no wonder it doesn't work with a software from year 2006. Did you compile my tools in Linux? Since currently my tools depend on granny32.dll to work with GR2 files, only if you compile in Windows or use my binary release it's going to work. Fortunately, like I explained in my last post, I could already get rid of the granny32.dll dependency, but I need to make changes to my tools. Is anyone interested in running my tools in Linux or other OS? I used nw2fbx on my Win 7 laptop (the one with 3ds max) and tried the fbx it generated on the Linux desktop. It kinda worked, since I get the mesh, the collision balls and the root bone, but although no error message shows in the log, and that the log lists all the bones in the skel, there's no skeleton after I import the resulting fbx in Blender. I'm using version 2.69, I think there's a newer one. I'll check if that gives better results. By the way, I tried: - mesh only --> one fbx - skel only --> another fbx - anim only --> third fbx => only the mesh shows, nothing else - all three together dropped on nw2fbx --> larger fbx => as described, everything is imported except the skeleton and the animations (but I guess it's related). What particular MDB and GR2 files are you using?
  6. nw2fbx generates FBX binary version 7.4, which is a format from year 2014, so no wonder it doesn't work with a software from year 2006. Did you compile my tools in Linux? Since currently my tools depend on granny32.dll to work with GR2 files, only if you compile in Windows or use my binary release it's going to work. Fortunately, like I explained in my last post, I could already get rid of the granny32.dll dependency, but I need to make changes to my tools. Is anyone interested in running my tools in Linux or other OS?
  7. Mini-blog When I researched the compression algorithm used in the GR2 files a year ago, I didn't find anyone that had reverse engineered the algorithm. I decided to use the granny32.dll library from the NWN2 install to decompress the GR2 files, but this has two problems for my future plans: Because granny32.dll is 32-bit and 64-bit programs can't be linked to 32-bit DLLs, my tools are tied to 32-bit or to use complex, annoying and ugly workarounds.Because granny32.dll is a Windows library, I can't make my tools cross-platform without complex, annoying and ugly workarounds.So I decided to revisit the compression algorithm past weekend and decided to reverse engineer it myself. I got a general high-level overview of the algorithm, but I was overwhelmed by the details, so I kept looking for every bit of info I could find and finally... I found that someone had reverse enginered the algorithm 3 years ago! In fact, it was a work to be included in xoreos-tools, but the author didn't find the time to properly rewrite it to fit in the project codebase. The work is here: https://github.com/berenm/xoreos-tools/tree/wip/granny-decoder I have tested it with a bunch of GR2 files, comparing the decompressed output of this implementation with the output of granny32.dll and they are byte by byte identical! Now the path is clearer for 64-bit and cross-platform :smile: .
  8. Minor comment regarding this tutorial: in step 4, the value in the SoundAppType column corresponds to a row in the placeableobjssnds.2da file. This set the sounds played when you animate the placeable. I have updated the tutorial. Thanks.
  9. I have released version 0.6. You can download it here: https://github.com/Arbos/nwn2mdk/releases Changes: Now the tools use the user property TINT_MAP of nodes for the tint map name. This is because there isn’t a suitable FBX material slot for the tint map.fbx2nw takes the FBX Bump material slot as the normal map if the NormalMap material slot is empty. This is because the FBX plug-in of 3ds Max exports the normal map into the Bump material slot.Now the tools ignore the case of user properties.
  10. I've finished writing a tutorial about animated multipart placeables: https://github.com/Arbos/nwn2mdk/wiki/Tutorial-Animated-Multipart-Placeable
  11. https://www.mixamo.com/ This site has a lot of free characters and animations. Here is the licensing: https://forums.adobe.com/thread/1992542 It explicitly says: "YES, you can create... DLC or Addon Content for Games" I wonder if there is a way to retarget the animation of a skeleton to another skeleton. For example, you have the animation of a skeleton from Mixamo and retarget the animation to P_HHM_skel. I've been playing with a Blender add-on without sucess, I don't know because of me or the add-on . If 3ds Max, Maya or another DCC have retarget functionality, maybe someone could try it. Even I could implement a tool to do that, but I could paint myself into a corner.
  12. Is the node at position (0, 0, 0), rotation (0, 0, 0) and scale (1, 1, 1)? Think that a MDB only stores the mesh. It doesn't store the transform of the node.
  13. When you convert FBX to MDB is there any error message in log.txt? Search for "ERROR" to find error messages. Could you send me the FBX so I can investigate it? I would use max files as source assets. FBX is an exchange format and may not store all info that a max file can store or store it differently. For example, you are going to lose quads because of triangulation.
  14. Is it an error or a warning? Is the FBX imported anyway and you can work with it? Why do you need to reimport a previously exported FBX?
  15. Nice hair :smile:. For next version I could emit an error if the FBX has no normal map or take the bump map as normal map as second alternative. Can I ask a favor? Could you make screenshots of the import FBX options and the export FBX options you're using? Just full screenshots and I edit them. It's for the wiki. No hurry at all, take your time (days, weeks, ...).
  16. I examined P_HHF_Hair21.fbx. Your FBX exported from 3ds Max has the normal map assigned as a bump map. So when your FBX is converted, the hair within the MDB doesn't have a normal map assigned, then it isn't displayed in game. I don't know if 3ds Max exports normal maps to FBX this way or maybe you set the normal map as a bump map? My tool expects the tint map assigned as displacement color (which I'm not sure if it's a good idea and I don't know how this is set in 3ds Max) and the glow map as emissive. Since the mesh hair is now smooth, there are a lot of shared vertices in the generated MDB, which causes it to be is smaller.
  17. yes, how can I send the fbx to you ? I send you a private message with my e-mail.
  18. The properties that my tool expects are not related to mdbutilities at all. I have never looked at how mdbutilites does things. It doesn't expect skeleton=P_HHF_skel either, it just looks what skeleton deforms a mesh in the FBX and takes its name. You are right. The properties HSB_LOW, HSB_SHORT, HSB_PONYTAIL go to the Hair dummy, not the mesh. My mistake. Could you send me the FBX to test it?
  19. For a mesh to be recognized as hair, the object must have the following properties: HSB_LOW = 0 or 1HSB_SHORT = 0 or 1HSB_PONYTAIL = 0 or 1Look at an imported hair to see this properties as an example. The documentation of my tool is scarce. As far as I know, you are the first to try my tool for hairs. Is there any reason why you add skeleton=P_HHF_skel to properties of mesh? My tool doesn't need this property because if the skeleton deforming a mesh is named P_HHF_skel, it assumes this is the skeleton name that must write in the skeleton field of the MDB.
  20. Is there a reason to save a FBX and reimport it later? Would saving as max file to reopen it later serve you better?
  21. What do you mean by "re-import the FBX"? I guess it's that you import the FBX first time, delete scene and import again in the same session?
  22. It's been a year since I started this project. I'm glad it serves some people, even if the NWN2 community is small. What you say about smoothing groups makes sense. Because a MDB doesn't store smoothing groups, it's not possible to recover the original ones. However, I'm making progress on writing to FBX vertex attributes per polygon-vertex instead of per vertex. In my tests so far, when I import the FBX into Blender, now there aren't any loose polygons, preserving the smooth parts and flat parts correctly. Even Blender marks sharp edges as if the artists had used the Mark Edge tool. I guess the FBX plug-in of 3ds Max will do fine as well.
  23. I will investigate about converting the MDB to FBX to have a unique vertex per position. Can I download P_HHF_Hair21.mdb from somewhere, so I can use it for testing?
  24. Because a MDB stores normals, tangents, binormals, uv and bone indices per vertex, there can be several vertices with same position. The tool creates a FBX vertex for each MDB vertex. If within a MDB the are several vertices with same position, then there is going to be unwelded polygons. However a DCC may support vertex attributes per polygon-vertex. Maybe an improvement of the tool would be that the FBX contatins a unique vertex per position and sets the other attributes per polygon-vertex. The tool isn't writing pose information to the generated FBX. However, since the skeleton and skin are in rest position, the automatic created pose should be correct.
×
×
  • Create New...