[TOOL] DAEnerys - DAE Ship Editor


(Rufus Shinra) #563

Another question for you, @PayDay, about the NavLights. I’ve set up two of them in front of the hangar for a carrier but there’s no light showing up ingame:

Any idea what parameters I got wrong?


(Nathanius) #564

Tick the “sprite” flag :slight_smile:


(Nathanius) #565

Hey guys,

Got an odd bug for ya!

[details=JIT Debugging message]System.ArgumentOutOfRangeException: Length cannot be less than zero.
Parameter name: length
at System.String.Substring(Int32 startIndex, Int32 length)
at DAEnerys.Importer.ManualParsing(String file) in D:\DAEnerys\DAEnerys\collada\Importer.cs:line 1506
at DAEnerys.Importer.ImportFromFile(String path) in D:\DAEnerys\DAEnerys\collada\Importer.cs:line 103
at DAEnerys.Main.buttonOpen_Click(Object sender, EventArgs e) in D:\DAEnerys\DAEnerys\Main.cs:line 392
at System.Windows.Forms.ToolStripItem.RaiseEvent(Object key, EventArgs e)
at System.Windows.Forms.ToolStripButton.OnClick(EventArgs e)
at System.Windows.Forms.ToolStripItem.HandleClick(EventArgs e)
at System.Windows.Forms.ToolStripItem.HandleMouseUp(MouseEventArgs e)
at System.Windows.Forms.ToolStrip.OnMouseUp(MouseEventArgs mea)
at System.Windows.Forms.Control.WmMouseUp(Message& m, MouseButtons button, Int32 clicks)
at System.Windows.Forms.Control.WndProc(Message& m)
at System.Windows.Forms.ToolStrip.WndProc(Message& m)
at System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)

[/details]

Happens with some DAE files that I’ve not touched before (at least, I don’t think I have except for getting RODOH to make them). Re-RODOH-ing the original HOD produces a DAE that I can use.


(Taiidan Republic Mod) #566

S question I have pondered before… Is the pre patch RODOH different to the post patch RODOH?


(Christoph Timmermann) #567

The line count changed since the last release, so your error message doesn’t really help. :smile:
Could you send me one of these DAEs please?

And for anyone who is wondering… I’m currently taking a little break from developing this, didn’t really do much since the last release.


(ajlsunrise) #568

I would hope people are using the most current release, but it would be helpful as well to include what build number you have.

I believe this is the line:
string channelTarget = channel.Target.Substring(lastSlash + 1, lastDot - lastSlash - 1);

lastDot is likely -1, which means channel.Target did not have a dot.


(Nathanius) #569

Theoretically? I think it got updated…

I’m not able to access the repository at the moment, can you see this page? It has all three versions (including the latest fixed one) listed there. SourceForge[quote=“PayDay, post:567, topic:540034”]
I’m currently taking a little break from developing this
[/quote]

Good, don’t burn yourself out :wink:


(ajlsunrise) #570

Yep, this is it exactly.

<channel source="#Class[MultiMesh]_Version[512]-Matrix-animation-transform" target="Class[MultiMesh]_Version[512]/matrix"/>

vs.

<channel source="#LatchPoint visual mesh-rotateX.ANGLE" target="LatchPoint visual mesh/rotateX.ANGLE"></channel>


(Christoph Timmermann) #571

Ahh… matrices are supported in my development version already.
The joy of unreleased features… :smile: always reminds me of the map editor.


(Nathanius) #572

As long as it’s already done somewhere, it’s not slowing me down so I’m just looking forward to the next release when you guys get to it :wink:


(Siber) #573

I hand removed the bad entries from a file giving me this error, HWAT_UNH_CAStandard, and the result loads in DAEnerys and still builds properly and displays as expected ingame… but DAENerys, despite not having any error or problem notices, does not load any of the joint positions at all.

All the turret meshes and stuff is actually there in DAENerys, it’s just all at 0,0,0.


(Christoph Timmermann) #574

That’s because these DAEs use matrices to translate/rotate the nodes. It will be fixed in the next version. (Which is coming soon, I just have to deal with the 4K-issues.)


(Nathanius) #575

I am sincerely looking forward to seeing all the buttons again :smiley:

//EDIT: Also looking forward to not having to delete the ship shader in my mod files every time I use the program :thinking:


(Christoph Timmermann) #576

Yaaaaay, progress!
Download: DAEnerys_b7000.zip

Added features

  • Added support for matrices in node transforms and animations.
  • Doubled the (default) glow power and reflection strength to better represent the in-game look.
  • All kinds of texture paths are now supported.
  • The exporter now puts the collision and LOD roots along the X axis based on the bounding box.
  • DAE files can now be opened by dragging & dropping them into the editor. (as requested by @Alekfix789)
  • Updated ShaderManifest (shader parsing, loading) to the new version from @radar3301.
  • Material parameters (under HOLD_PARAMS) are now loaded and exported.
  • Added error warning when a texture doesn’t have a (valid) suffix. (as requested by @Dom2)
  • Load/Save initial directories are now saved independently from each other. (as requested by @EatThePath)

Bugfixes

  • Fixed ship mesh bounding box calculations.
  • Fixed scaling of ship mesh lod material list.
  • Added some null-checks for shader textures.
  • Negative time values for animations are now re-set to 0.
  • GUI-Overhaul; Should work with all DPI-settings (150% tested) and window sizes now.
  • Animation playback is now only affecting the joints that are animated in that time frame.
  • Tweaked Blender-Toolkit fix to work with the new version from @DKesserich too.

Sorry for the long waiting time, I hope we have nuked all bugs. :wink:


(Nathanius) #577

I (inevitably) have an almighty conniption to report…

Exception Details
************** Exception Text **************
System.NullReferenceException: Object reference not set to an instance of an object.
   at DAEnerys.Renderer.DrawHWMesh(HWMesh mesh, Int32 index) in D:\DAEnerys\DAEnerys\Renderer.cs:line 643
   at DAEnerys.Renderer.Render() in D:\DAEnerys\DAEnerys\Renderer.cs:line 411
   at System.Windows.Forms.Control.OnPaint(PaintEventArgs e)
   at OpenTK.GLControl.OnPaint(PaintEventArgs e)
   at System.Windows.Forms.Control.PaintWithErrorHandling(PaintEventArgs e, Int16 layer)
   at System.Windows.Forms.Control.WmPaint(Message& m)
   at System.Windows.Forms.Control.WndProc(Message& m)
   at System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)
Log.txt
OpenTK initialized.
WARNING: The texture "G:\Games\Homeworld 2\Modding Tools\Reference\HWR 2.0\background/m01\m01_hq_posx.dds" is not in TGA-Format.
WARNING: The texture "G:\Games\Homeworld 2\Modding Tools\Reference\HWR 2.0\background/m01\m01_hq_negx.dds" is not in TGA-Format.
WARNING: The texture "G:\Games\Homeworld 2\Modding Tools\Reference\HWR 2.0\background/m01\m01_hq_posy.dds" is not in TGA-Format.
WARNING: The texture "G:\Games\Homeworld 2\Modding Tools\Reference\HWR 2.0\background/m01\m01_hq_negy.dds" is not in TGA-Format.
WARNING: The texture "G:\Games\Homeworld 2\Modding Tools\Reference\HWR 2.0\background/m01\m01_hq_posz.dds" is not in TGA-Format.
WARNING: The texture "G:\Games\Homeworld 2\Modding Tools\Reference\HWR 2.0\background/m01\m01_hq_negz.dds" is not in TGA-Format.
Info,  T8112: Load colladaBlenderFix.dae

Info,  T8112: Found a matching importer for this file format

Info,  T8112: Import root directory is '.\'

Warn,  T8112: Collada: No material specified for subgroup <> in geometry <COL[Root]-lib>.

Info,  T8112: Entering post processing pipeline

Info,  T8112: JoinVerticesProcess finished | Verts in: 18516 out: 7901 | ~57.3%

Info,  T8112: Leaving post processing pipeline

Trying to parse texture "IMG[gacargo02_DIFF]_FMT[DXT5]".
Trying to parse texture "IMG[gacargo01_DIFF]_FMT[DXT5]".
Trying to parse texture "IMG[gacargo_thruster_DIFF]_FMT[DXT5]".
Trying to parse material "MAT[Badge]_SHD[badge]".
Trying to parse material "MAT[gacargo01]_SHD[ship]".
Trying to parse material "MAT[gacargo02]_SHD[ship]".
Trying to parse material "MAT[thruster]_SHD[thruster]".
WARNING: Dockpath segment "SEG[0]_Tol[10]_Spd[100]_Flags[UseRot Check]-Pivot" is not a child of a dockpath.
WARNING: Dockpath segment "SEG[2]_Tol[50]_Spd[100]_Flags[UseRot Check]-Pivot" is not a child of a dockpath.
WARNING: Dockpath segment "SEG[0]_Tol[10]_Spd[100]_Flags[UseRot Check]_ncl1_1-Pivot" is not a child of a dockpath.
WARNING: Dockpath segment "SEG[1]_Tol[20]_Spd[100]_Flags[UseRot Check ClearRes]_ncl1_1-Pivot" is not a child of a dockpath.
WARNING: Dockpath segment "SEG[2]_Tol[50]_Spd[100]_Flags[UseRot Check]_ncl1_1-Pivot" is not a child of a dockpath.
Info,  T8112: Load colladaBlenderFix.dae

Info,  T8112: Found a matching importer for this file format

Info,  T8112: Import root directory is '.\'

Warn,  T8112: Collada: No material specified for subgroup <> in geometry <COL[Shield]-lib>.

Warn,  T8112: Collada: No material specified for subgroup <> in geometry <COL[Root]-lib>.

Warn,  T8112: Collada: No material specified for subgroup <> in geometry <NAVL[NavLight1]_Type[default]_Sect[0]_Sz[10]_Ph[0]_Fr[0.5]_Col[1,0,0]_Dist[20]_Flags[Sprite]-lib>.

Warn,  T8112: Collada: No material specified for subgroup <> in geometry <NAVL[NavLight2]_Type[default]_Sect[0]_Sz[10]_Ph[0]_Fr[0.5]_Col[0,1,0]_Dist[20]_Flags[Sprite]-lib>.

Warn,  T8112: Collada: No material specified for subgroup <> in geometry <NAVL[NavLight3]_Type[default]_Sect[0]_Sz[10]_Ph[0]_Fr[0.5]_Col[1,1,1]_Dist[20]_Flags[Sprite]-lib>.

Warn,  T8112: Collada: No material specified for subgroup <> in geometry <NAVL[NavLight4]_Type[default]_Sect[0]_Sz[10]_Ph[0]_Fr[0.5]_Col[1,1,1]_Dist[20]_Flags[Sprite]-lib>.

Warn,  T8112: Collada: No material specified for subgroup <> in geometry <NAVL[NavLight5]_Type[default]_Sect[0]_Sz[5]_Ph[0]_Fr[0]_Col[1,0,0]_Dist[10]_Flags[Sprite]-lib>.

Warn,  T8112: Collada: No material specified for subgroup <> in geometry <NAVL[RedLight1]_Type[default]_Sect[0]_Sz[2]_Ph[0]_Fr[0]_Col[1,0,0]_Dist[10]_Flags[Sprite]-lib>.

Warn,  T8112: Collada: No material specified for subgroup <> in geometry <NAVL[RedLight2]_Type[default]_Sect[0]_Sz[2]_Ph[0]_Fr[0]_Col[1,0,0]_Dist[10]_Flags[Sprite]-lib>.

Warn,  T8112: Collada: No material specified for subgroup <> in geometry <NAVL[GreenLight1]_Type[default]_Sect[0]_Sz[2]_Ph[0]_Fr[0]_Col[0,1,0]_Dist[10]_Flags[Sprite]-lib>.

Warn,  T8112: Collada: No material specified for subgroup <> in geometry <NAVL[GreenLight2]_Type[default]_Sect[0]_Sz[2]_Ph[0]_Fr[0]_Col[0,1,0]_Dist[10]_Flags[Sprite]-lib>.

Warn,  T8112: Collada: No material specified for subgroup <> in geometry <NAVL[NavLight6]_Type[default]_Sect[0]_Sz[2]_Ph[0]_Fr[0.5]_Col[1,1,1]_Dist[10]_Flags[Sprite]-lib>.

Warn,  T8112: Collada: No material specified for subgroup <> in geometry <NAVL[NavLight7]_Type[default]_Sect[0]_Sz[2]_Ph[0]_Fr[0.5]_Col[1,1,1]_Dist[10]_Flags[Sprite]-lib>.

Warn,  T8112: Collada: No material specified for subgroup <> in geometry <NAVL[NavLight8]_Type[default]_Sect[0]_Sz[2]_Ph[0]_Fr[2]_Col[1,1,1]_Dist[10]_Flags[Sprite]-lib>.

Warn,  T8112: Collada: No material specified for subgroup <> in geometry <NAVL[NavLight9]_Type[default]_Sect[0]_Sz[2]_Ph[0]_Fr[2]_Col[1,1,1]_Dist[10]_Flags[Sprite]-lib>.

Warn,  T8112: Collada: No material specified for subgroup <> in geometry <NAVL[RedLight3]_Type[default]_Sect[0]_Sz[2]_Ph[0]_Fr[0]_Col[1,0,0]_Dist[5]_Flags[Sprite]-lib>.

Warn,  T8112: Collada: No material specified for subgroup <> in geometry <NAVL[RedLight4]_Type[default]_Sect[0]_Sz[2]_Ph[0]_Fr[0]_Col[1,0,0]_Dist[5]_Flags[Sprite]-lib>.

Warn,  T8112: Collada: No material specified for subgroup <> in geometry <marker_visual_mesh_marker1-lib>.

Warn,  T8112: Collada: No material specified for subgroup <> in geometry <marker_visual_mesh_marker2-lib>.

Warn,  T8112: Collada: No material specified for subgroup <> in geometry <marker_visual_mesh_marker3-lib>.

Warn,  T8112: Collada: No material specified for subgroup <> in geometry <marker_visual_mesh_marker4-lib>.

Warn,  T8112: Collada: No material specified for subgroup <> in geometry <marker_visual_mesh_marker5-lib>.

Warn,  T8112: Collada: No material specified for subgroup <> in geometry <marker_visual_mesh_plasma1-lib>.

Warn,  T8112: Collada: No material specified for subgroup <> in geometry <marker_visual_mesh_plasma2-lib>.

Info,  T8112: Entering post processing pipeline

Info,  T8112: JoinVerticesProcess finished | Verts in: 66201 out: 17777 | ~73.1%

Info,  T8112: Leaving post processing pipeline

Trying to parse texture "IMG[Constitution1_DIFF]_FMT[8888]".
Trying to parse texture "IMG[Constitution2_DIFF]_FMT[8888]".
Trying to parse texture "IMG[Constitution3_DIFF]_FMT[8888]".
Trying to parse texture "IMG[Constitution4_DIFF]_FMT[8888]".
Trying to parse texture "IMG[fed_TOS_anim_Bussard_DIFF]_FMT[8888]".
Trying to parse texture "IMG[fed_TOS_Constitution_Thruster_DIFF]_FMT[8888]".
Trying to parse material "MAT[Bussard]_SHD[shipAnim]".
WARNING: Unknown shader "shipAnim" of material "MAT[Bussard]_SHD[shipAnim]".
Trying to parse material "MAT[Constitution1]_SHD[ship]".
Trying to parse material "MAT[Constitution2]_SHD[ship]".
Trying to parse material "MAT[Constitution3]_SHD[ship]".
Trying to parse material "MAT[Constitution4]_SHD[ship]".
Trying to parse material "MAT[Thruster]_SHD[thruster]".
Manifest.log
GL Info: 4.5.0 NVIDIA 376.53
Vendor: NVIDIA Corporation
Renderer: GeForce GTX 960/PCIe/SSE2
PartID: 960
Unable to locate imported config file: shaders\patch_config.manifest

It may be related to the shipAnim shader as I was testing the Connie :thinking:
I opened another ship without the shipAnim shader and it was fine, even without deleting my modified ship shader with the fixed asteroid glow/burn


(ajlsunrise) #578

I know this might sounds really stupid, but can you post a screenshot of your datapaths?


(Nathanius) #579

As requested


(ajlsunrise) #580

This is how you have it setup, yes?

And could you send the DAE? Does fed_TNG_flagship.DAE work?


(Nathanius) #581

I’m not at home, but here’s the folder structure from Sourceforge :sweat_smile:

I’ll give the TNG flagship a try tongiht

EDIT// How do you have the asteroid glow fix without the modified sob_ship.frag?


(ajlsunrise) #582

You don’t.