Hola quisiera algun ejemplo de esto
#1

Hola chicos quisiera pedir un ejemplo de, GetVehicleRotationQuat()

por favor.
Reply
#2

Es una funcion con la cual hay pocos ejemplos y lo mejor que puedes hacer es jugar con ella para entender mejor su funcionamiento, aun asi te sugiero utilizar la version "simplificada" que te dejo al final del post para que no se te complique tanto y no tengas que ponerte a leer sobre Quaternions.

Aca te dejo un ejemplo basico de la funcion nativa para saber si un auto esta al derecho o al revez:

pawn Код:
stock IsVehicleFliped(vehicleid)
{
    new Float:A[4];
    GetVehicleRotationQuat(vehicleid, A[0], A[1], A[2], A[3]);
    if((Abs(A[0])-0.5) > 0)
        return 1;
    return 0;
}

forward Float:Abs(Float:value);
public Float:Abs(Float:value)
{
    if(value>=0)
        return value;
    new tmp[12];
    format(tmp, 12, "%f", value);
    tmp[0] = '0';
    return floatstr(tmp);
}

Version "simplificada":
pawn Код:
stock GetVehicleRot(vehicleid, &Float:x, &Float:y, &Float:z)
{
    static Float:qW, Float:qX, Float:qY, Float:qZ;
    GetVehicleRotationQuat(vehicleid, qW, qX, qY, qZ);
    x = atan2(2*((quat_x*quat_y)+(quat_w+quat_z)),(quat_w*quat_w)+(quat_x*quat_x)-(quat_y*quat_y)-(quat_z*quat_z));
    y = atan2(2*((quat_y*quat_z)+(quat_w*quat_x)),(quat_w*quat_w)-(quat_x*quat_x)-(quat_y*quat_y)+(quat_z*quat_z));
    z = asin(-2*((quat_x*quat_z)+(quat_w*quat_y)));
    return 1;
}
Reply
#3

the_chaoz Gracias seсor chaoz, y si no hay muchos ejemplos, probare ty!
Reply
#4

Si vi un vнdeo de una montaсa rusa invertida, y cuando el veh estaba boca abajo, invertнa la gravedad.
Reply
#5

mira este Babul lo hizo

[ame]http://www.youtube.com/watch?v=uVGa9z1uJCA&feature=channel&list=UL[/ame]
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)