El rincón de Unity

YaW

#300 en la vista de Project, ve a Scenes y abre (doble click) la escena que hay.

1 2 respuestas
RatNuShock

#300 Prueba ir al menu "Window -> Asset Store", en la ventana que te abre (igual tarda) en la parte de arriba a la izquierda busca un icono que es una bandeja con una flecha hacia abajo. En el listado que aparece busca el proyecto de ejemplo y luego seguir lo que dice 301.

#301 Yo diría que lo ha descargado solo...

1 1 respuesta
Czhincksx

Vale ya está, muchas gracias. Intentaba abrir un proyecto, no sabía que tenía que ser desde la escena.

#301 #302

1
Ronso

Esto... llamarme tonto pero, como hago para ver todos los "objetos" de la escena actual? Es decir tengo un par de objetos en la pestaña scene pero me he pasado con el zoom out y ahora si quiero acercarme pués se queda bloquedo en un tope, vengo de 3DS y con darle a la Z pues te lo cuadra todo en el viewport pero aquí nidea t_t

PD: si sabeís de algún sitio para atajo teclado tambien estaría más que bien ;)

1 respuesta
tarzanete

#304 F

1
PiTiFiNi

Alguno sabe como cambiar el punto de pivote a un sprite? Es una tontería pero ayudaría la hostia.

2 respuestas
The-Force

#306 Voy a responder un poco a ciegas... Anidandolo en otro Transform con el origen desplazado.

#330 xD no tengo ni idea de 2D con sprites

1 respuesta
RatNuShock

#306 Sino recuerdo mal, en el video de presentación, y en el que explican el proyecto demo de la 4.3 al abrir el sprite editor te dejaba recolocar el pivote.

1 1 respuesta
YaW

Una duda, que todavía no me entero muy bien de que va esto.

Tengo un cubo, le he añadido dos animaciones, una para saltar a la derecha y otra para saltar a la izquierda según el botón que pulses. Todo va perfecto.

Ahora hago que el cubo se vaya moviendo, cuando avanza un poco pulso una tecla y hace la animación. La animación se hace pero el problema es que no coge la posición actual del cubo, si no que la resetea. Tiene sentido realmente porque la animación está definida con el x=0, y=0, z=0 y tal pero no se como cambiarlo para que la animación sea relativa a la posición del personaje.

Así lo tengo montado:

Y este es el script:

public class Player : MonoBehaviour {

public float moveSpeed;

void Start () {

}

void Update () {
	transform.Translate (0f, 0f, moveSpeed * Time.deltaTime);

	if (Input.GetButtonDown("MoveRight") && transform.localPosition.x < 1f) {
		animation.Play("PlayerJumpRight");
	} else if (Input.GetButtonDown("MoveLeft") && transform.localPosition.x > -1f) {
		animation.Play("PlayerJumpLeft");
	}
}
}
1 respuesta
Potito

#309 Puedes aplicar un offset a tu posicion en LateUpdate o hacer child al cubo del objeto q mueves por la pantalla.

YaW

He creado un gameobject vacio y lo he hecho el padre del Player. Al player le he dejado la parte del script del movimiento y al parent le he puesto las animaciones y el script para reproducirlas.

Ahora funciona "bien", pero si hago dos animaciones seguidas pasa lo mismo. Por ejemplo salto a la derecha desde el X=0 al X=1, luego salto a la izquierda y en vez de hacer X=1 al X=0 lo hace del X=0 al X=-1 :(

2 respuestas
13500

no entiendo muy bien, quieres desplazar al player de x=0 a x=1 y viceversa, usando animaciones?

RatNuShock

#311 Si aplicas las animaciones al padre, el hijo (tu player) no necesita el script de movimiento.

EDIT: Vamos, en teoría es lo que dice todo el mundo de las animaciones de Unity, que funcionan en world space y que para movimientos relativos, con mover el padre vale.

Potito

#311 Todos tus problemas se van a resolver si en vez de cubos usas los nuevos sprites del 4.3 y la maquina de estados del animator

YaW

Creo que me he explicado mal. Tengo un player y quiero hacer dos cosas:

a) Movimiento automático hacia delante (eje Z). Igual que un runner tipo Temple Run por ejemplo.
b) Salto hacia derecha e izquierda. Tengo tres "carriles", si estoy en el central y le doy a la flecha derecha, tiene que hacer una animación y saltar al carril derecho. No hago un translate directamente porque quiero hacer un saltito del cubo.

Entonces lo que hago es que por ejemplo el carril izquierdo está en el X=-1, el central en el X=0 y el derecho en el X=1 y el player empieza en el carril central. Pulso derecha y se va al derecho, esto va bien. Ahora pulso izquierda y en lugar de ir al central, se va teletransporta al central y hace la animación para ir al izquierdo.

Igual es una tonteria porque realmente no tengo ni puta idea de Unity y simplemente estoy toqueteando un poco por aprender xD

2 respuestas
RatNuShock

#315 Las animaciones no son mi fuerte... Si ves que todo falla, siempre puedes hacer un cambio de carril suavizado (Lerp de la x) no es tan bonico pero oye, para ir tirando...

Si dices que estás empezando yo pasaba de animaciones.

Pseudo-churro-código:

public class ChurroMovimiento : MonoBlabla {
    public float speed = 2f;

void Update() {
    float ratio = 1f - (1f/speed); // ratio es: 0.0 ~ 1.0
    if (Input.GetKeyDown(KeyCode.A) && transform.position.x > -1) {
        Vector3.Lerp(transform.position, new Vector3(-1f, 0f, 0f), ratio);
    } else if (Input.GetKeyDown(KeyCode.D) && transform.position.x < 1) {
        Vector3.Lerp(transform.position, new Vector3(1f, 0f, 0f), ratio);
    }
}
}

EDIT: Se puede simplificar esto...

public class ChurroMovimiento : MonoBlabla {
    public float speed = 2f;

void Update() {
    float x = 0;
    if (Input.GetKeyDown(KeyCode.A) && transform.position.x > -1) {
        x = -1f;
    } else if (Input.GetKeyDown(KeyCode.D) && transform.position.x < 1) {
        x = 1f;
    }
    float ratio = 1f - (1f/speed); // ratio es: 0.0 ~ 1.0
    Vector3.Lerp(transform.position, new Vector3(x, 0f, 0f), ratio);
}
}

EDIT2: En ambos eejemplos faltaría el Translate para la Z... pero bueno, eso lo pones tu xD

1 respuesta
Potito

#315 Lo pones mas sencillo

Solo tienes q hacer 4 animaciones

2 para cambiar de carril central a izquierda y micerveza
2 para cambiar de carril de central a derecha y viceversa

Empleando la animacion correspondiente o lo q surja

1 respuesta
YaW

#316 voy a probarlo, aunque si quieres hacer una animación más complicada con giros o lo que sea se complicaría también bastante el código. La idea es usar lo que tiene Unity xD

#317 Si, eso he hecho para apañarlo, pero me parece una cutrada. Si tengo 10.000 carriles? xD

1 4 respuestas
Potito

#318 Entonces tienes q hacer lo q te dije del offset en lateupdate

13500

#318 creo que estas confundido. Las animaciones no deben usarse para desplazar al jugador. Para eso están los scripts. Las animaciones son para como bien dices, hacer q el jugador gire, o se incline, o encoja las piernas al saltar, por ejemplo....

1
Selbryn

#318 Voy a intentar reproducir lo que quieres en un momento a ver si lo consigo. Actualmente estoy utilizando este tipo de animaciones(Animation) para objetos estáticos. Pero para objetos que se mueven como el player lo muevo por script + Animator.

Selbryn

#318 Según he leído es algo así lo que quieres hacer no?

https://dl.dropboxusercontent.com/u/53581538/Public.html

Supongamos que una vez que llegas a un carril lateral no te dejase seguir saltando en esa dirección.

#323 Toma aquí esta por si quieres echarle un vistazo https://mega.co.nz/#!74AFQZbK!P_9B4GiJt8CaPU7P8C8qeiOqBD1MaMNgn1gFH9BqynU. Esta hecho con animations, una para cada lado.

2 1 respuesta
YaW

#322 Si, básicamente es eso :D

#322 Gracias, lo probaré que la semana que viene que ahora estamos un poco a tope :3

1 respuesta
qunram

Unite 2013 Showreel, para inspirarnos y ver q se puede hacer con Unity3D :)

http://www.youtube.com/watch?v=7ws28v0-1o4

3 2 respuestas
13500

#324 ese Satellite Reign promete y mucho :qq:

1 respuesta
qunram

#325 a mi se me cae la baba con todos. Si no hubiera salido escarmentado de los grupos en los que he participado, diría de juntarnos para hacer algo "grande".

1
The-Force

No sabia que el Assault Android Cactus estuviera hecho en unity, que sorpresa al verlo en el video de #324. +1 a Unity por tal numero de objetos, particulas y destruccion en pantalla

JackSparow

NO tengo la versión Pro de Unity, y tengo problemas al intentar hacer un ligthmap de un modelo importado

Como veis, me hace la sombra del cubo, pero no de la pared.
El cubo y el modelo de la pared (al igual que sus hijos), son "static".

Hay que hacer algo especial para hacer lightmaps de modelos importados?
Alguien de aquí le ha pasado algo similar? :qq:

#329 Solucionado: Cierto, era eso, muchas gracias :muac:
Lo gracioso es que anteriormente, me fijé también en esa opción, pero no le di importancia xDD Saludos!

1 1 respuesta
RatNuShock

#328 Creo recordar que en las opciones del modelo hay un checkbox para eso: Generate Lightmap UVs. ¿Puede ser? Me suena MUCHO que eso es fundamental, a parte de marcar como estático.

2 1 respuesta
PiTiFiNi

#308 eso es! Al seleccionar la textura/sprite hay que ir a "Sprite mode" y cambiar de "Single" a "Multiple" para que te de la opción de entrar al "Sprite editor" y ahí poder mover el pivote donde quieras. Gracias a ti y a #307 por molestarse también ;)

1 1 respuesta
Tema cerrado