Juego tipo F-Zero (modo 7 super nintendo) con pygame
andermetalsh dijo/dijiste:
Python3 y PyGame que compila a WASM.
https://piped.privacydev.net/watch?v=6PhDmpBcezQ
Curiosamente la demostración WASM hace uso del raycasting, técnica usada en el primer F-Zero o similar con el Modo 7.
https://github.com/pygame-web/pygbag
https://pygame-web.github.io/
Demo de Pychess en WASM:
https://pmp-p.github.io/pygame-pychess-wasm/index.html
Código fuente de cada juego:
https://github.com/pmp-p?tab=repositories&q=pygame-.-wasm&sort=name
La ventaja de Pygame contra WebGL y WASM es que puedes montar tanto un juego web como de escritorio perfectamente.
El que pueda, usará su versión WASM, y el que no, le puedes ofrecer el paquete entero con las dependencias para Python.
Levo varias madrugadas luchando con python, y creía necesario PyOpenGL ademas de pygame, mas que nada por que la nave para las pruebas la tengo en "obj/mtl", pero hoy he revisto el video que me pasaste y me di cuenta que igual no, también me encontre que en Trisquel 10 parece funcionar un modulo que modifique para que me cargara la nave, tras instalar OpenGL y otras dependencias desde apt, cambie a un portátil con trisquel 11 y por mi suerte daba error, intente instalar OpenGL y otras dependencias en el trisquel 11 del portátil y faltaban en su apt, como dije en el hilo anterior quiero proveer a los usuarios de todas las dependencias, con lo cual reví el video https://yewtu.be/watch?v=6PhDmpBcezQ y creo que no es necesario: PyOpenGL, ni OpenGL, ni mí modificación de objloader.py ¡O sea que mí proyecto parece que dará un buen giro!
@andermetalsh:
¿un "imagen_nave.png" estrosionada con pygame sería suficiente con la técnica raycasting?
Para entregar junto con los archivos de mí juego la dependencia de "pygame/", el directorio que sale de la extracción del zip oficial que descargamos, y creo que he encontrado la forma de cargarlo desde "main_game.py".
¿"pygame/" sería mi unica dependencia no mía a parte de python?
"game_folder"---->"main_game.py"
---->"pygame/"
---->"png/"
---->"ogg/"
---->"license.txt"
---->"developper_notes.txt"
¿Podrían quedar algo así los subdirectorios del juego?
En Trisquel 11 tienes python3-pygame y python-pygame-doc como documentación.
Por cierto, Pypi2deb es un paquete de Trisquel donde convertir las fuentes desde PIP (y otras que tengan una similar estructura) a paquetes DEB. Se hace con py2dsp, que viene en dicho paquete.
Las últimas herramientas son útiles si quieres integrar tu juego en Trisquel.
Te agradezco tu aporte.
Se pude hacer en canvas 2d, javascript y trigonometría, descubrí a posteriormente (para 1 jugador):
https://github.com/MERTULAS/RayCastingEngineJS
El ejemplo es tipo doom/castleWolfenstein de los 90, estuve adaptándolo a tipo fzero, unos meses, pero lleva un par de semanas parada mi fork... aunque reenprendera. Estoy liado con otras cosas ahora...
https://github.com/MERTULAS/RayCastingEngineJS
No es mi base exacta, pero deve ser algo parecido.