Added a bunch of WebGL functions related to shader uniforms to gl_functions.js
This commit is contained in:
26
data/main.js
26
data/main.js
@@ -21,33 +21,21 @@ function AcquireCanvas(canvasWidth, canvasHeight)
|
||||
// canvasContainer = document.getElementById("canvas_container");
|
||||
// console.assert(canvasContainer != null, "Couldn't find canvas container DOM element!");
|
||||
appGlobals.canvas = canvas;
|
||||
return canvas;
|
||||
}
|
||||
|
||||
function CreateGlContext(canvas)
|
||||
function CreateGlContext()
|
||||
{
|
||||
var canvasContextGl = canvas.getContext("webgl2");
|
||||
var canvasContextGl = appGlobals.canvas.getContext("webgl2");
|
||||
if (canvasContextGl === null) { console.error("Unable to initialize WebGL render context. Your browser or machine may not support it :("); return null; }
|
||||
// console.dir(canvasContextGl);
|
||||
appGlobals.glContext = canvasContextGl;
|
||||
return canvasContextGl;
|
||||
}
|
||||
|
||||
async function LoadWasmModule(wasmFilePath, initialWasmPageCount)
|
||||
{
|
||||
appGlobals.textDecoder = new TextDecoder("utf-8");
|
||||
|
||||
let wasmEnvironment =
|
||||
{
|
||||
...jsStdFunctions,
|
||||
...jsGlFunctions,
|
||||
};
|
||||
appGlobals.wasmModule = await loadWasmModule(wasmFilePath, wasmEnvironment);
|
||||
|
||||
appGlobals.wasmModule = await loadWasmModule(wasmFilePath, { ...jsStdFunctions, ...jsGlFunctions });
|
||||
appGlobals.memDataView = new DataView(new Uint8Array(appGlobals.wasmModule.exports.memory.buffer).buffer);
|
||||
// let heapBaseAddress = appGlobals.wasmModule.exports.__heap_base.value;
|
||||
// console.log("__heap_base = " + heapBaseAddress);
|
||||
|
||||
let memorySize = appGlobals.wasmModule.exports.memory.buffer.byteLength;
|
||||
let numMemoryPagesAfterLoad = memorySize / WASM_MEMORY_PAGE_SIZE;
|
||||
if ((memorySize % WASM_MEMORY_PAGE_SIZE) != 0)
|
||||
@@ -61,17 +49,17 @@ async function LoadWasmModule(wasmFilePath, initialWasmPageCount)
|
||||
async function MainLoop()
|
||||
{
|
||||
console.log("Initializing WebGL Canvas...");
|
||||
var canvas = AcquireCanvas(600, 400);
|
||||
var glContext = CreateGlContext(canvas);
|
||||
AcquireCanvas(600, 400);
|
||||
CreateGlContext();
|
||||
|
||||
console.log("Loading WASM Module...");
|
||||
await LoadWasmModule("app.wasm", 4);
|
||||
appGlobals.wasmModule.exports.App_Initialize();
|
||||
|
||||
console.log("Running!");
|
||||
function renderFrame()
|
||||
function renderFrame(currentTime)
|
||||
{
|
||||
appGlobals.wasmModule.exports.App_UpdateAndRender();
|
||||
appGlobals.wasmModule.exports.App_UpdateAndRender(currentTime);
|
||||
window.requestAnimationFrame(renderFrame);
|
||||
}
|
||||
window.requestAnimationFrame(renderFrame);
|
||||
|
||||
Reference in New Issue
Block a user