Создаю шутер от первого лица, пули создаю как GameObjectы , не как RayCastы.
Есть строка:
GameObject BulletObj = Instantiate(Bullet, BulletSpawnPoint.position, Quaternion.identity) as GameObject;
Префаб Bullet с нулевой позицией, BulletSpawnPoint стоит там, где надо и никуда не съезжает , но пуля создаётся немного выше места, где должна бы , при этом периодически появляется там ,где надо, а периодически ещё выше , чем обычно (ровно в два раза выше обычно высокого места). Если персонаж идёт - пули снова на своём верном месте , по мере поворота камеры вверх пули будут появляться всё ближе к нужному месту (если смотреть точно в небо - пули будут там ,где и должны). Вся проблема была в скрипте с автоматом , а скрипт пистолета почти дублирует его, поэтому я решил осмотреть разницу - её нет, продублировал сам пистолет - и появилась точно та же проблема (возможно как-то случайно пофиксил её на пистолете раньше и забыл, но смысл в том, что существуют два идентичных пистолета, при этом один багованный, а один - нет). Какие-то манипуляции с положением автомата относительно персонажа не помогли, перемещение BulletSpawnPoint относительно автомата тоже не повлияли. Все строки, кроме instantiate закомментировал (чтобы пуля просто оставалась на месте, где создалась) - всё равно появляется выше. Учитывая все эти факты, что может быть проблемой и что стоит попробовать?