âĪïļ Curso de Patrones de diseÃąo para VIDEOJUEGOS: bit.ly/3auX35Y âĄïļ GuÃa rÃĄpida de patrones de diseÃąo para VIDEOJUEGOS: thepowerups-learning.com/guia-rapida-de-patrones-de-diseno/ ðĩ Discord: discord.gg/KWABp4BfN4 ðððððððððð
ÂĄHola! ÂĄTengo justo la soluciÃģn! ð. En el blog tenemos una lista de todos los patrones que hemos ido viendo aplicados a videojuegos. Dentro de cada artÃculo encontrarÃĄs un vÃdeo a YT, la explicaciÃģn y el cÃģdigo utilizado. âĄïļ thepowerups-learning.com/patrones-de-diseno/ TambiÃĐn tenemos un curso de Patrones de diseÃąo para VIDEOJUEGOS, y las primeras lecciones son gratuitas para que puedas ver cÃģmo es el curso, te dejo el enlace por si quieres echarle un vistazo: âĄïļ curso-patrones-para-videojuegos.thepowerups-learning.com/ TambiÃĐn puedes pasarte por el canal de Discord (enlace en la descripciÃģn) y preguntar cualquier duda que tengas sobre patrones y otros temas de programaciÃģn, ya somos casi 200 devs en el canal ð.
Muy buen tutorial! Tengo una duda, crees que tendrÃa sentido implementar el plug-in de UniRX para tenerlo mÃĄs "optimizado" para mi proyecto? Soy compaÃąero de trabajo de Toni. Un saludo!
ÂĄHola Sergi! Yo soy de la opiniÃģn de no reinventar la rueda, UniRx funciona perfecto y no tiene problemas de performance, al menos hasta donde yo lo he utilizado. AdemÃĄs tener nuestra propia librerÃa implicarÃĄ tiempo y mantenimiento, y por experiencia eso acaba en una librerÃa desfasada y que es un dolor de actualizar. De todos modos, antes de plantearme optimizarla, habrÃa que ver la performance que tiene y hacer muchas pruebas. Ligado con esto, te dejo un vÃdeo donde hablo de pre-optimizaciÃģn y porquÃĐ es una mala idea: th-cam.com/video/rbPyHyCH_QQ/w-d-xo.html ÂĄUn saludo!
Muy buenas! Muy buen vÃdeo, me ha aclarado muchas dudas, pero me ha surgido una nueva: la mayorÃa de implementaciones del patrÃģn observer que he visto usan un gestor de los eventos, una clase GameEvents o parecida, que es la que se encarga de hospedar todos los event actions, es esto una buena o mala praxis? o es situacional? de que depende? gracias! (en el canal de youtube de "Game Dev Guide" en su video "How To Build An Event System in Unity " usa esta implementaciÃģn que comento, por si quieres echarle un vistazo ^^)
Se basa en el observer pero es otro patrÃģn, el event queue. Todo depende de como lo implementes, mientras tu sistema sea totalmente independiente de los nuevos eventos que vas aÃąadiendo no tiene porque ser un problema.
Depende mucho de cada caso, yo utilizo los 2 segÚn para que cosas. El event queue va muy bien para eventos generales, el observer lo prefiero para cosas mÃĄs concretas y que solo le interesan a pocos colaboradores
Hola! En el mÃĐtodo Configure de HelathView, el Suscribre me tira error diciendo que "No se puede convertir de 'grupo de mÃĐtodos' a 'IObserver' " ÂŋPorquÃĐ podrÃĄ ser? Gracias
ÂĄHola y gracias por el video! Justo hace unos dÃas habÃa visto otro de UniRx, pero en vez de usarlo como un Observer, lo usaban como el Update. Me gustarÃa saber si para la propiedad reactiva no hace falta desuscribirse en el OnDisable, por ejemplo. ÂŋEl plugin maneja que si un objeto suscrito estÃĄ desactivado todo siga ejecutÃĄndose bien? Arigatou!
ÂĄHola! Si quieres desuscribirte lo tienes que gestionar tu. La funciÃģn de suscripciÃģn devuelve un IDisposable que puedes utilizar en el OnDisable o donde prefieras, pero es cosa del consumidor lo que haga con esto.
Esta muy buena la soluciÃģn del plugin, pero tengo una pregunta. Al agregar el plugin no significa que aÃąadimos mas cosas a compilar? no hace esto mas "pesado" de procesar? Me gusto la segunda implementaciÃģn para objetos jugables. En la tercera tengo mis dudas... probare el profile de unity a ver que me dice...
Puede que aumente el tiempo de compilado, pero si aÃąadimos un plugin es porque lo necesitamos. Si escribimos nosotros mismos ese mismo cÃģdigo, el problema serÃĄ el mismo y ademÃĄs tendremos que mantenerlo.
Hay mucha diferencia en el consumo de recursos de cada implementaciÃģn? (tanto la de actions como por referencia) Y si tengo muchos observers deberÃa preocuparme por esto?. Muy bueno el tuto por cierto, yo uso bastante este patrÃģn tambiÃĐn.
La verdad es que habrÃa que analizarlo en detalle, en el canal tenemos un proyecto para hacer este tipo de pruebas, te paso el enlace al vÃdeo donde lo explico: th-cam.com/video/rbPyHyCH_QQ/w-d-xo.html Yo tambiÃĐn lo utilizo bastante para la UI y nunca he tenido problemas de rendimiento. Claro estÃĄ que no es lo mismo reaccionar cuando ocurren ciertos eventos de vez en cuando, que reaccionar con varios Observers en cada Update.
âĪïļ Curso de Patrones de diseÃąo para VIDEOJUEGOS: bit.ly/3auX35Y
âĄïļ GuÃa rÃĄpida de patrones de diseÃąo para VIDEOJUEGOS: thepowerups-learning.com/guia-rapida-de-patrones-de-diseno/
ðĩ Discord: discord.gg/KWABp4BfN4
ðððððððððð
Muchas gracias! soy novato en la programaciÃģn y aÚn asà pude entender el patrÃģn con este tutorial
Me alegro de que lo hayas podido entender, ahora toca practicar ð
Buena info !
Gracias!
Puedes, con uniRx, disparar un evento y que este lleve acabo una funcion que retorne UnitaskVoid?... osea una funcion async?
Una duda, entre este patron o un evento en el sujeto al que se suscriban todos los observer, que ventajas tendria este patron sobre el otro metodo?
Es genia!
Quisiera aprender a fondo esto de los patrones pero no sÃĐ por dÃģnde empezar. ð
ÂĄHola! ÂĄTengo justo la soluciÃģn! ð.
En el blog tenemos una lista de todos los patrones que hemos ido viendo aplicados a videojuegos. Dentro de cada artÃculo encontrarÃĄs un vÃdeo a YT, la explicaciÃģn y el cÃģdigo utilizado. âĄïļ thepowerups-learning.com/patrones-de-diseno/
TambiÃĐn tenemos un curso de Patrones de diseÃąo para VIDEOJUEGOS, y las primeras lecciones son gratuitas para que puedas ver cÃģmo es el curso, te dejo el enlace por si quieres echarle un vistazo: âĄïļ curso-patrones-para-videojuegos.thepowerups-learning.com/
TambiÃĐn puedes pasarte por el canal de Discord (enlace en la descripciÃģn) y preguntar cualquier duda que tengas sobre patrones y otros temas de programaciÃģn, ya somos casi 200 devs en el canal ð.
Muy buen tutorial! Tengo una duda, crees que tendrÃa sentido implementar el plug-in de UniRX para tenerlo mÃĄs "optimizado" para mi proyecto? Soy compaÃąero de trabajo de Toni. Un saludo!
ÂĄHola Sergi!
Yo soy de la opiniÃģn de no reinventar la rueda, UniRx funciona perfecto y no tiene problemas de performance, al menos hasta donde yo lo he utilizado. AdemÃĄs tener nuestra propia librerÃa implicarÃĄ tiempo y mantenimiento, y por experiencia eso acaba en una librerÃa desfasada y que es un dolor de actualizar.
De todos modos, antes de plantearme optimizarla, habrÃa que ver la performance que tiene y hacer muchas pruebas. Ligado con esto, te dejo un vÃdeo donde hablo de pre-optimizaciÃģn y porquÃĐ es una mala idea: th-cam.com/video/rbPyHyCH_QQ/w-d-xo.html
ÂĄUn saludo!
@@ThepowerupsLearning Muchas gracias Dani. Me miro el video y comparto tu opiniÃģn! Saludos!!
Muy buenas! Muy buen vÃdeo, me ha aclarado muchas dudas, pero me ha surgido una nueva: la mayorÃa de implementaciones del patrÃģn observer que he visto usan un gestor de los eventos, una clase GameEvents o parecida, que es la que se encarga de hospedar todos los event actions, es esto una buena o mala praxis? o es situacional? de que depende? gracias! (en el canal de youtube de "Game Dev Guide" en su video "How To Build An Event System in Unity
" usa esta implementaciÃģn que comento, por si quieres echarle un vistazo ^^)
Se basa en el observer pero es otro patrÃģn, el event queue. Todo depende de como lo implementes, mientras tu sistema sea totalmente independiente de los nuevos eventos que vas aÃąadiendo no tiene porque ser un problema.
@@ThepowerupsLearning MUUUUUCHÃSIMAS gracias por la pronta respuesta. Con tu experiencia, cual de los dos patrones recomiendas?
Depende mucho de cada caso, yo utilizo los 2 segÚn para que cosas. El event queue va muy bien para eventos generales, el observer lo prefiero para cosas mÃĄs concretas y que solo le interesan a pocos colaboradores
Geniales tus videos, por favor, quita los fondos blancos de tus videos, sobre todo en los diagramas :C hacen sangran los ojos xD
ð ð
Hola! En el mÃĐtodo Configure de HelathView, el Suscribre me tira error diciendo que "No se puede convertir de 'grupo de mÃĐtodos' a 'IObserver' " ÂŋPorquÃĐ podrÃĄ ser? Gracias
Me faltaba agregar el using UniRx
Hay veces que ese using no lo pilla auto y hay que ponerlo a mano porque es un mÃĐtodo de extensiÃģn si mal no recuerdo.
ÂĄHola y gracias por el video! Justo hace unos dÃas habÃa visto otro de UniRx, pero en vez de usarlo como un Observer, lo usaban como el Update. Me gustarÃa saber si para la propiedad reactiva no hace falta desuscribirse en el OnDisable, por ejemplo. ÂŋEl plugin maneja que si un objeto suscrito estÃĄ desactivado todo siga ejecutÃĄndose bien? Arigatou!
ÂĄHola! Si quieres desuscribirte lo tienes que gestionar tu. La funciÃģn de suscripciÃģn devuelve un IDisposable que puedes utilizar en el OnDisable o donde prefieras, pero es cosa del consumidor lo que haga con esto.
@@ThepowerupsLearning, ah ya veo, gracias otra vez xD
Esta muy buena la soluciÃģn del plugin, pero tengo una pregunta. Al agregar el plugin no significa que aÃąadimos mas cosas a compilar? no hace esto mas "pesado" de procesar?
Me gusto la segunda implementaciÃģn para objetos jugables.
En la tercera tengo mis dudas... probare el profile de unity a ver que me dice...
Puede que aumente el tiempo de compilado, pero si aÃąadimos un plugin es porque lo necesitamos. Si escribimos nosotros mismos ese mismo cÃģdigo, el problema serÃĄ el mismo y ademÃĄs tendremos que mantenerlo.
Hay mucha diferencia en el consumo de recursos de cada implementaciÃģn? (tanto la de actions como por referencia) Y si tengo muchos observers deberÃa preocuparme por esto?. Muy bueno el tuto por cierto, yo uso bastante este patrÃģn tambiÃĐn.
La verdad es que habrÃa que analizarlo en detalle, en el canal tenemos un proyecto para hacer este tipo de pruebas, te paso el enlace al vÃdeo donde lo explico: th-cam.com/video/rbPyHyCH_QQ/w-d-xo.html
Yo tambiÃĐn lo utilizo bastante para la UI y nunca he tenido problemas de rendimiento. Claro estÃĄ que no es lo mismo reaccionar cuando ocurren ciertos eventos de vez en cuando, que reaccionar con varios Observers en cada Update.