An Iraq war veteran has been charged with murdering ex-US Navy Seal sniper Chris Kyle and his neighbour in Texas.
Eddie Ray Routh, 25, is accused of the shootings at a gun range on Saturday.
Mr Kyle and his neighbour Chad Littlefield were reported to have been trying to help Mr Routh deal with post-traumatic stress disorder (PTSD).
Mr Kyle, 38, wrote the 2012 bestseller American Sniper, about the psychology of a sniper, in which he said that he had killed more than 250 people.
He served four tours of duty in Iraq and was decorated for bravery.
The gunman opened fire at about 15:30 local time (21:30 GMT) at the Rough Creek Lodge range, then fled in a pick-up truck belonging to one of the victims, local media reported.
Erath County Sheriff Tommy Bryant said Mr Routh then travelled to his sister's home, telling her what had happened before leaving.
She called the police and Mr Routh was arrested near his home in Lancaster, Texas, more than 70 miles (110 km) from the scene of the shooting, several hours later.
Sheriff Bryant said the motive for the killings was unclear, but noted "it's my understanding that the suspect may have been suffering from some type of mental illness from being in the military himself".
Travis Cox, director of a non-profit organisation Mr Kyle had helped found, told the Associated Press news agency that Mr Routh was suffering from PTSD and that Mr Kyle and Mr Littlefield were trying to help him.
"Chris died doing what he filled his heart with passion - serving soldiers struggling with the fight to overcome PTSD," Mr Cox said.
Mr Littlefield was Mr Kyle's "work-out buddy" and volunteered his time with the veterans, Mr Cox said.
Scott McEwen, who co-authored the book with Kyle, said: "It just comes as a shock and it's staggering to think that after all Chris has been through, that this is how he meets his end, because there are so many ways he could have been killed."
Mr Kyle, a former cowboy, is regarded as the most prolific sniper the US has ever seen.
Official Pentagon figures say he killed 160 people, but he estimated the total was 255.
According to military intelligence, he was nicknamed "the Devil" by Iraqi insurgents, who put a $20,000 (£13,000) bounty on his head.
He appeared to show little remorse for his victims.
"Every person I killed I strongly believe that they were bad," he told the BBC in an interview a year ago.
"When I do go face God there is going to be lots of things I will have to account for, but killing any of those people is not one of them."