I am looking to implement this:
({
"icons": Map {
"a" : Image (
path: "a.png"
),
"b" : Image (
path: "b.png"
),
"c" : Image (
path: "c.png"
),
},
"meshes": Map {
"sphere": Sphere (
radius: 0.75,
),
"square": Quad (
size: (
2.0,
2.0
)
),
},
})
Where I then am trying to create a dynamic asset out of this, with the backbone enum being:
/// Supported types of icons within the editor to be loaded in
#[derive(serde::Deserialize, Debug, Clone)]
enum EditorIconAssetType {
/// PNG images for cameras, lights, and audio
Image { path: String },
/// Quad mesh for putting images onto
Quad { size: Vec2 },
/// Icosphere mesh to make an icon clickable
Sphere { radius: f32 },
// *This is the part that I am not sure about*
/// Collection of multiple inner assets
Map { items: HashMap<String, EditorIconAssetType> },
}
So my question on this is do I need to try and find a way to support the RON map type like this or is there another way?
I know that in the impl of DynamicAssetType there is a collection type that stores a vec of the data, so is there a clean way that this could be done?
I feel like this should either be a feature if it isn't already, but given a direction I wouldn't mind trying to hash it out.
I am looking to implement this:
({ "icons": Map { "a" : Image ( path: "a.png" ), "b" : Image ( path: "b.png" ), "c" : Image ( path: "c.png" ), }, "meshes": Map { "sphere": Sphere ( radius: 0.75, ), "square": Quad ( size: ( 2.0, 2.0 ) ), }, })Where I then am trying to create a dynamic asset out of this, with the backbone enum being:
So my question on this is do I need to try and find a way to support the RON map type like this or is there another way?
I know that in the impl of
DynamicAssetTypethere is a collection type that stores a vec of the data, so is there a clean way that this could be done?I feel like this should either be a feature if it isn't already, but given a direction I wouldn't mind trying to hash it out.