Diskuze: Unity3D pohyb myší

C# .NET .NET (C# a Visual Basic) Unity3D pohyb myší American English version English version

Avatar
rwn
Člen
Avatar
rwn:

Zdravím, v Unity spíš začínám, takže je to možná banální problém, který si nedovedu jen uvědomit. V podstatě, kdybych všechno co se netýká problému opomenul, tak by to mohlo vypadat takto: mám klasický GameObject, který má nastavený Sprite Renderer (prostě je to jen obrázek) a chtěl bych, aby se pohyboval přesně na pozici myši/doteku prstu. Takže jsem tomuto GameObjectu přidal Script a jeho Update() nastavil takto:

void Update ()
{
        Vector2 pos = new Vector2 ();
        pos.x = Input.mousePosition.x - Screen.width/2;
        pos.y = Input.mousePosition.y - Screen.height/2;
        transform.position = pos;
}

Řekl bych, že logicky, by to mělo fungovat správně, protože GameObejt se souřadnicuje od středu Screenu a pozice myši od dolního rohu. Ale pro různé velikosti Screenú, se pozice objektu vychyluje od pozice myši. Přesněji přesně uprostřed obrazovky, je pozice objektu a myši totožná, ale při pohybu jakýmkoliv směrem se začíná pozice objektu nerovnoměrně vychylovat směrem pryč. Nenapadá někoho co dělám špatně? :)

Odpovědět 16.1.2015 8:14
Co můžeš naprogramovat dnes, neodkládej na zítřek.
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 1 zpráv z 1.