Initial commit
This commit is contained in:
67
framework/ShaderInpector.js
Normal file
67
framework/ShaderInpector.js
Normal file
@@ -0,0 +1,67 @@
|
||||
|
||||
class shaderDebugger{
|
||||
|
||||
setup() {
|
||||
|
||||
var shaders = document.shaders;
|
||||
|
||||
var select = document.querySelector(".selectDebugShader");
|
||||
|
||||
for (var i = 0; i < shaders.length; i++) {
|
||||
|
||||
var currentShader = shaders[i];
|
||||
|
||||
var option = document.createElement("option");
|
||||
|
||||
option.innerText = currentShader.path;
|
||||
|
||||
option.id = i;
|
||||
|
||||
select.appendChild( option );
|
||||
|
||||
}
|
||||
|
||||
document.querySelector( "#showBuffers" ).addEventListener( "click", async function() {
|
||||
|
||||
var select = document.querySelector(".selectDebugShader");
|
||||
|
||||
var selectedIndex = select.selectedIndex;
|
||||
|
||||
var selectedShader = document.shaders[ selectedIndex ]
|
||||
|
||||
const keysArray = Array.from( selectedShader.buffers );
|
||||
|
||||
console.log("\n\n\n\n -------------------- Debugging Shader --------------- \n\n\n\n");
|
||||
|
||||
console.log( "Shader Path: ", selectedShader.path );
|
||||
|
||||
console.log( selectedShader );
|
||||
|
||||
for (var i = 0; i < keysArray.length; i++) {
|
||||
|
||||
const bindingInfo = selectedShader.bindings.find( b => b.varName === keysArray[i][0] );
|
||||
|
||||
|
||||
if( bindingInfo ) {
|
||||
|
||||
if( bindingInfo.type == "storage" ) {
|
||||
|
||||
await selectedShader.debugBuffer( keysArray[i][0] );
|
||||
|
||||
}
|
||||
|
||||
} else {
|
||||
|
||||
console.log("this is a Uniform", keysArray, selectedShader.bindings);
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
});
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
||||
export default shaderDebugger;
|
||||
Reference in New Issue
Block a user