These tutorials focus mainly on OpenGL, Win32 programming and the ODE physics engine. OpenGL has moved on to great heights and I don't cover the newest features but cover all of the basic concepts you will need with working example programs.

 

Working with the Win32 API is a great way to get to the heart of Windows and is just as relevant today as ever before. Whereas ODE has been marginalized as hardware accelerated physics becomes more common.

 

Games and graphics utilities can be made quickly and easily using game engines like Unity so this and Linux development in general will be the focus of my next tutorials.    

  

 

FunctionLibrary
OaBuildVersion oleaut32
OACreateTypeLib2 oleaut32
ObjectCloseAuditAlarm advapi32
ObjectDeleteAuditAlarm advapi32
ObjectOpenAuditAlarm advapi32
ObjectPrivilegeAuditAlarm advapi32
ODBCCPlApplet odbccp32
ODBCGetTryWaitValue odbc32
ODBCSetTryWaitValue odbc32
ODBCSharedPerfMon odbc32
ODBCSharedTraceFlag odbc32
ODBCSharedVSFlag odbc32
OemKeyScan user32
OemToChar user32
OemToCharBuff user32
OffsetClipRgn gdi32
OffsetPenData pkpd32
OffsetRect user32
OffsetRgn gdi32
OffsetViewportOrgEx gdi32
OffsetWindowOrgEx gdi32
OleBuildVersion ole32
OleConvertIStorageToOLESTREAM ole32
OleConvertIStorageToOLESTREAMEx ole32
OleConvertOLESTREAMToIStorage ole32
OleConvertOLESTREAMToIStorageEx ole32
OleCreate ole32
OleCreateDefaultHandler ole32
OleCreateEmbeddingHelper ole32
OleCreateEx ole32
OleCreateFontIndirect olepro32
OleCreateFontIndirect oleaut32
OleCreateFromData ole32
OleCreateFromDataEx ole32
OleCreateFromFile ole32
OleCreateFromFileEx ole32
OleCreateLink ole32
OleCreateLinkEx ole32
OleCreateLinkFromData ole32
OleCreateLinkFromDataEx ole32
OleCreateLinkToFile ole32
OleCreateLinkToFileEx ole32
OleCreateMenuDescriptor ole32
OleCreatePictureIndirect olepro32
OleCreatePictureIndirect oleaut32
OleCreatePropertyFrame olepro32
OleCreatePropertyFrame oleaut32
OleCreatePropertyFrameIndirect olepro32
OleCreatePropertyFrameIndirect oleaut32
OleCreateStaticFromData ole32
OleDestroyMenuDescriptor ole32
OleDoAutoConvert ole32
OleDraw ole32
OleDuplicateData ole32
OleFlushClipboard ole32
OleGetAutoConvert ole32
OleGetClipboard ole32
OleGetIconOfClass ole32
OleGetIconOfFile ole32
OleIconToCursor olepro32
OleIconToCursor oleaut32
OleInitialize ole32
OleIsCurrentClipboard ole32
OleIsRunning ole32
OleLoad ole32
OleLoadFromStream ole32
OleLoadPicture olepro32
OleLoadPicture oleaut32
OleLoadPictureEx oleaut32
OleLoadPictureFile oleaut32
OleLoadPictureFileEx oleaut32
OleLoadPicturePath oleaut32
OleLockRunning ole32
OleMetafilePictFromIconAndLabel ole32
OleNoteObjectVisible ole32
OleQueryCreateFromData ole32
OleQueryLinkFromData ole32
OleRegEnumFormatEtc ole32
OleRegEnumVerbs ole32
OleRegGetMiscStatus ole32
OleRegGetUserType ole32
OleRun ole32
OleSave ole32
OleSavePictureFile oleaut32
OleSaveToStream ole32
OleSetAutoConvert ole32
OleSetClipboard ole32
OleSetContainedObject ole32
OleSetMenuDescriptor ole32
OleTranslateAccelerator ole32
OleTranslateColor olepro32
OleTranslateColor oleaut32
OleUIAddVerbMenu oledlg
OleUIAddVerbMenu mfcuia32
OleUIBusy oledlg
OleUIBusy mfcuia32
OleUICanConvertOrActivateAs oledlg
OleUICanConvertOrActivateAs mfcuia32
OleUIChangeIcon oledlg
OleUIChangeIcon mfcuia32
OleUIChangeSource oledlg
OleUIChangeSource mfcuia32
OleUIConvert oledlg
OleUIConvert mfcuia32
OleUIEditLinks oledlg
OleUIEditLinks mfcuia32
OleUIInsertObject oledlg
OleUIInsertObject mfcuia32
OleUIObjectProperties oledlg
OleUIObjectProperties mfcuia32
OleUIPasteSpecial oledlg
OleUIPasteSpecial mfcuia32
OleUIPromptUser oledlg
OleUIPromptUser mfcuia32
OleUIUpdateLinks oledlg
OleUIUpdateLinks mfcuia32
OleUninitialize ole32
OpenAs_RunDLL shell32
OpenBackupEventLog advapi32
OpenClipboard user32
OpenDesktop user32
OpenDriver winmm
OpenEvent kernel32
OpenEventLog advapi32
OpenFile kernel32
OpenFileMapping kernel32
OpenIcon user32
OpenIMsgOnIStg@44 mapi32
OpenIMsgSession@12 mapi32
OpenInputDesktop user32
OpenMutex kernel32
OpenODBCPerfData odbc32
OpenOrCreateStream ole32
OpenProcess kernel32
OpenProcessToken advapi32
OpenProfileUserMapping kernel32
OpenSCManager advapi32
OpenSemaphore kernel32
OpenService advapi32
OpenStreamOnFile mapi32
OpenStreamOnFile@24 mapi32
OpenThreadToken advapi32
OpenTnefStream mapi32
OpenTnefStream@28 mapi32
OpenTnefStreamEx mapi32
OpenTnefStreamEx@32 mapi32
OpenURL url
OpenVxDHandle kernel32
OpenWaitableTimer kernel32
OpenWindowStation user32
OutputDebugString kernel32
OaBuildVersion oleaut32
OACreateTypeLib2 oleaut32
ObjectCloseAuditAlarm advapi32
ObjectDeleteAuditAlarm advapi32
ObjectOpenAuditAlarm advapi32
ObjectPrivilegeAuditAlarm advapi32
ODBCCPlApplet odbccp32
ODBCGetTryWaitValue odbc32
ODBCSetTryWaitValue odbc32
ODBCSharedPerfMon odbc32
ODBCSharedTraceFlag odbc32
ODBCSharedVSFlag odbc32
OemKeyScan user32
OemToChar user32
OemToCharBuff user32
OffsetClipRgn gdi32
OffsetPenData pkpd32
OffsetRect user32
OffsetRgn gdi32
OffsetViewportOrgEx gdi32
OffsetWindowOrgEx gdi32
OleBuildVersion ole32
OleConvertIStorageToOLESTREAM ole32
OleConvertIStorageToOLESTREAMEx ole32
OleConvertOLESTREAMToIStorage ole32
OleConvertOLESTREAMToIStorageEx ole32
OleCreate ole32
OleCreateDefaultHandler ole32
OleCreateEmbeddingHelper ole32
OleCreateEx ole32
OleCreateFontIndirect olepro32
OleCreateFontIndirect oleaut32
OleCreateFromData ole32
OleCreateFromDataEx ole32
OleCreateFromFile ole32
OleCreateFromFileEx ole32
OleCreateLink ole32
OleCreateLinkEx ole32
OleCreateLinkFromData ole32
OleCreateLinkFromDataEx ole32
OleCreateLinkToFile ole32
OleCreateLinkToFileEx ole32
OleCreateMenuDescriptor ole32
OleCreatePictureIndirect olepro32
OleCreatePictureIndirect oleaut32
OleCreatePropertyFrame olepro32
OleCreatePropertyFrame oleaut32
OleCreatePropertyFrameIndirect olepro32
OleCreatePropertyFrameIndirect oleaut32
OleCreateStaticFromData ole32
OleDestroyMenuDescriptor ole32
OleDoAutoConvert ole32
OleDraw ole32
OleDuplicateData ole32
OleFlushClipboard ole32
OleGetAutoConvert ole32
OleGetClipboard ole32
OleGetIconOfClass ole32
OleGetIconOfFile ole32
OleIconToCursor olepro32
OleIconToCursor oleaut32
OleInitialize ole32
OleIsCurrentClipboard ole32
OleIsRunning ole32
OleLoad ole32
OleLoadFromStream ole32
OleLoadPicture olepro32
OleLoadPicture oleaut32
OleLoadPictureEx oleaut32
OleLoadPictureFile oleaut32
OleLoadPictureFileEx oleaut32
OleLoadPicturePath oleaut32
OleLockRunning ole32
OleMetafilePictFromIconAndLabel ole32
OleNoteObjectVisible ole32
OleQueryCreateFromData ole32
OleQueryLinkFromData ole32
OleRegEnumFormatEtc ole32
OleRegEnumVerbs ole32
OleRegGetMiscStatus ole32
OleRegGetUserType ole32
OleRun ole32
OleSave ole32
OleSavePictureFile oleaut32
OleSaveToStream ole32
OleSetAutoConvert ole32
OleSetClipboard ole32
OleSetContainedObject ole32
OleSetMenuDescriptor ole32
OleTranslateAccelerator ole32
OleTranslateColor olepro32
OleTranslateColor oleaut32
OleUIAddVerbMenu oledlg
OleUIAddVerbMenu mfcuia32
OleUIBusy oledlg
OleUIBusy mfcuia32
OleUICanConvertOrActivateAs oledlg
OleUICanConvertOrActivateAs mfcuia32
OleUIChangeIcon oledlg
OleUIChangeIcon mfcuia32
OleUIChangeSource oledlg
OleUIChangeSource mfcuia32
OleUIConvert oledlg
OleUIConvert mfcuia32
OleUIEditLinks oledlg
OleUIEditLinks mfcuia32
OleUIInsertObject oledlg
OleUIInsertObject mfcuia32
OleUIObjectProperties oledlg
OleUIObjectProperties mfcuia32
OleUIPasteSpecial oledlg
OleUIPasteSpecial mfcuia32
OleUIPromptUser oledlg
OleUIPromptUser mfcuia32
OleUIUpdateLinks oledlg
OleUIUpdateLinks mfcuia32
OleUninitialize ole32
OpenAs_RunDLL shell32
OpenBackupEventLog advapi32
OpenClipboard user32
OpenDesktop user32
OpenDriver winmm
OpenEvent kernel32
OpenEventLog advapi32
OpenFile kernel32
OpenFileMapping kernel32
OpenIcon user32
OpenIMsgOnIStg@44 mapi32
OpenIMsgSession@12 mapi32
OpenInputDesktop user32
OpenMutex kernel32
OpenODBCPerfData odbc32
OpenOrCreateStream ole32
OpenProcess kernel32
OpenProcessToken advapi32
OpenProfileUserMapping kernel32
OpenSCManager advapi32
OpenSemaphore kernel32
OpenService advapi32
OpenStreamOnFile mapi32
OpenStreamOnFile@24 mapi32
OpenThreadToken advapi32
OpenTnefStream mapi32
OpenTnefStream@28 mapi32
OpenTnefStreamEx mapi32
OpenTnefStreamEx@32 mapi32
OpenURL url
OpenVxDHandle kernel32
OpenWaitableTimer kernel32
OpenWindowStation user32
OutputDebugString kernel32