Just working on my first vehicle mod for Outerra and I must say, this engine is awesome!
On the topic of materials though I've run into a bit of a sore spot. I export models from Sketchup as dae (collada). This works great overall, however when generating the .mtl file Outerra seems to disregard material names.
As an example, the dae file contains a material declaration similar to the following:
<material id="ID179" name="dark_grey">
<instance_effect url="#ID180" />
</material>
From this, Outerra produces the following in the .mtl file:
{
"name" : "ID179",
"color" : ".518,.518,.518,1.0",
"f0" : ".027",
"roughness" : ".498",
"no_light" : false,
"alpha_masked" : false,
"tex_albedo" : "",
"tex_normal" : "",
"tex_roughness" : "",
"tex_opacity" : "",
"tex_reflectance" : "",
"tex_environment" : ""
},
For smaller models, it's easy enough to parse through the file manually and figure out which colors are which. When you have a larger number of materials in a model however, it can become extremely cumbersome locating individual materials in this file.
On the off-chance any of the devs are reading this - my suggestion would be to add the collada "name" attribute to the mtl array, if possible. Even just a code comment above the array would make the task of vehicle building considerably easier.
Proposed solution:
{
"id" : "ID179",
"name" : "dark_grey",
"color" : ".518,.518,.518,1.0",
"f0" : ".027",
"roughness" : ".498",
"no_light" : false,
"alpha_masked" : false,
"tex_albedo" : "",
"tex_normal" : "",
"tex_roughness" : "",
"tex_opacity" : "",
"tex_reflectance" : "",
"tex_environment" : ""
},
or
// dark_grey
{
"name" : "ID179",
"color" : ".518,.518,.518,1.0",
"f0" : ".027",
"roughness" : ".498",
"no_light" : false,
"alpha_masked" : false,
"tex_albedo" : "",
"tex_normal" : "",
"tex_roughness" : "",
"tex_opacity" : "",
"tex_reflectance" : "",
"tex_environment" : ""
},
If this isn't a desirable feature for whatever reason and nobody else has any suggestions for an improved workflow, then perhaps I will attempt a quick script for renaming material id's on a dae file directly. It would be awesome if this could be rolled directly into the importer though.
This engine excites me!