The younger Panas was shot in the chest and was taken Temple University Hospital, where he died at 11:33 p.m., according to police.
The officer, trying to break up the fight, identified himself as a police officer, and fired his weapon a single time after being physically pushed and attacked by several males, according to police spokesman Lt. Frank Vanore.
The fight had already started, and Panas and some friends were just walking by, when one of them got punched, prompting them to join the fracas, friends told 6ABC.
Panas fell to the ground fighting with a son of the officer, who lives on the street, but they were getting up before the officer drew his gun, one of the friends told Fox29.
The officer identified himself but didn't show a badge, friends told Fox29.
One friend, Troy Tortis, told 6ABC that the officer started "pointing the gun at everybody."
"He put it to my chest and my face. He put it to another kid's face," Tortis said.
"Everybody ran except my son," the senior Panas told 6ABC. "My son said, 'You ain't going to shoot me.' He said, 'Oh, no?' Boom."
The Homicide Unit, Internal Affairs and the District Attorney's Office are investigating, Vanore said.
The off-duty officer, who was not identified by police, had been assigned to the Civil Affairs Unit, which polices such things as demonstrations and labor disputes, he said. The officer has been placed on modified duty while the investigation is under way.
Contact staff writer Peter Mucha at 215-854-4342 or firstname.lastname@example.org.