How to prepare models for game engines?

I’m modeling assets for fun. And I want to post them on some marketplace sites, such as TurboSquid. My question is, how to prepare the models so that they work in Unity, Unreal and Cryengine? And the Blender Game Engine too of course. I have some experience with modeling for architectural visualisation (high detail, high poly), but not yet for game assets. What do I need to know, what to remember etc. when modeling game assets? Ultimately which file formats to use? (I read that Unity can read .blend files actually). I also learned lately, that the poly/edge count matters a lot, and i.e. that when I make a sharp edge in Blender, that it counts for 2 edges, same with UV seams etc. That’s what I’m asking for, such technical requirements. Thanks.

low poly is a good idea

.obj files are supported in unity, unreal and cryengine (showed by a quick google search, could be wrong though)

Also if u bake from a high poly save that model as well. I’ve lost cool models cause of texture aritfacts that i couldnt fix cause of lack of a high poly to bake the normals from again.

Textures can also affect game speed. Similar to using a lot of polys, using a lot of different textures or high resolution textures adds up to slower speeds because the game engine has more calculations to perform with every frame. Optimally, each texture file should have equal width and height, which should be even numbers, preferably 128x128, 256x256, 512x512, etc.

++ of course. its second nature. forgot to say. lol