Open MeFisto94 opened 4 years ago
IMO j3m and j3md should be merged into a single thing. And j3md should be able to extend other j3md (same fields in child will replace those in parent).
Well there is a difference between j3md and j3m. j3md is basically the shader and j3m the application of it. You can have multiple j3m for the same j3md. Also when desinging a j3md you design a shader/"material", but don't know who uses it.
Actually if something, j3md should be the material and j3m is just a convenience format to set the materials properties. It basically really only is that: a file format for an artist based workflow so you don't have to set textures in code.
If j3md can extend j3md, the j3m could just be a j3md that extends the base material and redefine only the needed values.
Actually I strongly think we should use yml over json, because:
e.g.
"textures": {
"texture0": "path/to/img.jpg",
"texture1":"path/to/img.png",
}
could be
textures:
texture0: path/to/img.jpg
texture1: path/to/img.png
Or with the array syntax:
"textures": [
"a.png",
"b.png"
],
textures:
- a.png
- b.png
There has been talk about using json for the material system instead of a "home-grown" special syntax, which is harder to parse, especially for tools, and in history, was error prone already due to false parsing.