Jump to content

J Montes

Registrados
  • Content Count

    145
  • Joined

  • Last visited

  • Days Won

    14

J Montes last won the day on June 17

J Montes had the most liked content!

Community Reputation

70 Excellent

1 Follower

About J Montes

  • Rank
    Asiduo

Profile Information

  • Especialidad
    Otros

Recent Profile Visitors

The recent visitors block is disabled and is not being shown to other users.

  1. Yo también creo que ese código no funcionará en una build del juego. Está bien si estás haciendo una herramienta para el editor.
  2. Felicidades! 🙂 A mí me ha gustado. No necesito más de un juego, de hecho los gráficos, el estilo, también me ha gustado, y creo que funciona. Me ha gustado el detalle de que algunas gotas reboten en la cabeza del personaje. He probado las dos "rutas" (no quiero spoilear), pero ¿es el mismo final? (a mí se me queda la pantalla en negro). (Estoy usando la versión WebGL)
  3. Quizá te sirva esto: https://firebase.google.com/docs/auth/unity/play-games?hl=es
  4. Uno de los últimos videos y escenarios generados. Aún faltan muchas cosas o están rotas, pero poco a poco mejorando. Aquí vemos la construcción de edificios 3D de OpenStreetMap en la Catedral de Salamanca. ¡Apóyanos siguiéndonos en Twitter o en YouTube si te gusta!
  5. Aunque hay que recordar también que esto es una guía de mates, pero normalmente en Unity, para calcular el ángulo en ese caso, usaríamos Vector3.Angle.
  6. En este vídeo volvemos a probar el generador en otra ciudad (A Coruña). Se añade la hierba, algunos objetos más, el minimapa y algunos otros detalles. ¡También estrenamos logo!
  7. Hoy he visto esto, que creo que es lo que buscas. https://unity.com/es/products/mars Pero resulta que esto ahora es de pago :?.
  8. ¡Gracias! Son varios planos, en el vertex color llevan codificada la altura de la hierba a la que corresponden: Me lo han comentado, y creo que tenéis razón. Pero hacer un controlador de dron no es trivial, efectivamente. Lo del minimapa he visto de todo, pero necesitamos le lado izquierdo para algo más importante. A la derecha es como se suele llevar el navegador en el coche así que creo que es razonable. Para una siguiente versión nos gustaría que cada uno pudiera elegir dónde juega. Es técnicamente viable, pero necesitamos un servidor corriendo Unity y generando Assets. Además, necesitamos que de esa zona al menos hayamos introducido mapas de elevación y se tarda varios minutos en generarlo (si no está ya generado)... así que la infraestructura se complica un poco. No lo veo para una primera versión. Tenemos pensado generar una zona grande 12-20 ciudades grandes (sobre todo Europeas). Pero en el kickstarter permitiremos votar a los contribuidores, y directamente a los "gold sponsors" les permitiremos seleccionar una zona a su elección... si bien ésta no tendría casi carreras definidas, puede hacerlo el propio usuario, y luego compartirlo. También nos planteamos, a falta de una solución global, generar más packs de ciudades y ofrecerlos como DLC o gratis. No lo tenemos claro. ¿Cómo lo veis? Un saludo,
  9. Los flashes nunca llegué a saber lo que eran, estaba relacionado con el bloom, y el shader tenía errores así que creo que nunca lo sabremos... :?
  10. Pruebas con hierba volumétrica, que tenía pendiente subir aquí: He escrito el shader (la versión actual es algo más fina que la de este video que he subido), basándome en este artículo: https://www.bruteforce-games.com/post/grass-shader-devblog-04 .
  11. Yo creo que no he hablado de "herencia genética" en ningún caso. Es verdad que a veces respondemos un poco cortantes pero es que... no sé, no has hecho ninguna pregunta de ningún problema concreto que tengas. "Ejemplos de uso de clases" hay miles en Internet, y si ninguno de esos te sirve es difícil ver cómo podemos ayudarte aquí a ciegas. En general, yo si una pregunta no es sobre un caso concreto, no suelo responderla, y te he respondido porque eres tú y sé que te esfuerzas y colaboras. De todas formas, tienes razón el tono no es ni correcto ni didáctico. También creo que deberíamos cada X días hacer una reunión y que la gente pudiera hacer preguntas y respuestas porque si tienes dudas sobre cómo plantear los proyectos, necesitas mentorización o docencia y un foro es demasiado lento para que puedas progresar, en mi opinión. Tío, coge un proyecto pequeño y hazlo desde cero: Pong, Arkanoid, Tetris, Snake. Y pregúntanos cosas concretas, muestra el código que falla... Dinos con qué proyecto te has puesto, crea un único hilo para él y vamos a intentar ir siguiendo el progreso desde cero. Prepáralo para webgl, de forma que si es necesario, quienes queramos podamos probarlo rápido y sin complicaciones. Esa es mi propuesta. Sin proyectos "concretos", yo lo único que puedo hacer es recomendarte que sigas tutoriales básicos (como hemos hecho todos ¿eh? que nadie nace aprendido). ...yo lo siento pero no recomiendo que hagas un curso que usa Java como vehículo cuando necesitas aprender C#. Bastante difícil es aprender un lenguaje como para aprender dos a la vez. Y más cosas: "Llevo" es con LL y con V. "Echarais" es sin H. Yo te entiendo pero en C# si te equivocas en estas cosas el compilador da un error ;-).
  12. Vale es con V. Tuvierais también. ¿No tienes un corrector ortográfico en el navegador? haz el esfuerzo jo... Hay multitud de tutoriales de programación orientada a objetos, no creo que tenga mucho sentido soltar aquí cuatro parrafadas. El motivo de crear una clase, en POO, es para agrupar bien datos, bien código, o ambas, que se aplican de manera conjunta a algo que trataremos como una única "entidad". En el ejemplo del DialogItem, como un diálogo tiene varios parámetros (duración, personaje, texto...), creamos una clase que representa y almacena esos datos conjuntamente. Después creamos varias instancias de esa clase, una para cada línea de diálogo. Esto se puede extender a casi cualquier "entidad" con la que necesites tratar. Un jugador, un vehículo, un enemigo, un item, una bala, una pieza de un puzzle, el puzzle entero... combinamos objetos con otros objetos para componer clases más complejas que representan y gestionan cada vez una parte mayor de la información de tu aplicación. A diseñar bien se aprende con el tiempo, sobre todo leyendo y escribiendo mucho código (estudiar formalmente también ayuda a tener unas buenas bases). Recuerda que una cosa es "definir una clase" (class MiClase) y otra "crear una instancia de una clase" (new MiClase()) . Llamamos a veces "objeto" a todo pero hay que tener bien clara la distinción.
  13. Bueno pero el autor del hilo al menos sí quiere que le funcione. El que quiere aprovecha y saca nota, y el que no o no le interesa pues le darán un títulillo y acabará seguramente currando de otra cosa (de político seguramente). Eso siempre ha pasado ¿no? (de todas formas @iRobb estamos offtopicando jebimente).
  14. Estoy de acuerdo. La sugerencia es buena y razonable, la implementación yaa.... no :). Pero bueno, no cabe duda de que @nomoregames vas avanzando. (Nota, @francoe1, en España si dices "arreglo" no te entiende nadie -aunque realmente es correcto, pero no se suele enseñar-, sugiero que usemos todos "array" para evitar confusión aquí). Dejémonos de ScriptableObjects y editores de nodos, la pregunta viene de alguien que está empezando con el tema diálogos y claramente necesita un consejo menos complejo. Usar archivos estaría bien pero nos preguntan por cómo secuenciar el diálogo así que pongámonos didácticos. Te pego un ejemplo en el que el diálogo está definido estáticamente en un array/arreglo como bien decía @francoe1, y con un uso razonable de la Coroutine. Molaría que ( @nomoregames y @overbaal ) lo leáis, lo probéis, y preguntéis cualquier cosa que no entendáis. He puesto las variables y comentarios en inglés porque eso es lo que recomiendo hacer a todo el mundo, pero si no entendéis algo, preguntad también. using System.Collections; using System.Collections.Generic; using UnityEngine; public class DialogManager : MonoBehaviour { /** * This class holds the information of each dialog line. * Could also include icons, colors or other information needed. */ public class DialogItem { public float duration; public string name; public string text; public DialogItem(float duration, string name, string text) { this.duration = duration; this.name = name; this.text = text; } } // Example initialization, but we could extend this class to read this from a file // or from wherever we need to. DialogItem[] dialogItems = new DialogItem[] { new DialogItem(2.0f, "Epi", "Y por fin he encontrado el Vespino"), new DialogItem(2.0f, "Blas", "que me ha de llevar a Santiago,"), new DialogItem(3.0f, "Epi", "y esta noche me espera el amor"), new DialogItem(2.0f, "Ana", "en Betanzos...") }; void Start() { // Start a dialog here as an example. // In an actual game, dialogs would be started from elsewhere calling this function. StartDialog(dialogItems); } /** * This starts a dialog. */ public void StartDialog(DialogItem[] dialogItems) { StartCoroutine(DialogManagerCoroutine(dialogItems)); } /* * This coroutine runs a dialog sequence and ends. * There are many ways to do this, this is a simple iterator over dialog items: */ IEnumerator DialogManagerCoroutine(DialogItem[] dialogItems) { int currentItemIndex = 0; // Loop over the dialog items until we are finished: while (currentItemIndex < dialogItems.Length) { // Grab the current dialog item DialogItem currentItem = dialogItems[currentItemIndex]; // Show it (we call a different function so we can change that) ShowDialogItem(currentItem); // Use "yield return new WaitForSeconds" in the coroutine to wait. This does not waste CPU cycles. yield return new WaitForSeconds(currentItem.duration); // Finally, increment current item. currentItemIndex++; } } /** * Show a single dialog item. In this example we just write to console. */ void ShowDialogItem(DialogItem item) { Debug.Log(item.name + "> " + item.text); } } Salida: ...y por favor (@nomoregames te miro a ti) intentad formatear el código bien. Ahí arriba hay muchísimas líneas en blanco sin sentido, a veces dobles o triples, y partes donde el código está mal indentado. También es cierto que el editor de la web no ayuda (la lía un poco con tab/spaces), hay que escribirlo en el editor de código y pegarlo aquí del tirón. Ya comentaréis ¡un saludo!
  15. Bueno he sacado una lista de notas, te la mando (ojo viene sin garantía 😉): 0:11 La reflection del sol es muy fuerte y creo que no está teniendo en cuenta el edificio de enfrente (no debería verse el sol). 0:45 Me gusta el efecto del texto al dibujarse (¿cómo haces, vas reconstruyendo la cadena cambiando el <color> con rich text?). 0:47 ¿Se dice recharges o clips? (no estoy seguro si es la misma cosa y es un false-friend, o son cosas diferentes, no soy mucho de armas). 1:00 Muy chulos los rayos del sol sobre el horizonte (¿luces volumétricas o skybox?). 1:11 Ya lo había notado en otros videos, pero los puños parece que requieren estar realmente cerca, o la cámara da una sensación de más cercanía, pero yo esperaría que ese puñetazo alcanzara al NPC. Esta sensación la tengo más veces con los puños. 1:19 Creo que los enemigos necesitan una animación de "voy a atacar" (esto tiene un nombre que no me sale...). Porque sueltan unas leches de primeras que te ponen fino sin alerta ninguna. 2:30 El comienzo y el tono de la música muy bien, junto con el amanecer. ¿Está scripteado así? ¿por qué empieza en ese momento?. ¿Esta pieza era tuya o es un asset de 3rd party?. 3:31 Ahí el sol es más creíble, aunque creo que tampoco debería verse (no sé si el edificio está en sombra). En cambio perfecto en 3:38 a la izquierda. ¿Reflection probes? (aunque si no lo sabes tú... 😉 ). 4:50 Las iluminación volumétrica también le dan un aspecto estupendo. Otras cosas: Me llama mucho un FPS con motor de día/noche/clima. No se suele ver, y da un aspecto orgánico a las partidas. Aunque no veo del todo cómo encaja en un juego con una trama guionizada (lo vería más en un juego más orgánico). Reinsisto en mi sugerencia de tener un modo de juego casual de niveles de 5-10 minutos, tipo gymkana matazombis o... :? Te recomiendo encarecidamente que eches un ojo a este video sobre combat systems, creo que te puede dar ideas para "tipificar" el tuyo (todo el canal es genial): https://www.youtube.com/watch?v=8X4fx-YncqA&t=2s Felicidades, ¡estás avanzando un montón!
UnitySpain © Todos los derechos reservados 2020
×
×
  • Create New...