Noticias

¡RECUERDA QUE SI ERES UN NUEVO USUARIO, DEBES PRESENTARTE PARA PODER PUBLICAR MENSAJES! | TENEMOS CANAL OFICIAL DE TELEGRAM: t.me/unity3dspain

Simple Framework para UI - Video Tutorial

Iniciado por francoe1, Febrero 17, 2018, 03:10:02 AM

Tema anterior - Siguiente tema

Opiniones varias -

Total de votos: 2

Febrero 17, 2018, 03:10:02 AM Ultima modificación: Febrero 17, 2018, 03:14:36 AM por francoe1
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!

Gracias 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....


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!

Febrero 17, 2018, 03:55:07 PM #3 Ultima modificación: Febrero 17, 2018, 03:55:26 PM por Eskema
Como han dicho por aqui:
 
-1080 necesario
 
-sonido muy bajo
 
-usar set active,worst idea ever en temas de interfaz. Pero para gustos colores, No voy a entrar tampoco en el abuso de reflection xD
 
 
 
 
 
A mi me gusta usar NGUI para proyectos personales, en las empresas suelo usar el canvas, entre otras cosas porque es gratis y las empresas no quieren gastarse la pasta en NGUI xD

Yo te voté por lo del audio (lo tenía al palo y apenas te oía) pero se entendía bien dentro de todo, y lo otro que voté fue lo del balance, para mi lo que mostraste, en el tiempo que lo mostraste y basado es los aspectos técnicos del video estuvo bien en general.
 
Acá va una pregunta con respecto al rendimiento de una UI, por poner de ejemplo un UGUI vs NGUI, NGUI tiene fama de ser más rápido (entre otras cosas), veo que muchos tiran abajo a UGUI en este aspecto, ¿Existe algún ejemplo claro en el que el rendimiento de una UI sea completamente relevante? por ej instanciar 5000 proyectiles por minuto vs tener una pool de esos proyectiles da un cambio radical en el rendimiento, ahora, no puedo visualizar un ejemplo así hablando de UI y he probado activar desactivar muchos menus con decenas de elementos animados dentro y ni ún problema... si alguien me puede dar un ejemplo claro y práctico (no tener 15000 botones en pantalla) en el que la ventaja de uno vs el otro sea clara estaré muy agradecido. No hablo del factor de mejora individual (este va 1 ms más rápido que este otro), hablo de una mejora general (la UI influye un 1% al total del procesamiento).
 
 

Eso no lo vas a ver. NGUI es mas rapido y mas eficiente en memoria, PERO, ha ido mejorando, hace un par de años el rendimiento era de unos 5-10fps a favor de NGUI. Hoy dia se ha reducido, PERO como dije en uno de mis videos yo paso de usarlo mientras no decidan dejar de "actualizarlo" y joderlo con cada update para luego arreglarlo en la otra.
 
La otra ventaja clara es que las anclas de UGUI me parecen un lio tremendo y las de NGUI mucho mas faciles de usar.
 
Yo como programador necesito una API estable, sin cambios y sin problemas de rendimiento de una version a otra del engine, por eso en mi caso particular sigo anclado a NGUI. 

Cita de: Eskema date=1518915490Eso no lo vas a ver. NGUI es mas rapido y mas eficiente en memoria, PERO, ha ido mejorando, hace un par de años el rendimiento era de unos 5-10fps a favor de NGUI. Hoy dia se ha reducido, PERO como dije en uno de mis videos yo paso de usarlo mientras no decidan dejar de "actualizarlo" y joderlo con cada update para luego arreglarlo en la otra.
   
   
      La otra ventaja clara es que las anclas de UGUI me parecen un lio tremendo y las de NGUI mucho mas faciles de usar.
   
   
      Yo como programador necesito una API estable, sin cambios y sin problemas de rendimiento de una version a otra del engine, por eso en mi caso particular sigo anclado a NGUI. 
   


Ah ok gracias! osea que optar por uno o por otro ya va más en otras cuestiones como API en general, comodidad, productividad, etc ... en sí, volvemos al concepto de herramienta, si hace el trabajo bienvenida sea.
 



   
      ... por eso en mi caso particular sigo anclado a NGUI.
   

[/quote]
 
JAja un oportuno juego de palabras.
 
 

    

El rendimiento esta ahi, pero vaya que ya no es tan abismal la diferencia como antes. Yo prefiero la flexibilidad y la "calidad" de NGUI, pero para gustos colores. Es decir yo vengo de usar NGUI desde que salio, asi que si tengo que cambiar de framework es porque la alternativa me ofrece mucho (UGUI) y no es el caso.

@Eskema Yo, por allá el 2011-12, usé NGUI para un par de juegos, y no acabé nada contento (claro que entonces no sabía ni el 15% de Unity de lo que sé ahora, por increíble que parezca..). Quizá ahora esté más pulido, pero por aquel entonces tuve problemas de corrupción en los Atlas generados (el packer propio). De vez en cuando se jorobaba la cosa y había que re-crearlos cada cierto tiempo, perdiendo mucho tiempo de producción.
 
Te doy toda la razón respecto a los anchors de Unity UI. Son terribles, aunque he aprendido unos truquitos para minimizar el lío...

Febrero 19, 2018, 08:30:00 AM #9 Ultima modificación: Febrero 19, 2018, 08:31:06 AM por Eskema
Es que NUNCA se ha debido de usar el packer interno. Ese es el "problema" de la gente en general, usar lo que viene "porque es gratis", usar NGUI implicaba pagar por "texture packer" que era externo y hacia unos atlas fantasticos (ademas que para eso fui yo quien le añadio ese soporte a NGUI xD). Por mucho que el packer interno funcionara era bastante limitado y primitivo.
 
Pero claro, ya era pagar 60 pavos por NGUI en aquel entonces y 25 por texture packer, algo "inasumible" para muchos, y lo entiendo si haces esto por hobby. No lo entiendo tanto si lo haces como profesional porque haces juegos como freelance, o eres una empresa....
 
Yo nunca he tenido ningun problema con NGUI, tal vez porque como fui contributor me sabia el codigo al dedillo, o al entenderlo no hacia fallos que pudieran comprometer el proyecto... no lo se, pero vaya que oigo a mucha gente quejarse de NGUI y yo personalmente en casi 20 juegos nunca me ha fallado....

Etiquetas: