#931 Igual debería abrir un hilo, el tema es que no consigo pasar los datos de un NativeList<int2> desde el IJob al hilo principal. Sé como pasar por ejemplo un int con NativeArray<int>(1, Allocation.TempJob) pero no me deja anidar nativos (no puedo hacer NativeArray<NativeList<int2>>(1, Allocation.TempJob)
No sé si me explico xD
#933 Mira que lo he intentado decir en plan twitter para que no saltara la liebre...
Chivato!
#934 otia un mono que habla
Donde está tu avatar?
Edit: cabró pero no te lo cambies, que me dejas de mas tonto de lo que soy
#932 a qué te refieres con que no consigues pasar los datos al hilo principal? Cuando creas el job tienes que pasarle un nativearray, y en tu Execute rellenarlo con la info que necesites. Te pongo un ejemplo del curro:
NativeArray<ProjectileEntity> entityInput = new NativeArray<ProjectileEntity>(ProjectileEntities.Count, Allocator.TempJob);
entityInput.CopyFrom(ProjectileEntities.ToArray());
NativeArray<ProjectileEntity> entityResult = new NativeArray<ProjectileEntity>(ProjectileEntities.Count, Allocator.TempJob);
ProjectileJob projectileJob = new ProjectileJob();
projectileJob.Projectiles = entityInput;
projectileJob.currentTime = Time.time;
projectileJob.Result = entityResult;
JobHandle jobHandle = projectileJob.Schedule(entityResult.Length, 1);
jobHandle.Complete();
Luego en el execute, con los cálculos, metemos en el Result (que es un field del job), lo rellenamos con la info que queramos.
Hasta donde se no se podían anidar los containers, si quieres intentar crear un struct con un nativearray como uno de los fields, lo mismo cuela, pero lo dudo infinitamente xd. No he tenido que anidar nada por suerte, si me acuerdo luego te busco alguna alternativa, que no estoy en casa xd
#939 Doubleposteo para comentarte que ya lo he solucionado y no creo que merezca la pena abrir hilo, era una cagada mía por la poca costumbre de trabajar con structs y creer estar trabajando por referencia. Básicamente tengo una función que me devuelve un NativeList<int> y estaba asignando el resultado alegremente por referencia en lugar de copiarlo iterando el resultado.
https://www.nintendo.com/games/detail/tested-on-humans-escape-room-switch/
Pues segundo juego sacado en Switch. Ahora me pondré con los ports a Xbox
#943 ojooooo, congrats! Qué tal van las ventas?
edit: por cierto usabas algún asset tipo esto? O te lo curraste tú todo? https://assetstore.unity.com/packages/templates/systems/first-person-narrative-adventures-complete-puzzle-engine-131623
#944 Pues en Switch que sacamos Palindrome Syndrome hace 20 días, lleva ya más de 2000 copias en Switch o sea que nada mal.
Sí, uso ese asset de base, pero bastante modificado, tiene muchos problemas de bugs y he añadido un montón de funcionalidades, pero de base no está mal, pero tal como está no se puede hacer un juego sin cmabiar cosas.
#945 joder pues de puta madre macho! Me alegro un montón :D, y vaya mierda lo del asset, pero bueno, nada nuevo en la asset store supongo xD
#946 Sí, va guay, entre la Switch y Steam. Lo del asset pues eso, la verdad es que casi me saldría más a cuenta dedicarle unos mesecillos para hacerlo desde cero porque tiene muchas limitaciones, pero bueno mientras tire pues ahí vamos.
Vengo a reportar que llevo dos semanas con blender y no me arrepiento del cambio.
En el grupo en el que estoy parece que somos una secta blenderiana, aunque hay un par que se aferran a maya/3ds Max.
#947 ahora que me doy cuenta, los pavos de ese asset son los mismos de no que tengo de hacer juegos de carreras, que esta guay, pero el código era una auténtica basura... Del percal de tener Updates vacios, usar strings para mil cosas que no debería usarlas, hardcodear cosas a saco... Una birria que me llevó un huevo de tiempo remodelar ligeramente... También va así este asset?? Uff
#956 Efectivamente así es, es un solo tipo, Pierre, que es muy simpático pero es francés, así que no puedes fiarte de él.
El asset está bien como concepto, y tiene muchas cosas muy útiles implementadas, pero el cabrón programa de pena. Es del rollo de en este asset tiene 8 clases para los puzzles, una para cada puzzle, que comparten el 90% del comportamiento y son todo copia-pegas en lugar de usar herencia o interfaz, y todo hardcodeado a tope, así que si quieres hacer algún cambio general pues cambias todo de base o le das al copia pega, pues así con todo.
Por eso digo que muchas cosas las he tenido que rehacer yo, algunas incluso se las he ido pasando y creo que las ha ido poniendo en el asset, pero uf...xd
#957 joder yo le mandé un par de emails por unos bugs que había y me costó que los entendiera... xDD. Le has arreglado bugs sólo o le has apañao el código también? Tendría que pagarte el notas xD
#959 Le he hecho de todo, debería pagarme el cabrón sí.
Se nota que nadie había intentado hacer un juego y publicarlo, porque tiene una cantidad de bugs importantes que he ido corrigiendo y pasándole (también porque me ayudaba con algunas cosas).
Las cosas que he mejorado de su código ya no, que ya me parecía faltarme con él.