Recently I started learning DirectX , and I had a question.
To write software using direct access to a video device, DirectX SDK required. This package contains libraries with descriptions of functions, structures, data types, as well as header files included in the program being created. Further, the written code is converted by the compiler into an object and is packed into an executable file or a dynamic library.
So, the question itself: Why DirecX need to run the executable file (the same games), although for its creation the DirectX SDK was needed? And what exactly is DirectX different from DirectX SDK ?

I apologize in advance if something is not correctly written.

    1 answer 1

    sdk is a set for the programmer that he could create applications. But the end user needs a small set of files with sdk (usually called run time or the like) for it to work.

    For example. The programmer needs a dll, a header file and documentation for it to write. And also some auxiliary utilities. This will be sdk, and the user usually only needs a dll.

    • That is, it is theoretically possible that the creation of such an application would be enough for ordinary DirectX ? If for example you do not need documentation, you already know everything, and utilities are not useful. - BlackOverlord
    • 2
      not. will not be enough. In order to compile, you will need header files (at least). In normal DirectX there are none (they are not needed there). Of course, you can write them with your hands, but you have to guess the signatures and the like. - KoVadim