Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

168
Views
¿Cómo pasar datos de la aplicación WebAssembly OpenGL a JavaScript?

Quiero crear un cuadro de diálogo simple en un navegador que haga clic en el botón como entrada usando WebAssembly.

Logré crear una aplicación usando OpenGL, SDL2 e imGui y la transfiero a JavaScript usando Emscripten. Pero tengo problemas para pasar datos de la aplicación WebAssembly OpenGL a JavaScript.

¿Cómo puedo pasar datos de C ++ a Javascript para reconocer la página web que los usuarios han realizado algunas acciones (por ejemplo, hacer clic en el botón "Aceptar")?

Intenté detener el ciclo de ejecución de Emscripten usando emscripten_cancel_main_loop . Y la aplicación simplemente se congela en la página web.
Estoy tratando de emitir eventos de C++ a JavaScript, pero no pude entender cómo funciona.

about 4 years ago · Santiago Gelvez
1 answers
Answer question

0

Después de varios intentos, llegué a un enfoque para enviar CustomEvent desde WebAssembly a mi página web.

La función que se utilizó para enviar datos se ve así:

 EM_JS(void, sendData, (int data), { window.dispatchEvent( new CustomEvent("fromWASM", { detail: { data: data } }) ); });

Luego llame a sendData() directamente en el código C++ como si fuera una función normal de C++.

Finalmente, necesitaremos escuchar el evento en el lado de JavaScript con addEventListener :

 window.addEventListener('fromWASM', (event) => { console.log(event.detail); });

También me pregunto si podemos pasar mensajes de la página web a la aplicación OpenGL.

about 4 years ago · Santiago Gelvez Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!