No sé si lo habeis leído, pero alguien ha portado la versión de SDL de Doom a HTML5.
Por lo que veo, podría aplicarse lo mismo a BennuGD para hacer juegos que se ejecuten en el navegador. Si a alguien le interesa intentarlo, dejo el enlace a la web con el Doom donde explican cómo hacerlo.
https://developer.mozilla.org/media/uploads/demos/a/z/azakai/487d42c2ecc1627745a469861bd377e2/doom-on-the-web_1306727266_demo_package/details.html
No es perfecto pero desde luego es impresionante.
bien, a mi si que me interesa
estaré atento a los avances...
<->
desde hacer animaciones para paginas wel hasta portar juegos propios...
te pueden dar un paston para que les ponga publicidad antes de que empiece el juego
jua jua jua juaaaaaaaaaaa
y ahora es cuando bajo al mundo real
NOOOO!!! que buena noticia!!! :D
que lindo seria!
Bueno, básicamente usan un compilador LLVM-> Javascript. Así que no sé si será tan fácil...
Bennu se puede compilar con LLVM (de hecho la versión iOS la compilo con LLVM).
Quote from: josebita on June 03, 2011, 07:39:06 PM
Bennu se puede compilar con LLVM (de hecho la versión iOS la compilo con LLVM).
no me quedo claro, estas diciendo que cambiaste la VM interna de bennugd y que ahora el dcb se transforma en codigo nativo usando LLVM? porque me parece que lo que dice osk es eso.
o yo estoy perdido.
o el compilador que usas genera un IF del C que luego se compila nativamente por un compilador que tiene el IOS integrado?
podes explicar un poco mas?
Lo que digo es que el código C de bennu se puede compilar con llvm-gcc (y con clang) y va bien y de hecho con llvm-gcc es con quien estoy compilando el intérprete de bennu para iOS porque es el compilador por defecto en MacOS X. El resultado de esa compilación se podría pasar hipotéticamente por ese transformador para que creara el código javascript que parsearía los dcbs y los renderizaría en el navegador.
[Edito] O eso es lo que parece por lo que he podido entender de la página del proyecto. Echaos una partidilla al doom en el navegador, que tiene muy buena pinta :)
Quote from: josebita on June 03, 2011, 08:19:08 PM
Lo que digo es que el código C de bennu se puede compilar con llvm-gcc (y con clang) y va bien y de hecho con llvm-gcc es con quien estoy compilando el intérprete de bennu para iOS porque es el compilador por defecto en MacOS X. El resultado de esa compilación se podría pasar hipotéticamente por ese transformador para que creara el código javascript que parsearía los dcbs y los renderizaría en el navegador.
[Edito] O eso es lo que parece por lo que he podido entender de la página del proyecto. Echaos una partidilla al doom en el navegador, que tiene muy buena pinta :)
a ver si entiendo, lo que has hecho con ios seria una version bennugd compatible con los engines llvm? o sea, si esto se corre en otra cosa que no sea un ios que tenga engine llvm funcionaria? en teoria creo que si, pero confirmame.
Llvm tiene un compilador C que saca binarios. A ése me refiero.
nunca no entiendo un choto de lo que hablan.
listo, lo dije.
Tampoco entiendo nada
jajaja!
Quote from: josebita on June 03, 2011, 09:42:51 PM
Llvm tiene un compilador C que saca binarios. A ése me refiero.
ya veo, pero eso no es lo que se referia osk, creo.
lo que vos estas haciendo es un binario nativo compilado con el compilador llvm-gcc, el cual tiene 3 modos: objeto nativo, llvm bitcode o llvm lenguaje assembler.
lo que vos estas generando es objeto nativo, y segun entiendo lo que decia osk es que genere un codigo llvm bitcode, para poder ser ejecutado en un engine llvm, como sea, no esta nada mal la idea de generar un bennugd en bytecode llvm, y probar ejecutarlo en una maquina con un engine llvm, cosa que no se como se haria.
otra, estaria buena tener un compilador bennugd que genere en vez de dcb bytecode llvm.
http://llvm.org/cmds/llvmgcc.html
Quote from: JaViS on June 03, 2011, 10:07:09 PM
nunca no entiendo un choto de lo que hablan.
listo, lo dije.
Ja, ja, ja.
Bienvenido al club de los que aun somos humanos. :D
no te crea que yo si, simplemente estoy esperando que digan: Aqui tienes lo que te hace falta, pon este archivo en una wel y ya lo tienes...
j aja ja
Quote from: SplinterGU on June 03, 2011, 11:21:35 PM
jajaja!
Quote from: josebita on June 03, 2011, 09:42:51 PM
Llvm tiene un compilador C que saca binarios. A ése me refiero.
ya veo, pero eso no es lo que se referia osk, creo.
lo que vos estas haciendo es un binario nativo compilado con el compilador llvm-gcc, el cual tiene 3 modos: objeto nativo, llvm bitcode o llvm lenguaje assembler.
lo que vos estas generando es objeto nativo, y segun entiendo lo que decia osk es que genere un codigo llvm bitcode, para poder ser ejecutado en un engine llvm, como sea, no esta nada mal la idea de generar un bennugd en bytecode llvm, y probar ejecutarlo en una maquina con un engine llvm, cosa que no se como se haria.
otra, estaria buena tener un compilador bennugd que genere en vez de dcb bytecode llvm.
http://llvm.org/cmds/llvmgcc.html
Ah, vale. Ya entiendo.
La verdad es que yo no tengo tiempo que dedicarle, pero me parece algo interesante.
WoW; Que increible; Nunca pense que se iba a poder jugar Doom por la web. Lo que si le falta es la musiquita esa que tanto ambiente le daba.
Quote from: josebita on June 03, 2011, 04:05:34 PM
No sé si lo habeis leído, pero alguien ha portado la versión de SDL de Doom a HTML5.
Por lo que veo, podría aplicarse lo mismo a BennuGD para hacer juegos que se ejecuten en el navegador. Si a alguien le interesa intentarlo, dejo el enlace a la web con el Doom donde explican cómo hacerlo.
https://developer.mozilla.org/media/uploads/demos/a/z/azakai/487d42c2ecc1627745a469861bd377e2/doom-on-the-web_1306727266_demo_package/details.html
No es perfecto pero desde luego es impresionante.
Quote from: josebita on June 04, 2011, 08:50:58 AM
Quote from: SplinterGU on June 03, 2011, 11:21:35 PM
jajaja!
Quote from: josebita on June 03, 2011, 09:42:51 PM
Llvm tiene un compilador C que saca binarios. A ése me refiero.
ya veo, pero eso no es lo que se referia osk, creo.
lo que vos estas haciendo es un binario nativo compilado con el compilador llvm-gcc, el cual tiene 3 modos: objeto nativo, llvm bitcode o llvm lenguaje assembler.
lo que vos estas generando es objeto nativo, y segun entiendo lo que decia osk es que genere un codigo llvm bitcode, para poder ser ejecutado en un engine llvm, como sea, no esta nada mal la idea de generar un bennugd en bytecode llvm, y probar ejecutarlo en una maquina con un engine llvm, cosa que no se como se haria.
otra, estaria buena tener un compilador bennugd que genere en vez de dcb bytecode llvm.
http://llvm.org/cmds/llvmgcc.html
Ah, vale. Ya entiendo.
La verdad es que yo no tengo tiempo que dedicarle, pero me parece algo interesante.
no, tampoco quise abusar de tu generosidad... solo fue un comentario de que estaria bueno.
bueno revivo el tema ya que estuve mirando la proxima version del gamemaker
y saldra con opcion de exportar a html5...
asi que me di a la tarea de mirar, y ver corriendo quake2 en el navegador
me dije, joder si esto corre , bennu si que mas...
pero tengo el kit inicial que es este : el clang y el llvm para windows
http://llvm.org/releases/download.html#2.9
ahora requiero el que convierte el código ensamblador en Javascript
https://github.com/kripken/emscripten
por lo visto solo faltaria python para windows instalado..(para correr emscripten)
vamos a ver como me va solo creando el core de bennu.. bgdi.js
lo que me preocupa es el acceso a disco de los dcb, fpgs y sonidos y demas ..
javascript se comportara como una buena niña ... ya les contareeee
Tremendo!!
Tremendísimo!!
Karma para el señor
Pues nada, ya nos cuentas si sale algo. Que el proyecto parece muy interesante.
resultado de los test
he montado las herramientas llc y la otra y compilan normal
me generan un bgdi.bc que es el codigo pcode , o codigo ensamblador
ahora solo falta generar el javascript .js
lo malo es que la herramienta emscripten, que genera el JS, esta creada en python
no se porque razon no lo hicieron en C...
y hay tengo errores , no tengo idea de lo que dice.. no se si sera
porque lo corro desde windows.. aqui el error de python si alguien sabe
de que se trata..
la pagina dice ..
https://github.com/kripken/emscripten/wiki/Getting-started
When you have a .bc or .ll file, compile it using ./emscripten.py infile.
entonces lo hago
emscripten.py bgdi.bc
y me arroja este error..
E:\internet\septiembre\13\kripken-emscripten-734b145\kripken-emscripten-734b145>
emscripten.py hello.bc
Traceback (most recent call last):
File "E:\internet\septiembre\13\kripken-emscripten-734b145\kripken-emscripten-
734b145\emscripten.py", line 9, in <module>
from tools import shared
File "E:\internet\septiembre\13\kripken-emscripten-734b145\kripken-emscripten-
734b145\tools\shared.py", line 10, in <module>
shutil.copy(path_from_root('settings.py'), CONFIG_FILE)
File "C:\Python27\lib\shutil.py", line 116, in copy
copyfile(src, dst)
File "C:\Python27\lib\shutil.py", line 81, in copyfile
with open(src, 'rb') as fsrc:
IOError: [Errno 22] invalid mode ('rb') or filename: '\\E:internet\\septiembre\\
13\\kripken-emscripten-734b145\\kripken-emscripten-734b145\\settings.py'
E:\internet\septiembre\13\kripken-emscripten-734b145\kripken-emscripten-734b145>
resumiendo creo que se puede correr bennu en html5 pero no se si ha velocidad
aceptable, solo bastaria el paso de crear el JS, para salir de la duda
... que no he logrado por Python..
investigando.. creo que habrian limitaciones como reproducir musica , sonidos y video
tocaria hacer una libreria mod_wav especial para esta plataforma...
No es HTML5 sino NaCl y por tanto sólo funciona en Chrome, pero la idea va por ahí:
http://nacl-scumm.appspot.com/
PD: Es ScummVM, pero ScummVM usa SDL, que es el punto del comentario.
http://code.google.com/p/naclports/source/browse/trunk/src/?r=409#src%2Fpackages%2Flibraries