Para quien le pueda interesar ahora en directo, una charla con 11 desarrolladores indie sobre el futuro de la industria indie:
Hace días me ronda la siguiente idea por la cabeza:
Utilizar IA en tiempo real para generar una imagen que represente algún evento puntual de la partida del jugador, ya sea un evento importante o simplemente su muerte. He estado haciendo pruebas con juegos roguelike minimalistas, aquí un ejemplo claro:
La imagen es de Brogue, un roguelike tradicional y es el ultimo frame tras la muerte del jugador. Que en este caso ha muerto a manos de una anguila. Le he pasado esta misma imagen a Dalle sin especificar nada. Le he pedido que interprete lo que ve en la escena y la dibuje en modo fantasía. Esto es lo que ha sacado:
A fantasy scene depicting a dungeon-like cave partially flooded with knee-deep water. The environment is dark and eerie, with jagged rocks and water reflecting the dim light. An adventurer lies defeated in the water, a dagger in hand and wearing leather armor. Nearby, an eel, menacing and large, hovers over the adventurer's body. A staircase leading upward is visible in the background, partially submerged. The atmosphere is tense, with shadows and water creating a foreboding mood.
Y la imagen en cuestión:
Como podéis ver la IA ha podido captar absolutamente todo el contenido de la primera imagen, desde el equipamiento del jugador hasta la escalera del fondo, el agua, el enemigo, etc... Pues la idea me mola, pero no se si es viable implementar algo así, ya que debería de tirar de alguna API para generar la imagen, con el coste que tiene eso a nivel de precio, etc... Como lo véis? Se os ocurre alguna forma fácil barata de implementarlo?
Aquí otro ejemplo, mucho más complejo. El jugador tiene un dar blademaster como aliado, lo ha matado un ogro (la O) y al lado hay un Jelly ácido. Aquí las fotos
No sé. Creo que la IA puede ir bien para este tipo de cosas. Ya sea para generar quests, misiones, conversaciones, etc... o para generar imagenes en base a una descripción. Pudiendo tener assets ilimitados en base a los eventos narrados de un juego.
#8735 pues forma de hacerlo gratis o barato... no sé, la verdad. Como no te montes algún servidor con tu propio modelo y lo limites hasta el maximo de ancho de banda que te dejen mensualmente... O si no, cobrando mensualidad a los players xDD
#8735 Me parece un caso de uso interesante la verdad. Con LORAs y modelos específicos se puede conseguir cierta cohesión entre los outputs. El tema de usar un proveedor externo vía API no sé cómo irá de precio, siempre puedes mirar de integrarlo en el mismo juego (que la generación de las imágenes se haga en local) pero no sé si sería matar moscas a cañonazos.
#8737 Yo soy más partidario en no usar un servicio externo/API, pero ni idea de como implementar algo así ni de los requisitos mínimos que hay que disponer, etc...
Quizás es demasiado pronto para que los indies implementemos IAs locales en nuestras mierdas de juegos, pero fantaseo que esta realidad vendrá más pronto que tarde.
#8739 esto descartado. A día de hoy es viable implementar un modelo de generación de imagees sencillito? imagino que no
#8740 #8738 Si no quieres usar un servicio externo, puedes ponerte a probar con modelos open source de Text-to-Image: https://huggingface.co/models?pipeline_tag=text-to-image&sort=trending
Pero para que puedas generar una imagen en un tiempo razonable (menos de 1 minuto), vas a necesitar un buen maquinón.
Edit: Y aun así, alcanzar la calidad y precision de dalle y similares te va a costar muchísimo.
Tengo un amigo que está trabajando en un juego que tira de IA para funcionar.
Estuvo investigando en dos opciones:
- La versión web requiere de una clave que debe poner el jugador y claro, tiene un coste, como te comentan, por uso.
- Hay una segunda opción que es bajar el modelo de IA y ponerlo en local, para que funcione con archivos del ordenador del jugador, en ese caso, ya depende del tamaño de las carpetas (él probó y eran unos 20-30 gigas bajar el modelo y lanzarlo en local).
#8740 ocupan mucho y es un poco rollo de instalar (y seguramente según el user toque hacer algo de troubleshooting), y luego depende de cada pc para el tiempo de generación de la imagen... Too soon, sip x)
#8742 Si no quieres gastar dinero, si. Podrías correr stable diffusion en tu PC, pero vas a necesitar una RTX4080 o RTX4090 para que te de lo que necesitas. Si la tienes, pues dale caña. También ten en cuenta que si dedicas tu gráfica a eso, no te vale para ponerte a jugar o cualquier otra cosa.
#8741 Con Fooocus en local y con settings para "extreme speed" y una vez cargados los modelos cada generación me tarda unos 4 segundos aprox, con una rtx3080ti, pero supongo que según máquina los tiempos pueden crecer exponencialmente (potato pcs y tal...)
#8743 Ahi ya es cuestion de prioridades.... Yo no veo mucho sentido a decirle al usuario "mira, para jugar a mi juego indie text based, necesitas una RTX4090, y te la voy a poner al 100% durante 1 minutito para que te genere una imagen to wapa."
#8746 No veo yo al usuario medio de un juego text based con una rtx3080ti o más la verdad... Si acaso que Aikon se monte un PC para eso y lo use de servidor para generar las imagenes, vale.
xdddd, es brutal el coste computacional para estas cosas. Está claro que es "too soon" de momento. Simplemente quería abrir el melón y escuchar vuestra opinión. Y ya me habéis ayudado.
Cambiando de tema. Me he pillado un PC nuevo, un buen pepino. Y quiero jugar haciendo cosas en local con IA. Mi objetivo es empezar a entender como funcionan estas mierdas y como implementar modelos y entrenarlos.
Mi focus principal, por ahora, es poder usar un modelo y entrenarlo para que aprenda a hacer cosas, algo "sencillo", por ejemplo que aprenda a jugar al 3 en raya. Alguien sabe un poco de esto? por donde debo empezar a tirar y probar?
#8747 Ya, por eso decía lo de matar moscas a cañonazos. Tal vez es too soon, pero como idea de concepto me parece interesante.
#8742 Otra opción puede ser que, si tu juego tiene un número finito de posibilidades que no se vaya de madres, que pregeneres las imagenes, aunque te gastes 10-20€, y las metas directamente en el juego. Siguiendo el ejemplo que has puesto, una vez generada la imagen, sería cuestion de detectar que imagen tienes que abrir, "ha muerto en X sitio por Y enemigo, esa imagen es dead_by_x_y.jpg".
#8748 Cual es tu objetivo final? porque puedes entrenarte modelos para hacer cosas sencillas, como el tres en ralla que dices, pero por ese camino no se llega a los LLM o la generacion de imagenes.
Si tu objetivo es generacion de texto o imagenes, lo suyo es que aprendas como funcionan los modelos open source top, como llama, y aprender a hacer fine tuning.
#8753 Perdona es que he mezclado 2 temas. Olvidemos por ahora lo de las imagenes y tal.
Quiero empezar a toquetear y entender el mundo de las IAs y modelos. No me voy a poner a crear un modelo desde 0, me vale de momento con aprender a utilizar modelos ya hechos y entrenarlos en local para una tarea específica, por ejemplo jugar al 3 en raya.
Y ya, una vez entienda un poco, me gustaría poder entrenar n modelo para cosas más complejas, como por ejemplo que sepan jugar al super mario o un roguelike de estos tipo ascii (previo entreno con millones de partidas que irá haciendo la IA para ganar experiencia).
#8748AikonCWD:Cambiando de tema. Me he pillado un PC nuevo, un buen pepino. Y quiero jugar haciendo cosas en local con IA. Mi objetivo es empezar a entender como funcionan estas mierdas y como implementar modelos y entrenarlos.
Igual pregunto lo obvio pero has pensado en montarte alguna IA de imagenes local, y directamente enchufarsela a GodoRogue para que te vaya generando la imagen de cada situación? En plan, cada vez que aparezca algo nuevo o salga una descripción
#8754 Aqui tienes un par de ejemplos tochos de como se entrena una IA para un juego de principio a fin:
https://python.plainenglish.io/build-an-ai-model-to-play-super-mario-7607b1ec1e17
https://github.com/shyamsn97/mario-gpt
Para que les eches un ojo, pero yo por ejemplo empecé a aprender con esto: https://wagenaartje.github.io/neataptic/articles/targetseeking/
Creo que puedes ver como aplicar redes neuronales mucho más simples que los LLM y demás que estan ahora de moda y necesitan toneladas de recursos.
(esta libreria tiene un porrón de años, no se siquiera si sigue funcionando, pero echale un ojo a los articulos que tiene, y lo que es la libreria, que te permite crear perceptrons y demás, tienes un millón iguales en cualquier lenguaje).
#8755 Mi idea es ir probando todo este mundillo, que por el momento ando más verde que un kiwi. No descarto nada, pero me gustaría aprender poco a poco empezando, como dije, entrenando modelos para que hagan cosas, como lo del 3 en raya.
Otra opción que es mucho más factible en nuestro indie world, es usar modelos de texto, como llama, que no necesitas un mega maquinón como para generar imagenes, y te pueden servir para generar texto, en loas AAA están experimentando ya para que los NPCs, en vez de tener texto fijo, les das contexto y datos que tienen que saber, y les dices algo como "tienes que captar el interes del jugador para que quiera ir a X sitio", o similar.