Menú

Mostrar Mensajes

Esta sección te permite ver todos los mensajes escritos por este usuario. Ten en cuenta que sólo puedes ver los mensajes escritos en zonas a las que tienes acceso en este momento.

Mostrar Mensajes Menú

Mensajes - Final Level

#1
General (Antiguo) / Mi Humilde opinión sobre EUROPA
Noviembre 19, 2015, 11:46:08 PM
Primero de todo, decirte que estás algo equivocado. Rusia combate contra el ISIS desde el primer momento, ya que apoya a Bashar al-Asad, con quien tiene negocios. En todo caso, es USA quién ha apoyado desde el principio a los rebeldes, que ya hace tiempo se descubrió que la mayoría no eran rebeldes sino mercenarios a sueldo, más que nada porque el ejército sirio registra los cadáveres y la nacionalidad de estos no es siria, sino del Líbano, Libia, etc.Esto quiere decir que USA apoya directa o indirectamente, queriendo o sin querer, al ISIS, pues entre los rebeldes sirios hay bastantes del ISIS y/o que comulgan con tales ideas. Por otra parte, no seamos borregos. La TV lleva una semana bombardeándonos con noticias sentimentalistas sobre lo que han hecho los terroristas islámicos en París, pero no sacan apenas imágenes de lo que los terroristas occidentales hacemos en oriente medio. Véase lo poco(o nada) que han comunicado en las noticias que Francia lleva bombardeando Siria un par de meses(más o menos, y esa es la razón del atentado) y si lo hacen, es para decirnos que están acabando con el ISIS pero nunca nos hablan de las muertes de civiles. Esas muertes son daños colaterales, jaja. En fin, miedo ninguno, esto es política y un negocio como otros y es más viejo que el cagar...mientras nosotros nos ponemos banderitas de Francia en Facebook como auténticos borregos, como si un símbolo del estado francés significara algo ante tal tragedia; como si todos los que murieron allí fueran franceses. El estado francés va ahora a hacer lo que viene haciendo desde hace un tiempo, pero ahora con la aprobación de casi toda Europa, mientras nosotros hacemos oídos sordos y ellos "reparten un poco de democracia"(toneladas de bombas) en oriente medio para sacar beneficios en recursos(petróleo) como siempre. O acaso, ¿alguien se cree realmente que Francia va a gastar miles de millones de euros en gasto militar en los próximos meses, única y exclusivamente para hacer justicia por los apenas 129 muertos en París? Creo que hay que ser un auténtico borrego para pensar eso, sinceramente. Nada nuevo bajo el sol.
#2
General (Antiguo) / Help
Noviembre 18, 2015, 05:41:53 PM
public float frecuencia = 10.0f; // segundos
float ultimaVez;

void Update ()
{

// condicion de si debe hacer una explosion?
Explosion ();
}

void Explosion ()
{
if ( Time.time > (ultimaVez + frecuencia) ) {
   
   // efectos explosion, sonidos, etc...
   
   
   
   // última explosión
   ultimaVez = Time.time;
}

}
 
#3
General (Antiguo) / I Wanna Be The Guy
Noviembre 17, 2015, 11:02:24 PM
típicos juegos troll...están hechos a mala leche. El menu principal recuerda al Megaman
#4
Cita de: Arthure date=1447714358" data-ipsquote="" data-cite="Arthure" class="ipsQuote Pues si al final los dos teneis razon, solo que estais hablando de cosas diferentes ... aunque habria que hacer dos observaciones:Quel la caga un poco al decir "desde siempre"; segun si se considera que enginees como unity existen desde siempre donde crear objetos (no instancias) tiene un coste elevado si necesitas crearlo muy frecuentemente. Pero programando en nativo, la verdad es que el pool puede ser necesario para una cosa muuuuuy puntual pero es muy raro tener que utilizarlo.Es como decir que, porque en unity tener 150.000 objetos (gameobjects) en pantalla te consumiria mucho ... no puedes tener 250.000 objetos (instancias de clase) y mas si lo necesitas en una aplicacion programada como de toda la vida, es decir en nativo. El "de siempre" no pega mucho en programacion cuando te estas refiriendo a una cuestion de Unity.Por otra parte, Final Level no te pegues esos piques ... la mitad (en realidad muchos mas) del foro, que no es lo mismo que decir todos, solo han programado en Unity y siguiendo videotutoriales por lo que no saben ni lo mas basico de programacion; si te das una vuelta por el foro, encontraras mucha gente que dice directamente no saber que es una clase o un objeto ... lo se, pero se meten a programar un videojuego xDPara leer mucho de lo que se dice en este foro debes cambiar el chip, y pensar que el Unity es la programacion (olvidarte de todo lo anterior), y asi cuando leas cosas como "objeto" no entenderas una instancia de clase (que en programacion es lo que es) si no un GameObject (que es a lo que se refieren aunque no sea un objeto hablando en programacion y encima luego te vayan algunos de listos queriendote enseñar)
No he dicho todos. Sé que aquí hay gente que controla del tema. Aunque había más antes y por algún motivo, ya no veo a algunos.
#5
[quote author=Quel date=1447662948" data-ipsquote="" data-cite="Quel" class="ipsQuote">Desde siempre. Te cuento, porque veo que vas un poco desorientado.Destruir y crear objetos es mas costoso que coger un objeto ya existente en la escena y redefinir sus valores. En realidad, esa es una de las principales razones por las que existen y son tan recomendadas el uso de los Object Pool en todos aquellos objetos que deben de ser destruidos y credos con frecuencia.
Si no sabes que es una Objecto Pool, puedes mirar un hilo que hay en este mismo foro, donde cuenta un poco al respecto (http://unityspain.com/topic/9608-aporte-object-pool/)De nada.[/quote]Reinstanciar un objeto y asignarlo en un puntero es matar moscas a cañonazos "desde siempre"? De dónde has salido tú, criatura de la naturaleza? ¿Hablamos de objetos como GameObjects con componentes incluidos o hablamos de instancias de clases que, por lo general, suelen ser estructuras de datos livianas, dado que suelen ser scripts que controlan una pequeña parte del comportamiento de un GameObject? Me parece que el que estás desorientado eres tú, amigo. Es normal que constantemente se instancien objetos(instancias de clase. Aunque dependiendo del tamaño no es recomendable en bucles del hilo principal), y estoy bastante acostumbrado a hacer esto en software con lenguajes nativos por ejemplo, y con objetos más pesados de lo que  suele ser un script. Es decir, es algo bastante corriente y no llevo dos días en esto para llegar a un foro de Unity y que un "escupe código" que ha medio aprendido con un engine WYSIWYG, te diga que estás desorientado. Obviamente se puede hacer uso de técnicas como el pool(que pareciera que lo has descubierto ahora, por cierto), pero estas cosas se suelen utilizar para objetos pesados; sobretodo que requieran asignación en memoria con una alta frecuencia. Como uses pool para cada clase que tengas que reinstanciar, tus proyectos tienen que dar un poco de grima. Esa obsesión por el rendimiento en cuestiones casi insignificantes, no hacen más que delatar tu limitado conocimiento sobre el tema, además de tener una capacidad lógica casi nula a la hora de estructurar un programa, al recomendar usar valores fijos para reestablecer variables que pueden cambiar en diferentes instancias del mismo tipo. Lo que yo proponía es una solución simple y rápida. Pues lo que le interesaba era reniciar las variables y que los métodos de inicialización se invocaran de nuevo. Por tanto, supongo que le sirve reiniciar solo ese script y no el GO completo, el cual, no tiene porqué eliminar. En la mayoría de los casos, esto será lo más optimo y ni siquiera va a haber cuelgue con una simple estructura de datos. Ni que estuviéramos en al era de Spectrum. No sé qué tengo que agradecerte para que me digas "De nada".Perdona por el pergamino, señor Spaghetti Code, pero no vengo mucho por aquí.
#6
[quote author=Quel date=1447190258" data-ipsquote="" data-cite="Quel" class="ipsQuote">1) Pues te haces una función que se llame Inicializar. En ella asignas todas las variables que se tengan que asignar, llamas todas las funciones que se tengan que llamar y realizas todas las tareas que sea necesario llevar a cabo.2) En en Start o en el Awake, ejecutas tu función Inicializar.
3) Cuando vuelvas hacerle un reset a tu script, vuelves a llamar tu función Inicializar.Asi de simple.

#7
[quote author=nestorjaviersolera date=1447183921" data-ipsquote="" data-cite="nestorjaviersolera" class="ipsQuote">gente me disculpó hay un  objeto esta siendo llamado por otros objeto externos  en el escenario, al yo  borrar del escenario al primer objeto este me tira error porque el primer objeto no esta, luego llamo  otro objeto con el mismo nombre y me tiraba error, porque tengo que reinicializa el el objeto que llama para que detecte las variables de nuevo objeto del escenario, pero ya lo solucione gracias @http://unityspain.com/profile/27231-irobb/?do=hovercard&referrer=http%253A%252F%252Funityspain.com%252Ftopic%252F34389-reiniciar-un-script-desde-otro-que-acabo-de-instanciar%252F" title="Go to iRobb's profile" id="ips_uid_5" style="box-sizing: border-box; color: inherit; text-decoration: none; background-color: transparent;" href="<___base_url___>/profile/27231-irobb/">iRobb.que todas las variables vuelvan a su estado inicial, y el start() y Awake() vuelvan a activarse nuevamente.[/quote]pues lo destruyes y lo vuelves a intanciar:
			
#8
[quote author=mrpacogp date=1446307275" data-ipsquote="" data-cite="mrpacogp" class="ipsQuote">Realmente lo estaba usando vertical que es como quiero. Pero no entiendo porque, si dejo que las balas por el ejeX si que van en paralelo al viewport.
#9
General (Antiguo) / [APORTE] Object Pool
Octubre 31, 2015, 06:10:48 PM
[quote author=mrpacogp date=1446309865" data-ipsquote="" data-cite="mrpacogp" class="ipsQuote">Me dio por usar en un proyecto dos Pool Manager por gestionar por separado los tipos de partículas pero se liaba bastante.También hay otro problema: Si el Pool Manager lo conviertes en Prefab, cuando al objeto en escena le añades nuevos items, si no le das a Apply y guardar scena al darle a play el objeto vuelve al estado de prefab.Me entiendes? [/quote]En el archivo PoolManagerEditor.cs, agrega el siguiente código al final(dentro) de la función OnInspectorGUI:
			
#10
Compila el juego y fíjate en los archivos. La ruta de estos puede cambiar según la plataforma, por lo que el instalador de actualización debería ser diferente en cada plataforma de PC(Windows, Mac y Linux). Tu código queda en estos archivos compilados:Para el código C#:Assembly-CSharp.dll Para el código UnityScript(Javascript):Assembly-UnityScript.dll Para el código en Boo:Boo.Lang.dll Podría servir para ligeros cambios en el código. No podría asegurarte que funcione con nuevas clases creadas. Todo es probar
#11
General (Antiguo) / Minimizar / Maximizar ventana
Septiembre 30, 2015, 08:35:50 PM
[quote author=alonso240" data-ipsquote-contapp="forums" data-ipsquote-contenttype="forums" data-ipsquote-contentclass="forums_Topic" data-ipsquote-contentid="27145" data-ipsquote-contentcommentid="114982">Vale, solucionado.Me decia que "WindowShowStyle" no lo reconocia, así que he cambiado la línea:
private static extern bool ShowWindow(IntPtr hwnd, WindowShowStyle nCmdShow);
por:
private static extern bool ShowWindow(IntPtr hwnd, int nCmdShow);
Y me funciona a la perfección.Para no tener que mirar el nombre de la aplicación he usado:
ManVentanas.CambiarModo(ModoVentana.Minimizado, Application.productName
			
#12
General (Antiguo) / Minimizar / Maximizar ventana
Septiembre 29, 2015, 11:20:57 PM
Creo que no existe funciones en Unity para minimizar y maximizar la ventana. Sin embargo puedes importar una librería nativa de windows con la interoperabilidad. Prueba lo siguiente:Crea un script C# con un nombre(por ejemplo el mismo que la clase "ManVentanas"), y reemplaza todo su código por el siguiente:
using UnityEngine;
using System.Collections;
using System.Runtime.InteropServices;

public enum ModoVentana {
Normal       = 1,
Minimizado    = 2,
Maximizado    = 3
}

public static class ManVentanas
{
    // Importa la funcion "Mostrar Ventana" de la dll "user32"
[DllImport("user32.dll")]
    private static extern bool ShowWindow(IntPtr hwnd, WindowShowStyle nCmdShow);

    // Importa la funcion "Buscar Ventana" de la dll "user32"
    [DllImport("user32.dll", SetLastError=true)]
    private static extern IntPtr FindWindow(string lpClassName, string lpWindowName);
    

    // tituloVentana = titulo de la ventana del juego.
    public static void CambiarModo (ModoVentana modo, string tituloVentana)
    {
       IntPtr ventana = FindWindow (null, tituloVentana);
       ShowWindow (ventana, (int)modo);
    }

}
No lo he probado pero en su momento(hace un par de años o tres), probé a mostrar cuadros de mensajes nativos de Windows a través de Unity. Así que creo que podría funcionar. Como es una clase estática y para este caso es lo más adecuado, para llamar al método "CambiarModo", basta con hacerlo de estas formas posibles:Imaginemos que tu juego se llama "Metal Gear Solid", y que por lo general, el título de la ventana de tu juego será el mismo.Minimizar:
ManVentanas.CambiarModo(ModoVentana.Minimizado, "Metal Gear Solid");
Maximizar:
ManVentanas.CambiarModo(ModoVentana.Maximizado, "Metal Gear Solid");
Normal:
ManVentanas.CambiarModo(ModoVentana.Normal, "Metal Gear Solid");
 Recuerda comprobar cual es el título de la ventana de tu juego para que la función FindWindow la encuentre. Espero que funcione, sino, postea el error. 
#13
General (Antiguo) / interactividad puerta
Septiembre 29, 2015, 12:13:27 AM
Tal vez no hayas creado el tag "Door" para las puertas o tal vez el parent del objeto con el tag "Door" no contiene el componente "DoorScript", sino el mismo objeto. Pero si no pones el error que te sale por consola pues poco se puede hacer.
#14
General (Antiguo) / MiniMap
Septiembre 28, 2015, 05:22:05 PM
un minimapa se puede crear fácilmente utilizando una cámara adicional y ajustando su posición y tamaño en la pantalla mediante las opciones de cámara Viewport Rect en el inspector.Algo básico sería poner la cámara con una vista cenital y siguiendo al jugador en las coordenadas "X" y "Z". Además, crear una capa para mostrar en ella solo una referencia donde se encuentra el jugador y el mapa; y así no tener que renderizar todo con una segunda cámara. En cualquier caso, aunque no sea estrictamente necesario, hasta donde yo sé, Render Texture está disponible en la versión gratuita de Unity a partir de la versión 5.
#15
General (Antiguo) / Alguien tiene la Kinect?
Septiembre 27, 2015, 10:17:05 PM
Pues eso. Como muchos sabrán, con el Kinect se puede hacer Motion Capture para crear animaciones con una calidad muy aceptable. Esto supondría un ahorro de tiempo bastante grande, pero sobre todo una solución para aquellos que no somos buenos animando, por un precio bastante asequible. ¿Alguien que lo tenga y lo haya probado podría darnos una opinión de primera mano?