public override void OnEpisodeBegin() { goalCheck.ResetGame(); Vector3 new_pos = new Vector3(initial_position.x, initial_position.y, initial_position.z); float noise = AgentHelper.NextGaussian(0, 5); // Debug.Log(noise); new_pos.x += noise; noise = AgentHelper.NextGaussian(0, 3); new_pos.z += noise; this.transform.position = new_pos; this.self_rBody.velocity = Vector3.zero; // Initial rotation woth noise this.transform.rotation = initial_rotation; var euler = this.transform.eulerAngles; euler.y += Random.Range(-20, 20); this.transform.eulerAngles = euler; }