Descargué imgui-js repo. Lo construí y ejecuté el ejemplo, todo funciona bien. En el paquete.json hay un comando para ejecutar un ejemplo de nodo:
"start-example-node": "node example/index.js" que obviamente ejecuta el script example/index.js.
Entonces, los scripts index.js se ejecutan, pero no sucede nada después. Espero que se dibuje una ventana de ejemplo nativo.
Me gustaría dibujar el script de muestra proporcionado en el archivo Léame:
import * as ImGui from "imgui-js"; let show: boolean = true; function draw(): void { if (ImGui.Button("Toggle")) { show = !show; } if (show) { ImGui.Begin("My Window", (_ = show) => show = _, ImGui.WindowFlags.AlwaysAutoResize)); ImGui.Text("Hello, World!"); ImGui.End(); } }¿Hay algo que deba hacerse para que se extraiga una ventana imgui nativa del nodo en el script index.js?
Es seguro que el script example/index.js se ejecuta porque hay información de este tipo registrada en la terminal
.... ElemCount 255 ClipRect 625 0 15 422 TextureId { foo: 'bar' } i: pos.x pos.y uv.x uv.y col 0: 621.00 39.00 0.12793 0.00195 f00f0f0f 1: 1171.00 39.00 0.12793 0.00195 f00f0f0f 2: 1171.00 700.00 0.12793 0.00195 f00f0f0f ImDrawList { native: ImDrawList {} } VtxBuffer.length 28680 IdxBuffer.length 4458 ImDrawCmd { native: ImDrawCmd {}, UserCallback: null, UserCallbackData: null } .....Editar: parece que la ventana no está definida en el bucle de renderizado main.ts:
if (typeof(window) !== "undefined") { window.requestAnimationFrame(done ? _done : _loop); }Lo cual tiene sentido si el método se llama desde un nodo y un nodo dentro del navegador. Sin embargo, ¿cuál es el propósito del ejemplo de nodo entonces?