[Unity 3D] trasteando ECS Tiny Mode

B

¿Que qué es? enlace aquí

Road map aquí

Docu aquí


Empiezo de cero... hoy he aprendido a crear animación e implementar física...

La salida es un archivo html que lleva las imágenes incrustadas e imprime en un canvas 2D.

Poco más de 200KBs.

Play en https://debug64.com/dev/000.html

Estoy con varias cosas a la vez, así que solo postearé cuando toque Tiny Mode.

PD: si estáis trasteando postear lo que tengáis xD.

1
B

Yo estoy trasteando ECS pero no el tiny mode.

1 1 respuesta
B

#2 yo es que estoy muy interesado en ver el rendimiento 2D con ECS en el navegador.

A ver si en unos días ya hago benchmarks 2D...

PD: también me interesa probar benchmarks con ECS en 3D en WebGL aunque no se si lo soporta por ahora.

totespare

Eres un todoterreno tio, le das a todo! Ya nos contarás tus avances ;)

1 1 respuesta
B

#4 la publicación web vía Unity, sin plugins de terceros en el navegador siempre me ha interesado.

Gran parte de la docu está pendiente de publicación... por ahora no soporta C#, están trabajando en ello.

Ya solo hacer un Player Controller en el estado que está actualmente Tiny Mode pinta que va a ser toda una aventura xD

B

Demo/tuto basado en el Flappy Bird 500KB

Play en https://debug64.com/dev/001.html

B

Demo/tuto físicas 200KB

Play en https://debug64.com/dev/002.html

B

Demo/tuto juego completo 1800KB

Play en https://debug64.com/dev/003.html

B

Hoy he aprendido a crear componentes para almacenar datos y usarlos para manejar la física... terminando scripts para crear y controlar estados de animación.

Las primeras horas se me hizo raro el cambio de programación orientada a objetos a la filosofía del ECS orientado a datos. La flexibilidad y libertad de diseño que aporta es increíble.

El Tiny Mode por ahora está en pañales...

1 respuesta
totespare

#9 fotos de la arquitectura de clases y código, gogogo!

1 1 respuesta
B

Se basa en Tiny componentes con TypeScript, solo sirve para Tiny Mode. Estoy intentando controlar las físicas y gestionar estados de animación...

1
B

#10

Road map aquí

1
B

A mi me esta costando pillar el truco a esto.
Tengo demasiado asimilado POO y crear entities como tal me supera. También que echarle media hora nada más no es mucho

1
B

Un test con 500 entidades... AWSD SPACE

Play en https://debug64.com/dev/004.html

1
B

El test #14 son 220KB... el equivalente sin ECS en WebGL se va a 4200KB

Voy a esperar a que Tiny tenga soporte C#, se le espera a primeros de este año... mientras me liaré con el ECS "normal".

1 1 respuesta
MisKo

#15 He estado mirando y tampoco me entero muy bien de que es esto. ¿Otra forma de hacer juegos con Unity?

Me interesa sobre todo:

  • Que ocupan poco
  • Que funciona en cualquier dispositivo/navegador

Lo único que he tocado de Unity ha sido el instalador, por lo que no se muy bien por donde va la cosa xD

1 respuesta
B

#16 Con el Unity clásico... con "poco" estaríamos hablando de unos 5MB para arriba con juegos minimalistas.

Si quieres juegos más pequeños toca buscar otro engine o esperar a que ECS Tiny Mode esté para producción.

B

Pues mira, con esto de TinyECS me han entrado ganas de hacer chorrijuegos para el portfolio, que sean cortos y rejugables

1 1 respuesta
B

#18 visto como está el ECS puro (no Tiny) le voy a dar otro try al Tiny (aunque aún no tenga soporte C#).

Parece que 2019 será el lanzamiento oficial del modo diminuto.

He comprobado que es mejor no usar el botón play.

Yo voy con una vista bloqueada del inspector y uso el botón build en modo development, es más eficiente.

Con el botón play se queda más "pillado" el editor.

Voy a intentar meter algo de multiplayer...

B

Jummm si se desactiva el "enable play mode" ya no se queda pillado con el play xD

#19 descartado...

1 respuesta
totespare

#20 y el multi con qué lo vas a meter?

kesada7

El ECS viene para sustituir a la POO o para convivir juntos? En proyectos grandes para juegos de consola/pc donde el tamañao/rendimiento no es tan importante como en móvil/web seguirá siendo más cómodo la POO? Yo lo del ECS todavía no lo he entenido bien pero si es algo que va ser el estandard habrá que ponerse al día :/

Edit: Acabo de ver que se estaba discutiendo esto mismo en el hilo de unity xD Yo creo que la arquitectura actual de componentes y POO no va a desaparecer del todo nunca y siempre va a tener soporte, está demasiada extendida creo yo.

1 respuesta
totespare

#22 pretende sustituirlo, si. Y no sólo para móvil, para PC y consolas también, es un avance muy majo para todo en general. Que la POO (o más bien componentes clásicos) es más cómodo? Pues si, pero en parte porque ya estamos acostumbrados a esa arquitectura. Todo será cuestión de ponerse y entenderlo, y la mejor forma, como siempre, es practicando.

B

21 websockets

B

Bueno, ya tengo estados de animación 300KB

Play en https://debug64.com/dev/005.html AWSD SPACE

PD: paso unas capturas de código (no son gran cosa, para curiosos)

B

actualizado en #32

B

actualizado en #33

B

actualizado en #38

B

Falta ajustar para que solo se invoque el cambio de animación cuando el estado cambia de modo... Y añadir lógica para que se puedan animar múltiples entidades, no solo el player.

1
B

Primero intentaré comunicación con el server y después modificaré el sistema animación para poder animar los rivales multiplayer.

1 1 respuesta
Tema cerrado