Ways of implementing NFT lending

Is there any way to implement lending NFT’s on Ethereum? I basically want to allow gamers to allow to lend their ERC721’s to other gamers for a period of time, and if a certain amount in ETH is not paid, the NFT can be reclaimed by the original wallet. Also, I assume most of the games require a signature from the NFT holder’s address to play the game. So, technically, if the signature problem is solved, my initial problem may be solved. Any hints towards a possible implementation also would work.