В настоящее время я работаю над sprite-движком на C++. У меня есть абстрактный класс IEngine с виртуальной функцией init_api. Это принимает пустоту *.void * as unknown variable type
// Initialise the engines' API
// api_params - void* to api parameters for initalisation
// hWnd - window handle
virtual bool init_api(void* api_params, HWND hWnd) = 0;
У меня тогда есть встроенный в DirectX класс двигателя CEngineDX. Затем он передает api_params в D3DPRESENT_PARAMETERS *, поэтому его можно использовать для инициализации DirectX.
// Cast api_params to a D3DPRESENT_PARAMETERS
D3DPRESENT_PARAMETERS* presentParams = NULL;
presentParams = reinterpret_cast< D3DPRESENT_PARAMETERS* >(api_params);
Я очень доволен этой установкой, но хотел бы получить некоторые другие программисты просматривать на этом «решения», если вам нравится.
Приветствия за ответы!
Карлы
Спасибо за ваш ввод. :П –