Stratos: Punto de Encuentro de Desarrolladores

¡Bienvenido a Stratos!

Acceder

Foros





Menu

Mostrar Mensajes

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

Mostrar Mensajes Menu

Mensajes - Totemalf

#1
El código ya aplicado a un texto 3d, y con un pequeño arreglo para que sea más eficiente:

string entradaTexto;
    public string TextoGuardado;
    TextMesh miTexto3d;
   
    void Start () {
        miTexto3d = GetComponent<TextMesh>();
}

void Update () {

        if (Input.anyKeyDown)
        {
            if (Input.GetKeyDown(KeyCode.Backspace) && TextoGuardado.Length > 0)
            {
                TextoGuardado = TextoGuardado.Remove(TextoGuardado.Length - 1, 1);
            }
            else
            {
                entradaTexto = Input.inputString;
                TextoGuardado += entradaTexto;
            }
            miTexto3d.text = TextoGuardado;
        }

    }
#2
Vale, este es el código que permite ingresar caracteres por teclado y borrarlos con backspace si queremos. Esto para mi era lo difícil, ahora lo aplicaré a un texto 3d para que mole más.

      string entradaTexto;
    public string TextoGuardado;
   
void Start () {

}

void Update () {

        if (Input.GetKeyDown(KeyCode.Backspace) && TextoGuardado.Length > 0)
        {
                TextoGuardado = TextoGuardado.Remove(TextoGuardado.Length-1, 1);
        }
        else
        {
            entradaTexto = Input.inputString;
            TextoGuardado += entradaTexto;
        }
       
}
#3
Muchas gracias EX es exactamente lo que estaba buscando. Acabo de probarlo a groso modo y va perfecto:

string entradaTexto;
public string TextoGuardado;
   
   void Update () {
        entradaTexto = Input.inputString;
        TextoGuardado += entradaTexto;
   }
}
Ahora a currarlo un poco más para que haga lo del backspace y listo.

Muchas gracias!!!
#4
Buenas y Feliz año!

Mi duda es la siguiente, quiero guardar la tecla pulsada en una variable, ¿es esto posible?
Se que con el UI se puede hacer un recuadro para entrada de teclado, pero no es esto lo que quiero hacer.
Mi idea es ir guardando los caracteres ingresados en variables y luego aplicarlos a un 3d Text.
Pensé en hacer una serie de If para ir comprobando todas las teclas y números, o sea, cada vez que se pulsa una tecla comprobar las 39 posibilidades por medio de If... en plan If( Input.GetKey.......) Sé que así va a funcionar, pero no parece lo más optimo, supongo que tiene que existir alguna función o algo que permita hacerlo más fácil.

Un saludo y muchas gracias!
#5
Hola de nuevo,
fantástica explicación, en cuanto pueda echaré un vistazo a lo que comentas. Un saludo!
#6
Bueno,
pues al final  parece que entre todos se ha llegado a la forma más optima, que es la del articulo de stackoverflow = Darago_malaga. Así que me lo apunto.
De cualquier modo iré probando las diferentes formas para entenderlas, ya que estoy aprendiendo y aún me cuesta un poco entender algunas cosas de los códigos.

Lo dicho, muchas gracias!
#7
Buenas,
creo que he encontrado un modo mejor de hacer esto, e imagino que será más eficiente, ya que no tengo la necesidad de hacer el for anidado de mis casos anteriores. ¿[EX3] serías tan amable de probar el rendimiento en tu computadora para poder comparar con los métodos anteriores?

List<int> listaEnteros = new List<int> ();
List<int> listaEnteros2 = new List<int> ();
public int numeroElementos = 10;
int numeroAleatorio;

void Awake ()
{

for (int contador = 0; contador < numeroElementos; contador++) {
listaEnteros.Add (contador);
print ("La posicion " + contador + " alberga el valor " + listaEnteros [contador]);
}
}

void Start ()
{

for (int contador2 = 0; contador2 <numeroElementos; contador2++)
{
numeroAleatorio = Random.Range (0, listaEnteros.Count);
listaEnteros2.Add(listaEnteros[numeroAleatorio]);
listaEnteros.RemoveAt (numeroAleatorio);
print (listaEnteros2[contador2]);
}
}


Me da la impresión de que es una forma de hacerlo más ingeniosa, espero no equivocarme y que me exploteis mi burbuja, ahora estoy de subidón. :P

Saludos y gracias
#8
Buenas,
gracias a todos por las respuestas y por vuestras ideas,
y gracias [EX3] por hacer la prueba, se ve claramente la falta de rendimiento en mi forma de hacerlo. Esta tarde haré más pruebas con lo que comentáis.
Por cierto, [EX3], como has hecho la prueba de rendimiento, ¿controlas cuando termina de ejecutarse de alguna forma? o tienes que estar pendiente a ver cuando acaba?

Un saludo!

#9
Versión 2, que creo que es más eficiente, y remarco lo de creo.

//Array de enteros. Quiero asignar un valor del 0 al 9 en cada indice sin que se repitan
// O lo que es lo mismo, distribuir los numeros del 0 al 9 entre los indices
int [] elemento = new int[10];

void Awake ()
{
//Asigno un valor al primer elemento del array fuera del for
elemento [0] = Random.Range(0,10);

//El for guarda un numero aleatorio en la variable numeroAzar
for(int contador1 = 1;contador1<elemento.Length;contador1++)
{
int numeroAzar = Random.Range(0,10);
int contador2 = 0;

//El while guarda el valor del numeroAzar en cada indide del Array
//si no existe ya en un indice anterior

while(contador2<contador1)
{
if (elemento[contador2]==numeroAzar)
{
numeroAzar= Random.Range(0,10);
contador2 = 0;
continue;
}
else
{
elemento [contador1]= numeroAzar;
}
contador2++;
}

}
}
#10
Buenas,
he creado un script con C# que permite asignar valores a los indices de una lista, sin que se repitan. Estoy seguro que no será la manera más ortodoxa ni la de mejor rendimiento, pero si a alguien le sirve genial. Si alguien quiere aportar un modo que tenga un mejor rendimiento sería genial. Saludos!

   int [] elemento = new int[10];

   void Awake ()
   {
   
      for(int contador1 =0;contador1<elemento.Length;contador1++)
      {

         elemento[contador1]= Random.Range(0,10);
         int contador2 =0;

         while(contador2<contador1)
         {
            if(elemento[contador2]==elemento[contador1])
            {
               elemento[contador1]=Random.Range(0,10);
                contador2 = 0;
               continue;
            }
            contador2++;
         }
      }
}
#11
General / Concurso de videojuegos THE ROOM
01 de Abril de 2014, 06:47:19 PM
Por si alguien no lo ha visto en la portada y le interesa participar. He organizado un concurso de desarrollo de videojuegos un tanto peculiar:
El concurso propone el reto de crear un videojuego de una sola habitación. Deberá contar una historia completa, presentando al personaje principal y planteando un conflicto que deberá resolver para terminar el juego con éxito y dejando la trama cerrada.

Vídeo de presentación: https://www.youtube.com/watch?v=zXq1y0EPOw4

Cuenta con premios para los tres primeros clasificados, en forma de cursos de videojuegos, por valor de más de 1000 euros. Todo gracias a la colaboración de ZarcortGame, www.seiscocos.com, www.caminantebinario.com y www.Elbooz.com.

¡Apúntate ya en www.toodaim.blogspot.com!
#12
Modelado / Re:Blender, las aristas del mirror desaparecen
23 de Marzo de 2014, 12:30:54 PM
Me auto respondo, tenia desactivado el icono del triangulito en el modificador., lo cual al parecer sirve para ver los cambios aplicados por el modificador en modo edición.

Saludos
#13
Modelado / Blender, las aristas del mirror desaparecen
23 de Marzo de 2014, 11:58:11 AM
Pues eso, estoy siguiendo un videotutorial paso a paso. Se trata de la creación de una cara a partir de un plano, y bueno, hago un Mirror y todo comienza funcionando bien, pero llega un momento en el que comienzan a desaparecer las aristas en la parte del mirror.

He grabado un vídeo mostrando lo que me ocurre,
http://www.youtube.com/watch?v=v3Mle8g3_jg&feature=youtu.be
en él las aristas desaparecen al hacer un control+Z alrededor del minuto 1:48 , pero en otras ocasiones me han desaparecido al hacer un extrude por ejemplo y con el modelo más avanzado. Y si quito el mirror y lo vuelvo a aplicar las aristas siguen desaparecidas, es bastante frustrante.

Un saludo.
#14
Gracias por la info iCattamaranvk,
el caso es que el canal que tengo ahora, tiene videos de 2000, 3000 visitas, algunos más otros menos, tengo incluso uno con más de 30.000 visitas... y te aseguro que mi canal ahora mismo es bastante malo.
Se que de principio iba a perder dinero con este proyecto, sin embargo lo he pensado mirando un poco a largo plazo, ya que si se va subiendo contenido didáctico de calidad cada semana, el canal irá ganando en suscriptores y visitas, espero hasta el punto de como mínimo recuperar la inversión.

Un saludo!

#15
Proyectos / Canal de Youtube sobre Formación de videojuegos
25 de Enero de 2014, 11:12:46 AM
Buenas Caballeros,
quisiera hacer un sondeo general sobre una idea que lleva tiempo rondándome la cabeza, desde que cree el blog Toodaim, y desde que comencé a crear una serie de tutoriales sobre GameMaker, de la cual levo ya grabadas 3 horas y 33 minutos (http://www.youtube.com/playlist?list=PLwTkRS4ESjYzLPBZWE7KQzLRY856mtrI9).

La idea es la siguiente: Crear un canal de youtube de formación en el cual ofrecer tutoriales de un máximo de 10 minutos de duración cada uno (para no hacer las clases tediosas) sobre diferentes soft como Wings3d, Blender, GameMaker, Unity3d, sobre diseño de videojuegos en general, y sobre el comportamiento del hardware en videojuegos...
Bien sabido es que hay muchos cursos y tutoriales ya por youtube, pero como tengo la cabeza muy dura, se me había ocurrido la idea de hacer algo más distendido, más gamberro, y bueno, un poco más práctico que lo que suelo ver por ahí. Recordad, por ejemplo, el gran gimovj de Jove.

Dicha la idea, ahora el "plan de negocio. Obviamente yo no estoy cualificado para realizar todos los tutoriales, por lo que mi ideas es buscar gente que sepa y me ayude a realizar los videotutoriales y cursos, pagándoles. Por tanto, lo primero que quiero sondear por aquí es ¿cuánto más o menos seria un precio razonable para realizar cada vídeo de 10 minutos?, y de este modo poder hacer mis cuentas para ver que viabilidad tiene la cosa si coloco publicidad en el canal.
Cabe aclarar que el objetivo no sería obtener beneficio, sino que a la larga el canal no me cueste el dinero y sobretodo disponer de la formación necesaria para realizar videojuegos relativamente sencillos, desde la concepción de la idea hasta su compilación y exportación, pasando por todos los puntos intermedios.

Saludos,
Asensio.






Stratos es un servicio gratuito, cuyos costes se cubren en parte con la publicidad.
Por favor, desactiva el bloqueador de anuncios en esta web para ayudar a que siga adelante.
Muchísimas gracias.