2017-01-29 3 views
2

Ich habe einige Tools geschrieben, die in Unity zum Bearbeiten von Ebenen in meinem Projekt verwendet werden können. Aber wenn man das Projekt auf einem Mac öffnet, scheint sich etwas anders zu verhalten. Getting die Koordinaten innerhalb der Szene scheint in der gleichen Art und Weise zu arbeiten, aber wenn ichUnity ScreenToWorldPoint verhält sich anders auf Mac (im Vergleich zu PC)?

camera.ScreenToWorldPoint (posInScene)

unter Windows rufen die richtige Position zurückgeführt, sondern auf dem Mac gibt es etwas ganz anderes. Irgendwelche Ideen, was könnte der Grund dafür sein? Oder wie könnte ich das beheben? Der Code wird in OnSceneGUI ausgeführt. Natürlich, wenn Dinge für einen Mac anders geschrieben werden müssen, dann mache ich die Code-Kompilierungsplattform abhängig. Den Grund für den Unterschied zu verstehen wäre natürlich auch nett.

Eine möglicherweise verwandte Sache, die ich bemerkt habe, ist, dass camera.rect immer camera.rect (x: 0.00, y: 0.00, Breite: 1.00, Höhe: 1.00) auf PC ist, aber aus irgendeinem seltsamen Grund auf einem Mac für "Layout" -Ereignisse ist es (x: 0,00, y: -0,99, Breite: 2,00, Höhe: 2,00). Könnte jemand das erklären? : 0

Antwort

1

Ich weiß nicht, was die Ursache dieses Problems ist, aber die Problemumgehung besteht darin, HandleUtility.GUIPointToWorldRay anstelle von camera.ScreenToWorldPoint zu verwenden.

Verwandte Themen