Some years ago I bought a 3D model at turbosquid and included it in my 3D scenario. Then I released the 3D scenario as a runnable jar file (Java).
The 3D model is likely copyrighted and the 3D artist could (but most likely won't) claim copyright. He got paid and never stated anything.
Now I wonder, hypothetically, if it's possible to "protect" the 3D model from being extracted since it is now technically possible to find the 3D model at turbosquid and if you want it you could just download my jar file and extract the model and get it free of charge which would be infringement.
Is there a way? (I don't have a legal problem and I'm mostly just wondering if it's impossible and how these cases usually are solved.)
The commonly accepted way (since this is a problem for almost anyone buying game-ready models) is to use a binary format when distributing. The clause is usually there to avoid people repackaging and selling the artists work. If it's in a binary format it's much harder to reverse-engineer.
If you use pure java, here are some options:
Make a converter for the format, serialize the model and save it as a java object. I've used this method for collada. Saves a lot of time reading the file too.
If you use launch4j, I think there's an option to include the .jar in the .exe file?
I suppose that you technically adhere to the license below if you use a password-protected and possibly encrypted zip file and hide the password in the code (since it would require reverse engineering to extract the password).
From the Royalty Free License of TurboSquid (bold my emphasis):
If you are redistributing something that includes actual 3D product files, the TurboSquid files must be part of a larger creation and not in an open format that others can be downloaded. Most game engines, such as Unity and Unreal, handle this automatically. In general, to prevent your end-users from obtaining TurboSquid products, you should use proprietary formats that cannot be extracted, exported, or decompiled without reverse engineering.