У меня есть игра, в которой игровой объект зафиксирован на сцене этим кодом.
backgroundObject.transform.position = Camera.main.ScreenToWorldPoint(new Vector3(Screen.width / 2 + 150, (Screen.height / 2) + 35, 196));
Я также использую адаптивный шаблон simmer.io webgl. К сожалению, когда моя сцена перезагружается, игровой объект перемещается в другое место, где он был. Как решить эту проблему?
--- Обновление ---
Start()
{
CenterGrid();
InitializeBG();
}
private void InstantiateBG() {
if (gridX % 2 != 0 && gridY % 2 == 0) {
backgroundObject = Instantiate (background, new Vector3 ((tile.transform.localScale.x * spacing)
* (gridX / 2), 1, (tile.transform.localScale.z * spacing)
* (gridY / 2) - (tile.transform.localScale.z * spacing)), Quaternion.identity) as GameObject;
} else if (gridX % 2 == 0 && gridY % 2 != 0) {
backgroundObject = Instantiate (background, new Vector3 ((tile.transform.localScale.x * spacing) * (gridX / 2)
- (tile.transform.localScale.x * spacing), 1, (tile.transform.localScale.z * spacing) * (gridY / 2)), Quaternion.identity) as GameObject;
} else {
backgroundObject = Instantiate(background, new Vector3 ((tile.transform.localScale.x * spacing) * (gridX / 2) -
(tile.transform.localScale.x * spacing), 1, (tile.transform.localScale.z * spacing) * (gridY / 2) - (tile.transform.localScale.z * spacing)), Quaternion.identity) as GameObject;
}
backgroundObject.transform.eulerAngles = new Vector3(180, 0, 0);
backgroundObject.transform.localScale = new Vector3(((tile.transform.localScale.x * spacing) * gridX), 1, ((tile.transform.localScale.x * spacing) * gridY));
}
private void CenterBG() {
backgroundObject.transform.position = Camera.main.ScreenToWorldPoint(new Vector3(Screen.width / 2 + 150, (Screen.height / 2) + 40, 200));
}