How to create 3D game environment


I’m at the beginning of programming 3d games (simple games). Now I have a little problem:
How could I generate easy a good environment?

At the moment I could load and texture a heightmap and load a skybox, but what is about trees, houses, walls and bushes?

I’ve read something about loading wavefront object but is this the normal way to include static 3d objects in a environment? And how could I do this in plain c (I’ve to do the little school-project in c)? I could load obj files with glm but there are several problems with adding multiple textures (trunk and leaves of a tree)…

I hope you can help me.
Best wishes

Search the web there are lots of free 3d engines with source that you can look at