Blender DAE Exporter for HWRM

(Xercodo) #81

Same reason I haven’t added an info list system to HODOREST yet. Using a library to read in a XML file is easy enough, navigating it when you haven’t a clue what the real structure is like is hell. All I wanna do is list all the joint dammit! I could even do basic error checking like making sure the textures are in the same folder as HODOR expects, or that names of joints match their mesh children, etc.

(D Kesserich) #82

I just committed the change that should make it so you don’t have to do the rotate -90 on X step before exporting.

If anyone wants to give it a test whirl for me in case I missed any of the hardpoints, or anything else is misbehaving, that’d be great. Just download the master zip I linked previously.

There’s one more feature I want to add that Xercodo and I talked about before I do another actual release.

(DoomLord) #83

Cannot wait for more updates from you :smiley:

(Christoph Timmermann) #84

It does not work for me, the rotation is not correct after exporting.
I checked that I have the new version.

(D Kesserich) #85

Try downloading again, from this link:

When you check in your add-ons in Blender it should say “Version 1.1.2” if you expand the HW Toolkit info pane:

(Christoph Timmermann) #86

Still does not work, the version says 1.1.2.
But I see you still use Blender 2.74, I am running 2.75a, maybe that has something to do with it?

(D Kesserich) #87

Works fine in 2.75 for me:

(Dragon93) #88

Great to see this still coming along. Looks really good.

I’m definitely curious about moving a lot of this functionality into the DAE Ship Editor idea; having to put so much effort into a 90 degree rotation is a sign of how games and tools don’t mix! Same requirement in Unity.

(BitVenom) #89

I think my old rant about ‘workflow’ still stands. Generally thinking most artists are going to find the workflow in a mature tool better (which is great training for a real job using those tools, if they don’t have that sort of thing already)…

That isn’t to put down external tools, at all. They have a place for some. BUT - when assets get really, really complex, at some point the scale of work for smaller tools falls down. The rig you have in Maya/Blender/Max is going to have data and layers that don’t make it out to the DAE at all - so the DAE becomes a ‘mid’ process step, not the head. When that happens the DAE is not something you ever edit, because that is lost time and wasted effort when your head file needs changes.

Few, if any people are going to treat the DAE at their head asset… but for those that do I look forward to well-developed tools…

(Dragon93) #90

That’s were the fun starts for us that don’t bother with the art as much anymore :smiley:

Tools are great projects as you know, and definitely a way to keep up the fun when you move away from hardcore modding.
My problem is that tools don’t keep up with games - i come from a CoH modding background (took us years to get our first models animated, the game barely had a percentage of the modding support you guys give; we had to show them how to unbreak modding once :D) - and are designed for creating assets more than managing them.

When I found an issue with HODOR it was fixed within hours (or less), which is much more possible with purpose built.
I imagine something like the DAE tool as a place to merge together all the bits the game needs with all the bits the artists make - just like the Blender/Max plugins automated hardpoint naming etc.
I would stil personally see the DAE as a middle man; just with a tool that automates the walk over to the end game.
Input art -> output .hod and ship code.

(D Kesserich) #91

Video for the new release! Automatic Duplicate Object Re-naming! Sphere dock path nodes! No more rotating before export!

(Christoph Timmermann) #92

Unfortunately nothing works for me.
The rotation is still wrong after export, weapons are facing upwards when creating, the fix names button does nothing, the collision mesh is facing downwards after copying and other stuff.

Obviously it is my problem only, I am trying to fix it.

EDIT: I made a fresh install of Blender, now fix names and stuff seems to work, but the rotation is still off.

(D Kesserich) #93

Are you applying transforms? If yes: Don’t do that anymore. If no: I’m definitely confused.

To further clarify: the only transform that needs to be applied anymore is Scale, on meshes only. Applying scale on the empties causes weird stuff to happen, especially if you’re mirroring them.

(Christoph Timmermann) #94

I was applying them, yes. But how would that fix it? The rotation is on 0 0 0, same with the location for the root nodes and meshes. Does it need to be -90 or something?

(D Kesserich) #95

The Root nodes are rotated -90 when you hit “Convert to Ship” and “Copy to Collision,” which is how they should be so that their local coordinate systems are Y-up. If the transform gets applied, the local coordinates go back to Blender’s Z-up, and then Homeworld ends up turning it on its end.

(Christoph Timmermann) #96

It works now, thanks!

(Xercodo) #97

It doesn’t look like name fixer works on Slaves.

(D Kesserich) #98

Fixed, albeit not in an ideal way.

If you’re duplicating your main turret to create your first slave, you have to remove the .001 manually after duplicating.
If you duplicate that slave multiple times for additional slaves (i.e. you have Weapon_Gun0Slave_Position].001 and Weapon_Gun0Slave_Position].002) you’ll have to hit fix names twice, since the first time will rename them to Weapon_Gun0Slave1_Position and Weapon_Gun0Slave1_Position].001.

My recommendation would be if you’re going to do more than one slave, do the manual rename of the first and second slave, removing any .00x suffix, and any additional slaves can be duplicates of the second slave, and Fix Names will handle Slave2 through whatever

It’s really frustrating, because the slave sequence has to start with ‘Slave,’ not ‘Slave0,’ (which totally seems like a bug to me) so I can’t just add a 0 on to the first slave and then iterate the numbers from there. Maybe there’s some sequence of conditionals that I’m not seeing because I’m tired.

I’m also not handling re-naming the barrel meshes. I’ll have to figure that out later.

(Xercodo) #99

Hah see my problem was renaming [Weapon_GunSlave].000 and [Weapon_GunSlave].001 to [Weapon_Gun0Slave] and [Weapon_Gun1Slave]

See this is where my method works out so that I just need to change the name manually for the main and the other 4 joints are renamed to match xD

You can’t tell if the slave need to be renamed to match the gun or the match n-number of slaves.

(D Kesserich) #100

You can still manually name the Positions and all the children will get renamed to match.

I’m not sure why you’d ever have [Weapon_GunSlave].001, since the most logical way to set the slaves is to duplicate the original Gun tree and add Slave in after the weapon number.