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 - francoe1

#1
Scripting / Distancia y posiciones
Marzo 30, 2020, 06:25:46 PM
1 - Necesitas el punto de referencia que usarás para rotar, esto puedes hacerlo con un Transform.
 
2 - Necesitas la dirección normalizada desde el punto de referencia y el mouse.
 
3 - Sumas la posición del punto de referencia más la dirección multiplicada por la distancia deseada
 

public class ObjectRotation : MonoBehaviour
{
    [SerializeField]
    private Transform m_point;
    [SerializeField]
    private float m_distance = .3f;
   
    private Vector3 GetNewPosition(Vector3 mousePosition)
    {
        Vector3 dir = m_point - mousePosition;
        dir.Normalize();        
        return m_point + dir * m_distance;
    }
}

 
 
#2
Scripting / Distancia y posiciones
Marzo 29, 2020, 10:51:17 PM
@AngelFG Te aconsejo normalizar la diferencia entre mouse y player
#3
Explicación perfecta! 
 
Felicitaciones, muy buen aporte!
#4
Scripting / Error Unity WebGL
Marzo 26, 2020, 08:03:29 PM
Que version de Unity estás utilizando?
 
De que manera estás guardando los datos? 
#5
Scripting / Distancia y posiciones
Marzo 26, 2020, 08:00:49 PM
Y podrías tomar la dirección y multiplicar por la distancia. 
 



   
       
   
   
      dir=(a.position - b.position).normalized
   
   
      c.position=a.position + dir*1.3f
   
   
       
   

[/quote]
 
 
#6
Scripting / Distancia y posiciones
Marzo 26, 2020, 12:54:20 PM
Tenes dos objetos y queres situar algo exactamente al centro de estos dos ?
 



   
      Objeto_CENTRO = (Objeto_A.position + Objeto_B.position) / 2
   

[/quote]
 
 
#7
Scripting / Mostrar button desactivado.
Marzo 25, 2020, 10:14:00 AM
El componente button contiene un booleano que se llama Interactable justamente para esta situación.
#8
Interfaz / Orden de Renderizado (SOLUCIONADO)
Marzo 24, 2020, 03:53:22 PM
@Jhonatan00_00, Claramente te entendi de ante manos, por eso te comentaba que para el efecto en 3D deberias utilizar Post Procesado, digamos que un objeto 3D es eso y nada más, no se puede comportar como 2D por que si, si bien se puede desarrollar shaders para que las caras de atrás no se rendericen y encontrar una forma de renderizar todo lo no afectado por el alpha entonces podrias crear algo similar. Si queres lograr este efecto de modificar el Culling y Z-depth para obtener un alpha por shaders deberias aprender a utilizar shaders, la guia oficial esta bastante bien para los conceptos basicos. https://docs.unity3d.com/Manual/ShadersOverview.html
 
Contenido de interés para realizar shaders.
 
http://wiki.unity3d.com/index.php?title=AlphaVertexLitZ
 
https://github.com/andydbc/HologramShader
 
https://forum.unity.com/threads/transparent-depth-shader-good-for-ghosts.149511/
 
https://forum.unity.com/threads/question-about-zwrite-and-transparency.529054/
 
 
#9
Scripting / Rutinas concatenadas
Marzo 24, 2020, 03:37:37 PM
La implementación de una corrutina para esta situación no tiene mucho sentido, deberias utilizar simplemente comparaciones dentro de la función Update.
 

private int m_state { get; set; } = 0;
private void Update()
{
    if (Input.GetMouseButtonUp(0) && m_state == 0)
        m_state = 1;
       
    if (Input.GetMouseButtonDown(0) && m_state == 1)
        m_state = 2;        
       
    if (m_state == 1)
    {
        if (PunchController.transform.position != mouse.transform.position)
        {
            PunchController.transform.position = Vector3.MoveTowards(PunchController.transform.position, mouse.transform.position,1f);
        }
        else
        {
            m_state = 2;
        }
    }    
   
    if (m_state == 2)
    {
        ReturnPosition();
        m_state = 0;
    }
}

 
Lo que te comentaba @iRobb es que la función StartCoroutine retorna un objeto Coroutine el cual se debería utilizar para detener dicha coroutine, tambien se puede almacenar el objeto IEnumerator como una variable para iniciar y detener la corrutina siempre con la misma referencia.
 
Ejemplo almacenando el enumerador dentro de una variable para ser utilizado de forma regular.
 

private IEnumerator m_corrutine { get; set; }
private void Start()
{
    m_corrutine = IEShot();
}
private void Update()
{  
    if (Input.GetMouseButtonDown(0))
        StartCoroutine(m_corrutine);
       
    if (Input.GetMouseButtonUp(0))        
        StopCoroutine(m_corrutine);  
}
private IEnumerator IEShot()
{
    yield return new WaitForSeconds(2);
}

 
 
#10
Interfaz / Orden de Renderizado (SOLUCIONADO)
Marzo 23, 2020, 11:27:04 PM
Para qué objeto aparezca progresivamente deberias modificar el alpha del material.
#11
Scripting / Spawn al ritmo de la musica
Marzo 23, 2020, 09:03:02 PM


  1.    Podrias tomar el valor de la frecuencia actual, y definir en que momento es el pulso


  2.    Podrias buscar el algoritmo que se utiliza para buscar el BEAT de una pista.


  3.    Podrias asignar manualmente el valor de BEAT de la pista


  4.    Podrias asignar manualmente el valor del BEAT en función del TIEMPO de la PISTA.


Con eso tenes para buscar alguna solución.
 
 
#12
Scripting / Forzar por código evento PointerUp
Marzo 23, 2020, 09:00:52 PM
Dentro del componente (script) que controla el Joystick deberias tener un metodo que reinicie la posición del Joystick, entonces al momento de abrir el dialogo, desactivas el Joystick y llamas esa funcion.
#13
Problemas y Sugerencias / Contraseña en untySpain
Marzo 23, 2020, 03:36:22 PM
@pioj entonces fue pura imaginación mía! Jajajaja
#14
Interfaz / Orden de Renderizado (SOLUCIONADO)
Marzo 22, 2020, 11:25:56 PM
Para este tipo de cosas necesitas POST-EFFECTS
 
Te recomiendo sigas esto como para tener una idea 
 


   
eature=oembed">

 
 
#15
Cita de: nomoregames date=1584907339Si lo que buscas es algo como que apunte hacia el puntero de el ratón (puedes sustituir el puntero por una coordenada cualquiera) mírate  esta duda que poste hace tiempo
   
   
      allí encontraras la solución y una explicación muy detallada de su funcionamiento
   
   
      Espero serte de ayuda   
   


Muchachito, donde esta el LINK?