Yes, you are right. I could have also used xml (even worse) in my example or something like:
I choose JSON for my example because it is human readable and "Code for parsing and generating JSON data is readily available in many programming languages." (
But it was not my goal to suggest JSON. I would like to see the (a) library expandable to vertex colors, normals, uv-maps, etc.
You are right. I should have added some normals and other stuff to the example (e.g.):
Code:
"Vertices": [
{
"Position": [30, 24, 20],
"Normal": [0, 1, 0],
"Color": 16
},
{
"Position": [26, 24, 16],
"Normal": [0, 1, 0],
"Color": 16
},
}
[...]
"Meshes": [
{
"Name": "Inside"
"HideCondition": {
"And": [
"Ref": {
"Position": [20, 24, 10],
"Orientation": [1, 0, 0, 0, 1, 0, 0, 0, 1],
"File": "nstud.dat"
},
"Ref": {
"Position": [0, 24, 10],
"Orientation": [1, 0, 0, 0, 1, 0, 0, 0, 1],
"File": "nstud.dat"
},
"Ref": {
"Position": [-20, 24, 10],
"Orientation": [1, 0, 0, 0, 1, 0, 0, 0, 1],
"File": "nstud.dat"
},
"Ref": {
"Position": [20, 24, -10],
"Orientation": [1, 0, 0, 0, 1, 0, 0, 0, 1],
"File": "nstud.dat"
},
"Ref": {
"Position": [0, 24, -10],
"Orientation": [1, 0, 0, 0, 1, 0, 0, 0, 1],
"File": "nstud.dat"
},
"Ref": {
"Position": [-20, 24, -10],
"Orientation": [1, 0, 0, 0, 1, 0, 0, 0, 1],
"File": "nstud.dat"
}
]
}
"Ref": {
"Position": [10, 4, 0],
"Orientation": [1, 0, 0, 0, -5, 0, 0, 0, 1],
"File": "stud4.dat"
},
"Ref": {
"Position": [-10, 4, 0],
"Orientation": [1, 0, 0, 0, -5, 0, 0, 0, 1],
"File": "stud4.dat"
},
"Ref": {
"Position": [0, 24, 0],
"Orientation": [26, 0, 0, 0, -20, 0, 0, 0, 16],
"File": "box5.dat"
"BFC": "Invert"
}
},
{
"Name": "Outside",
[...]
}
Again, just some thoughts.