2Dgame. My blender file is always facing in the Z axis no matter what I do. Come on someone out there has to know

Hi I created an arrow in blender but when my player shoots it the arrow is facing in the Z Axis. My game is a 2D game and runs on the X and Y axes. I’ve tried turning it in blender and when I drag it on to my scene it is changed but when I instantiate its always faced away from me in the Z axis when my character faces right and towards me when my player faces left.

if(!crouching && Input.GetKeyDown("p"))
{
	Instantiate(shot, shooter.position, shooter.rotation);
}

shooter.rotation is what does it. With this code the arrow always flies the right way now I’m gonna have to change that.

Wrap it in another game object,set the arrows local rotation beneath that wrapping object,and use that as your prefab to instantiate instead.

This maybe a longshot but try Clicking on your model in Unity in the project panel and see if any of your axes are off in the inspector . Then correct them in blender by setting the model’s position to what zero is in Unity. Blender and Unity do things differently with transforms.

you can instantiate it like this

Instantiate(shot,shooter.position,Quaternion.Euler(0,90,0)); // change the rotation value to suit.

but really, it’s probably better to remake your model :slight_smile:

Ok so I made a brand new model in blender. I made it face left on the x axis which equals right in unity. That fixed it however I refuse to believe this is the only way. I guess fixing it through script would be the other solution. Good thing it was a simple test blend I can’t imagine how someone who spent countless hours in blender would feel.