Is this a valid orbit?

I’m trying to create a “gravity simulator” and I just used Newton’s gravity equasion without the constant and this is what I’m getting:

Code running on the planet object:

using UnityEngine;

public class gravity : MonoBehaviour {
    private float mass1;
    private float mass2;
    public GameObject Sun;
    private Vector2 gravityDirection;
    private Vector3 oldPos;
    private int frameCount;
    public float startForceMultiplier = 50;

    void Start()
    {
        frameCount = 0;
        GetComponent<Rigidbody2D>().AddForce(Vector2.up * startForceMultiplier);
    }

    void FixedUpdate()
    {
        mass1 = Sun.GetComponent<Rigidbody2D>().mass;
        //Debug.Log(mass1);
        mass2 = GetComponent<Rigidbody2D>().mass;
        //Debug.Log(mass2);
        gravityDirection = Sun.transform.position - transform.position;
        GetComponent<Rigidbody2D>().AddForce(gravityDirection * ((mass1*mass2) / Mathf.Pow(gravityDirection.magnitude, 2)));
        //frameCount++;
    }
}

My question is : Is this a physically accurate orbit?
If not : How should I change my approach?

I am a little concerned about this orbit because Kepler’s first law states planets move in an elyptical orbit.

OK so I found the solution myself: you have to use gravityDirection.normalized