Crafter.Graphics/project.json

105 lines
4.4 KiB
JSON

{
"name": "crafter-graphics",
"configurations": [
{
"name": "base",
"implementations": ["implementations/Crafter.Graphics-Window", "implementations/Crafter.Graphics-UiElement", "implementations/Crafter.Graphics-Camera"],
"interfaces": ["interfaces/Crafter.Graphics-Window", "interfaces/Crafter.Graphics", "interfaces/Crafter.Graphics-UiElement", "interfaces/Crafter.Graphics-Types", "interfaces/Crafter.Graphics-Camera"],
"type": "library"
},
{
"name": "wayland",
"implementations": ["implementations/Crafter.Graphics-WindowWayland", "implementations/Crafter.Graphics-WindowWaylandWayland"],
"interfaces": ["interfaces/Crafter.Graphics-WindowWayland", "interfaces/Crafter.Graphics-WindowWaylandWayland"],
"libs": ["wayland-client", "xkbcommon"],
"c_files": ["lib/xdg-shell-protocol", "lib/wayland-xdg-decoration-unstable-v1-client-protocol"],
"extends": ["base"]
},
{
"name": "vulkan",
"implementations": ["implementations/Crafter.Graphics-VulkanDevice", "implementations/Crafter.Graphics-WindowWaylandVulkan"],
"interfaces": ["interfaces/Crafter.Graphics-WindowWayland", "interfaces/Crafter.Graphics-WindowWaylandWayland", "interfaces/Crafter.Graphics-VulkanDevice", "interfaces/Crafter.Graphics-VulkanPipeline", "interfaces/Crafter.Graphics-VulkanShader", "interfaces/Crafter.Graphics-WindowWaylandVulkan", "interfaces/Crafter.Graphics-VulkanBuffer", "interfaces/Crafter.Graphics-Mesh", "interfaces/Crafter.Graphics-MeshShader", "interfaces/Crafter.Graphics-HeightmapShader","interfaces/Crafter.Graphics-VoxelShader", "interfaces/Crafter.Graphics-VulkanTexture", "interfaces/Crafter.Graphics-TextureShader", "interfaces/Crafter.Graphics-DescriptorSet"],
"libs": ["vulkan"],
"shaders": [
{
"path":"src/shader/MeshShaderXYZ.glsl",
"type":13,
"entrypoint":"main"
},
{
"path":"src/shader/MeshShaderXYZUV.glsl",
"type":13,
"entrypoint":"main"
},
{
"path":"src/shader/MeshShaderXYZRGBA.glsl",
"type":13,
"entrypoint":"main"
},
{
"path":"src/shader/MeshShaderHeightmapRGBA.glsl",
"type":13,
"entrypoint":"main"
},
{
"path":"src/shader/MeshShaderMixedVoxelGrid.glsl",
"type":13,
"entrypoint":"main"
},
{
"path":"src/shader/FragmentShaderSolidWhite.glsl",
"type":4,
"entrypoint":"main"
},
{
"path":"src/shader/FragmentShaderTexture.glsl",
"type":4,
"entrypoint":"main"
},
{
"path":"src/shader/FragmentShaderVertexColor.glsl",
"type":4,
"entrypoint":"main"
}
],
"extends": ["wayland"]
},
{
"name": "deps",
"dependencies": [
{
"path":"https://forgejo.catcrafts.net/Catcrafts/Crafter.Event.git",
"configuration":"lib"
},
{
"path":"https://forgejo.catcrafts.net/Catcrafts/Crafter.Math.git",
"configuration":"lib"
}
]
},
{
"name": "deps-debug",
"debug": true,
"dependencies": [
{
"path":"https://forgejo.catcrafts.net/Catcrafts/Crafter.Event.git",
"configuration":"lib-debug"
},
{
"path":"https://forgejo.catcrafts.net/Catcrafts/Crafter.Math.git",
"configuration":"lib-debug"
}
]
},
{
"name": "lib-wayland",
"extends": ["wayland", "deps"],
"type": "library"
},
{
"name": "lib-wayland-debug",
"type": "library",
"extends": ["wayland", "deps-debug"]
}
]
}