{
    // Use IntelliSense to learn about possible attributes.
    // Hover to view descriptions of existing attributes.
    // For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387
    "version": "0.2.0",
    "configurations": [
        {
            "name": "Launch TestBed",
            "type": "cppdbg",
            "request": "launch",
            "stopAtEntry": false,
            "cwd": "${workspaceFolder}/bin/",
            "environment": [],
            "program": "${workspaceFolder}/bin/testbed.kapp",
            "osx": {
                "MIMode": "lldb",
                "targetArchitecture": "arm64",
                "externalConsole": false,
            },
            "linux": {
                "externalConsole": false,
                // "environment": [
                //     { "name": "VK_LOADER_DEBUG", "value": "all"}
                // ]
            },
            "windows": {
                "type": "cppvsdbg",
                "program": "${workspaceFolder}/bin/testbed.kapp.exe",
                // cppvsdbg requires this instead of externalConsole
                "console": "integratedTerminal",
            },
        },
        {
            "name": "Launch Core Unit Tests",
            "type": "cppdbg",
            "request": "launch",
            "program": "${workspaceFolder}/bin/kohi.core.tests",
            "args": [],
            "stopAtEntry": false,
            "cwd": "${workspaceFolder}/bin/",
            "osx": {
                "MIMode": "lldb",
                "targetArchitecture": "arm64",
                "externalConsole": false,
            },
            "linux": {
                "externalConsole": false,
            },
            "windows": {
                "type": "cppvsdbg",
                "program": "${workspaceFolder}/bin/kohi.core.tests.exe",
                // cppvsdbg requires this instead of externalConsole
                "console": "integratedTerminal",
            }
        },
        {
            "name": "Launch Kohi Tools",
            "type": "cppdbg",
            "request": "launch",
            "program": "${workspaceFolder}/bin/kohi.tools",
            "args": [
                "combine",
                "outfile=${workspaceFolder}/assets/textures/wavy-sand_combined.png",
                "metallic=${workspaceFolder}/assets/textures/wavy-sand_metallic.png",
                "roughness=${workspaceFolder}/assets/textures/wavy-sand_roughness.png", 
                "ao=${workspaceFolder}/assets/textures/wavy-sand_ao.png"
            ],
            "stopAtEntry": false,
            "cwd": "${workspaceFolder}/bin/",
            "environment": [],
            "osx": {
                "MIMode": "lldb",
                "targetArchitecture": "arm64",
                "externalConsole": false,
            },
            "linux": {
                "externalConsole": false,
            },
            "windows": {
                "type": "cppvsdbg",
                "program": "${workspaceFolder}/bin/kohi.tools.exe",
                // cppvsdbg requires this instead of externalConsole
                "console": "integratedTerminal"
            },
        }
    ]
}