Menú

Mostrar Mensajes

Esta sección te permite ver todos los mensajes escritos por este usuario. Ten en cuenta que sólo puedes ver los mensajes escritos en zonas a las que tienes acceso en este momento.

Mostrar Mensajes Menú

Mensajes - francoe1

#316
Cita de: Igor date=1522924141lo mejor seria hacer un array... asi no tendrias que llamar a cada bool con un nombre diferente... (enemigo01vivo, enemigo02vivo...)
   
   
      seria algo asi:
   
   
       
   
   

private bool[] enemigosVivos = new bool[5]; //suponiendo que son 5
 
void Update() {
int recuento = recuentoEnemigosVivos();
}
 
//funcion para hacer recuento
int recuentoEnemigosVivos() {
   int vivos = 0;
   for (int i = 0; i < enemigosVivos.Length; i++) {
      if (enemigosVivos) {
          vivos++;                                  
      }
   }                                  
   return vivos;
}

   
       
   


Hasta lo podes hacer con Linq en una línea
 

enemigosVivos.Count(x => x == true);

 
No me acuerdo si count funciona en Array o requiere un Enumerador, pero de lo contrario podrias realizarlo con una lista. 
#317
General (Antiguo) / Unity 2018 beta en HD
Marzo 30, 2018, 10:26:23 AM
Cita de: Eskema date=1522391418Por eso decia, que te tienes que quedar en 2017, terminar tu proyecto y luego los nuevos hacerlos con 2018. Pero eso de poder abrirlo todo con 2018 y luego tener todas las tools a medias porque coexisten con todo el "legacy" que han dejado.... No me gusta un pelo
   


Creo que con lo de Modulos estan apuntando a una posible solución para esto.
 
https://blogs.unity3d.com/es/2014/05/27/module-manager-in-4-5/
 
Me parece que seria bueno poder elegir que modulo hace parte del proyecto.
#318
General (Antiguo) / Sonido de motor
Marzo 20, 2018, 07:50:08 PM
Tienes que ir variando el Pitch del audio en relación a las revoluciones, luego vas buscando las variantes para el cambio de marchas etc ... 
 
Con eso podes empezar, la magia del audio "Acelerando" es justamente la variación de atributo Pitch del componente Audio Source.
 
La ecuación para el Pitch sería la siguiente 
 

float pitch = 1 + ((velocidadActual - RevolucionesMinimaDeLaMarchaActual) / (RevolucionesMaximaDeLaMarchaActual - RevolucionesMinimaDeLaMarchaActual));

 
Espero te sea de ayuda
#319
¡Excelente idea!
 
Para que el juego sea más entretenido debería ser un poco más rápido, para compensar el tiempo de partida podrias agregar una habilidad por personaje para atacar a los oponentes.
 
¡Un proyecto con potencial!
#320
El ajedrez no necesita IA.
 
Te last guardián. En este título el perro utiliza redes neuronales, una semi IA.
 
Por ejemplo en juegos como Call of Duty ya se podría empezar a utilizar para los NPC una semi IA - esto no se utilizaba antes por problemas de hardware insuficiente. 
 
Tampoco es que un NPC basado en ANN sea un gran desafío de puede abstraer para ser utilizada solo las características necesarios e implementar propios algoritmos para las diferentes situaciones. 
 
Por ejemplo, en un FPS podemos hacer que nuestros NPC vayan directo al blanco y cuando lo tengan en mira disparen, pero si esto falla, la segunda vez trataría de buscar algún lugar para ponerse a cubierto. Podría conectarse con otros NPC para efectuar una estrategia más compleja, al tratarse de ANN el segundo NPC puede tomar otra decisión y el primero tendrá que evaluar una nueva operación. Al ser de esta manera el juego sería muy difícil de predecir. Y a esto se le puede llamar semi/IA. La IA más compleja está aplicada en la robótica y no es necesaria para vídeo juegos, ni siquiera es parecida. 
 
Pero existe un error de conceptos entre NPC (non player character) y IA - 
 
Los proyectos de ANN menos complejo sin para juegos de conducción - dejo un video 
 


   
eature=oembed" width="480">

 
 
#321
Cita de: lightbug date=1519586714A ver... vos sabés que todos nosotros sabemos que es así ... y todos nosotros sabemos que vos sabés que todos nosotros sabemos, entonces si todos nosotros sabemos que vos sabés que todos nosotros sabemos ...ehh....  para que complicar todo más?!, sino a partir de ahora tendríamos que llamar todo SI (Simulated Inteligence) y ... ah me olvidaba los namespaces que tienen AI ! alguien por favor quiere pensar un segundo en los namespaces!!
   
   
       
   
   
       
   


Jajajajaja - Gracias, me hiciste cagar de risa. 
 
 
 
Cita de: Braltor date=1519590406no conozco ningun algoritmo de juego de ajedrez q aprenda del jugador, creo q todos usan un arbol de busqueda de jugadas q generan por si mismos con las reglas del juego, incluso el mas moderno q es AlphaGo hace esto (para el juego chino Go)... el nivel de dificultad deberian ajustarlo por la profundidad del arbol y talvez una probabilidad entre busqueda (listo) o movida al azar (tonto)
   
   
      y bueno desde q no existe una buena definicion de inteligencia nadie sabe lo q significa inteligencia artificial
   


A ver.... La inteligencia artificial toma sediciones mediante el resultado de anteriores acciones, va "aprendiendo". 
 
Si encuentro el proyecto de ajedrez te lo comparto para que le pegues una mirada. 
 
Lógicamente es muy tonto hacer IA no simulada para un vídeo juego. Por lo cual se basa solo en acciones que ya está establecidas. Cómo por ejemplo las IA basadas en FSM.
 
Era solo un comentario para facilitar la búsqueda, si pones IA Chess no es lo mismo a Algoritmos chess. Proba y verás que los resultados son diferentes.
 
Fijate está fuente
 
https://chessprogramming.wikispaces.com/Neural+Networks
 
Cómo comentaste AlphaIA es de Google y funciona con ANNs - 
#322
Un juego de ajedrez no es una inteligencia artificial. Inteligencia Artificial se entiende como un ente que va adquiriendo conocimientos mediante resultados. 
 
Más bien es una inteligencia simulada, se trata de algoritmos de evaluación. Cada ficha se evalua para, luego la pieza con más "puntos" obtenidos por la predicción de movimiento será elegida como la mejor apuesta. Se trata de un algoritmo lógico.
 
Si existen juegos de ajedrez con IA estos se ajustan a la dificultad de la persona, van adquiriendo las habilidades mediante tus movimientos y estrategias, esto si es complicado de programar, se conoce como red neuronal. 
#323
Cita de: pioj date=1518874816Gracias por el aporte, buen recurso!!
   
      Mis consejos:
   
   


  •          Hoy en día, 1080p, mínimo. De otra forma, la pantalla del IDE se ve borrosa y cuesta más de leer lo que escribes de código. O eso, o amplia el zoom...
          

  •       

  •          Por favor, ni se te ocurra usar "SetActive(true)" para mostrar u ocultar un UI de Canvas. Eso detroza y ensucia todo el rendimiento que hayas podido ganar programando dicho Framework. En lugar de eso, cómo mínimo, activa/desactiva el "Renderer.Enable" del componente Canvas. O eso, o haz uso del CanvasGroup y sus propiedades....
          

  •       

  •          Prueba varios sistemas para mostrar/ocultar UI, hay muchas formas. No limites el framework a sólo una... 
          

  •       

  •          Mi combinación favorita es usando el CanvasGroup + DoTween. Imagino que a @Eskema lo que más le gustará es tirar de NGUI para eso, etc etc....
          

  •    


1º El video esta en 1080p pero YT lo deja en 720p, estaba viendo si en otro formato quedaba en 1080p no se a que se debe esto -
 
2º El video no trata de optimización de UI si no mas bien de una estructura para poder organizar el desarrollo de componentes -
 
3º Probe múltiples sistema pero ninguno era "simple" y terminas teniendo un proyecto sucio con 5/10 scripts de terceros que muchas veces son un verdadero desastre -
 
4º Claro - Lo mejor es utilizar en mínima medida los componentes que Unity provee para solucionar diferentes problemas, en este caso no se trata del diseño de la interface si no del manejo.
 
Gracias! Tomare en cuenta para los proximos videos mejorar el contenido en general, mi idea era centralizar solo en la estructura para no alargar tanto el video! 
 
Saludos!
#324
Comparto con ustedes una simple manera de crear un Framework para trabajar con UGUI de manera organizada -
 
Si les gusta el contenido y les interesa el desarrollo de un Framework mas completo comentar el video -
 
cver=1" width="640">
 
 
 
¡Saludos a la Comunidad!
#325
General (Antiguo) / La pagina caida con error 504
Febrero 12, 2018, 06:11:50 PM
PERFECTO! Genial!
#326
General (Antiguo) / La pagina caida con error 504
Febrero 11, 2018, 08:48:26 AM
Exactamente, da error cuando entras con HTTP sin el WWW.

Fíjate que Google te Indexa de esa manera - entonces no funciona cuando entras desde un enlace de google.
#327
General (Antiguo) / La pagina caida con error 504
Febrero 10, 2018, 08:26:39 PM
Hace 15 dias que no entraba a la WEB, si quieres acceder desde www.unityspain.com da error 503 DNS error-
#328
General (Antiguo) / La pagina caida con error 504
Enero 31, 2018, 11:01:29 PM
Esto me paso a mi o a varios, hace mas de 8 dias que no puedo entrar
#329
General (Antiguo) / Ayuda con tema de multijugador
Enero 25, 2018, 10:54:03 PM
Cita de: ebenknot date=1516878981 
   
   
      entonces quieres decir q para mi modelo de juego no valdria usar UNET porque si por ejemplo,un jugador consigue nivel 2.todos los jugadores tendran nivel 2 porque todos los clientes se verian afectados?
   
   
      O es porque no se puede crear ese backend (varios servers dedicados cada uno a una cosa)?
   
   
      Que otra herramienta podria usar entonces?Photon por ejemplo?
   
   
      Muchas gracias por las respuestas,cuando te canses de tanta pregunta me lo puedes decir jajaja q soy un poco pesado.Pero es que tiene tela el tema del online :(
   


No, lo que quiero decir es lo siguiente, cuando pretendes compartir un servidor a los clientes deberias de estar consciente de que estas compartiendo la estructura del mismo, esto quiere decir tu bases de datos, tus configuraciones, dll, etc.
 
Entonces, si tu compartes esa información los usuarios podrán modificarla a gusto, por ejemplo, si cuando juntas X objeto te da 100 puntos el cliente servidor podría modificar para que te de 1000, pero esto se debe a que estas compartiendo el cliente, ahora si piensas hacer Matchmaking con Unity y tener algunos valores generales como Ranking de jugadores esto supondría un gran problema.
 
En los juegos multijugador solo deberias compartir la lógica del cliente -
 
Las capas serían las siguientes -
 



      
      
   


      
      
   


      
      
   


      
      
   


      
      
   


      
      
   


      
      
   


      
      
   


      
      
   


      
      
   


      
      
   

         Server 
      

         Shared
      

         Client 
      

         Data Provider
      

          
      

          
      

         Sesion Provider
      

          
      

          
      

         RoomProvider
      

          
      

          
      

         
            Logic Provider
         
      

          
      

          
      

         
            Network Provider
         
      

          
      

          
      

          
      

         NetworkTransport
      

          
      

          
      

          
      

         Network Provider
      

          
      

          
      

         Network Logic
      

          
      

          
      

         Network Hanlder
      

          
      

          
      

         Logic Provider
      

Si tu creas una estructura con UNET estas compartiendo todo con el cliente, a diferencia de si lo creas con un clásico Servidor/Cliente - Tendrias que crear tu propio sistema basados en Socket (se puede utilizar eNet), mas las capa NetworkTransport que es la que se encarga de conectar el cliente con el servidor y transportar tu información, aqui se encriptan los datos, se aplican las reglas de compresión, el tratado de paquetes etc.. 
 
¿Se entiende?
#330
General (Antiguo) / DB SQLite o externa (MySQL)?
Enero 23, 2018, 12:52:41 PM
Cita de: Ckserver date=1516561212Muchas gracias por responder.. la verdad que si, que estoy un poco verde en estas cosas.. Vengo de crear retroservers (habbo holos), que te daban la cms y la db hechas, no tenías más que añadir-borrar ciertos scripts (php y html) e imágenes. Con el xampp y un buen emulador te valía para soportar 70 personas online, sin casi caídas del cliente y si no te pasabas a un VPS o con el mismo IIS de windows te valía para soportar unas 120 personas 24/7 online.
   
   
      Pongamos que quitamos el modo online, solo jugamos contra la IA, hay alguna forma de sobreescribir los datos que vamos guardando en el propio movil con C#?? 
   


Si tu tienes un archivos Json para los datos del jugado, el nombre podría estar compuesto por playername.profiler, cargas y guardas la información siempre en el mismo archivo. 
 
Para trabajar con Json te recomiendo una librería LitJson es muy buena y muy simple de utilizar, muchos juegos en el mercado la están utilizando.