Please note that the engine for any game is composed of many, sometimes independent from each other parts. This includes: main menu, game interface, loading levels, the physics, collision detection and more. Some parts are only necessary for any one genre. For example, in marine or aviation stimulant necessary and important module weather events, but in a real-time strategy or it is not needed at all, or is of secondary importance. Or, for example, shots with absolutely no need for football stimulator. Of the necessary parts and will assemble a computer game.
Use the programming language Delphi, particularly if you are taking the first steps in this field. Delphi is a development environment in Object Pascal, which is simple and flexible enough to be able to create it full computer games current level, and any genre, with a full three-dimensionality and the current level of graphics. In fact, the development environment is a matter of taste of each individual programmer. For example, MSVC++ , unlike Delphi generates faster code, but compile speed Delphi dozens, maybe even hundreds of times faster. Plus user-friendly interface and accurate pointing of the line of code containing the error.
Consider the example of a primitive graphics engine. It is still no multi-threading, counter references, smart pointers, priorities, resources and even the ability to upload has already become unnecessary structure. But the current capacity is enough to create a simple simple game. For a start this is already done.
You can instruct the engine to the initialization code was completely hidden within it, and also that the engine is loaded shaders and textures. And if the launch happens LostDevice, that he restored the right data. And yet it is desirable to be able to upload all the resources and complete all the work with graphics one function.
In the process of development, it is possible to save time by re-use of one game engine to create different games.