21 #define WIN32_LEAN_AND_MEAN 36 #define FAR_PLANE -80.0f 37 #define NEAR_PLANE 3.0f 39 #define FIELD_WIDTH 50.f 40 #define FIELD_HEIGHT 45.f 41 #define FIELD_DEPTH (NEAR_PLANE - FAR_PLANE + GAP) 44 #define STAR_GREEN 0.f 45 #define STAR_BLUE 0.10f 46 #define STAR_TAIL 0.9f 64 0.0f, 0.0f, 3.0f, 1.0f
149 BitBlt(hTextDC, 0, 0, bm.bmWidth, bm.bmHeight, hFileDC, 0, 0,
SRCCOPY);
163 for (Ptr32=(
DWORD *)lpBits,
i=0;
i < (
UINT)(bm.bmWidth * bm.bmHeight);
i++)
168 Color |= Alpha << 24;
416 ChangeDisplaySettings(
NULL, 0);
523 gluLookAt( 0.0, 0.0, 3.0, 0.0, 0.0, 0.0, 0.0, 2.0, 3.0 );
#define GL_CONSTANT_ATTENUATION
HGDIOBJ WINAPI GetStockObject(_In_ int)
_In_ CLIPOBJ _In_ BRUSHOBJ _In_ LONG _In_ LONG y1
#define GL_COLOR_BUFFER_BIT
GLAPI void GLAPIENTRY glClear(GLbitfield mask)
static HGLRC(WINAPI *pwglCreateContextAttribsARB)(HDC hDC
static VERTEX Vertex[MAX_STARS]
#define gluBuild2DMipmaps
BOOL WINAPI TranslateMessage(_In_ const MSG *)
GLubyte GLubyte GLubyte GLubyte w
BOOL WINAPI wglDeleteContext(HGLRC hglrc)
BITMAPINFOHEADER bmiHeader
GLAPI void GLAPIENTRY glMatrixMode(GLenum mode)
HDC WINAPI GetDC(_In_opt_ HWND)
GLAPI void GLAPIENTRY glVertex3f(GLfloat x, GLfloat y, GLfloat z)
GLAPI void GLAPIENTRY glBindTexture(GLenum target, GLuint texture)
GLAPI void GLAPIENTRY glPolygonMode(GLenum face, GLenum mode)
struct tagBITMAPINFOHEADER BITMAPINFOHEADER
TW_UINT32 TW_UINT16 TW_UINT16 MSG
_In_ CLIPOBJ _In_ BRUSHOBJ _In_ LONG x1
BOOL CALLBACK ScreenSaverConfigureDialog(HWND hDlg, UINT uMsg, WPARAM wParam, LPARAM lParam)
GLAPI void GLAPIENTRY glColorMaterial(GLenum face, GLenum mode)
GLAPI void GLAPIENTRY glRotatef(GLfloat angle, GLfloat x, GLfloat y, GLfloat z)
BOOL WINAPI UpdateWindow(_In_ HWND)
void __cdecl srand(_In_ unsigned int _Seed)
static LRESULT CALLBACK OnPaint(HWND hWnd, WPARAM wParam, LPARAM lParam)
static LRESULT CALLBACK OnSize(HWND hWnd, WPARAM wParam, LPARAM lParam)
HGDIOBJ WINAPI SelectObject(_In_ HDC, _In_ HGDIOBJ)
BOOL WINAPI DeleteObject(_In_ HGDIOBJ)
HDC WINAPI CreateCompatibleDC(_In_opt_ HDC hdc)
#define GL_PERSPECTIVE_CORRECTION_HINT
BOOL WINAPI ShowWindow(_In_ HWND, _In_ int)
GLAPI void GLAPIENTRY glGenTextures(GLsizei n, GLuint *textures)
GLAPI void GLAPIENTRY glColor4f(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha)
BOOL WINAPI SetPixelFormat(_In_ HDC, _In_ int, _In_ const PIXELFORMATDESCRIPTOR *)
GLAPI void GLAPIENTRY glClearColor(GLclampf red, GLclampf green, GLclampf blue, GLclampf alpha)
GLfloat GLfloat GLfloat GLfloat h
static HWND InitInstance(HINSTANCE hInst)
GLAPI void GLAPIENTRY glTexParameteri(GLenum target, GLenum pname, GLint param)
#define GL_FRONT_AND_BACK
_Must_inspect_result_ _In_ WDFDEVICE _In_ PWDF_DEVICE_POWER_POLICY_IDLE_SETTINGS Settings
_Check_return_ int __cdecl rand(void)
int WINAPI ReleaseDC(_In_opt_ HWND, _In_ HDC)
BOOL WINAPI RegisterDialogClasses(HANDLE hInst)
_STLP_DECLSPEC complex< float > _STLP_CALL cos(const complex< float > &)
GLAPI void GLAPIENTRY glBlendFunc(GLenum sfactor, GLenum dfactor)
#define DLG_SCRNSAVECONFIGURE
GLAPI void GLAPIENTRY glShadeModel(GLenum mode)
UINT_PTR WINAPI SetTimer(_In_opt_ HWND, _In_ UINT_PTR, _In_ UINT, _In_opt_ TIMERPROC)
#define GL_TEXTURE_MIN_FILTER
BOOL WINAPI SwapBuffers(HDC)
GLAPI void GLAPIENTRY glDisable(GLenum cap)
static const WCHAR szClassName[]
GLAPI void GLAPIENTRY glColor3ub(GLubyte red, GLubyte green, GLubyte blue)
#define GL_AMBIENT_AND_DIFFUSE
BOOL WINAPI ValidateRect(_In_opt_ HWND, _In_opt_ LPCRECT)
int WINAPI ChoosePixelFormat(_In_ HDC hdc, _In_ const PIXELFORMATDESCRIPTOR *ppfd)
BOOL WINAPI InvalidateRect(_In_opt_ HWND, _In_opt_ LPCRECT, _In_ BOOL)
GLAPI void GLAPIENTRY glLightf(GLenum light, GLenum pname, GLfloat param)
#define GL_COLOR_MATERIAL
TCHAR szTitle[MAX_LOADSTRING]
GLAPI void GLAPIENTRY glHint(GLenum target, GLenum mode)
static PIXELFORMATDESCRIPTOR pfd
BOOL WINAPI KillTimer(_In_opt_ HWND, _In_ UINT_PTR)
GLAPI void GLAPIENTRY glBegin(GLenum mode)
GLAPI void GLAPIENTRY glEnable(GLenum cap)
GLAPI void GLAPIENTRY glLightfv(GLenum light, GLenum pname, const GLfloat *params)
_In_ CLIPOBJ _In_ BRUSHOBJ _In_ LONG _In_ LONG _In_ LONG _In_ LONG y2
BOOL WINAPI wglMakeCurrent(HDC hdc, HGLRC hglrc)
static LRESULT CALLBACK OnCreate(HWND hWnd, WPARAM wParam, LPARAM lParam)
GLAPI void GLAPIENTRY glLightModeli(GLenum pname, GLint param)
GLAPI void GLAPIENTRY glPushMatrix(void)
#define GL_QUADRATIC_ATTENUATION
GLsizei GLenum const GLvoid GLsizei GLenum GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLint GLint GLint GLshort GLshort GLshort GLubyte GLubyte GLubyte GLuint GLuint GLuint GLushort GLushort GLushort GLbyte GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLfloat GLint GLint GLint GLint GLshort GLshort GLshort GLshort GLubyte GLubyte GLubyte GLubyte GLuint GLuint GLuint GLuint GLushort GLushort GLushort GLushort GLboolean const GLdouble const GLfloat const GLint const GLshort const GLbyte const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLdouble const GLfloat const GLfloat const GLint const GLint const GLshort const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort GLenum GLenum GLenum GLfloat GLenum GLint GLenum GLenum GLenum GLfloat GLenum GLenum GLint GLenum GLfloat GLenum GLint GLint GLushort GLenum GLenum GLfloat GLenum GLenum GLint GLfloat const GLubyte GLenum GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLint GLint GLsizei GLsizei GLint GLenum GLenum const GLvoid GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLenum const GLdouble GLenum GLenum const GLfloat GLenum GLenum const GLint GLsizei GLuint GLfloat GLuint GLbitfield GLfloat GLint GLuint GLboolean GLenum GLfloat GLenum GLbitfield GLenum GLfloat GLfloat GLint GLint const GLfloat GLenum GLfloat GLfloat GLint GLint GLfloat GLfloat GLint GLint const GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat const GLdouble const GLfloat const GLdouble const GLfloat GLint i
#define GL_TEXTURE_MAG_FILTER
BOOL WINAPI DeleteDC(_In_ HDC)
static float(__cdecl *square_half_float)(float x
GLAPI void GLAPIENTRY glViewport(GLint x, GLint y, GLsizei width, GLsizei height)
HBITMAP WINAPI CreateDIBSection(HDC hDC, CONST BITMAPINFO *BitmapInfo, UINT Usage, VOID **Bits, HANDLE hSection, DWORD dwOffset)
GLAPI void GLAPIENTRY glFlush(void)
static LRESULT CALLBACK OnDestroy(HWND hWnd, WPARAM wParam, LPARAM lParam)
GLAPI void GLAPIENTRY glPopMatrix(void)
#define LR_CREATEDIBSECTION
GLAPI void GLAPIENTRY glLoadIdentity(void)
LRESULT CALLBACK ScreenSaverProc(HWND hWnd, UINT uMsg, WPARAM wParam, LPARAM lParam)
GLAPI void GLAPIENTRY glTexCoord2f(GLfloat s, GLfloat t)
#define ROTATION_PERIODIC
_In_ CLIPOBJ _In_ BRUSHOBJ _In_ LONG _In_ LONG _In_ LONG x2
static GLfloat g_light_position[4]
GLAPI void GLAPIENTRY glTexImage2D(GLenum target, GLint level, GLint internalFormat, GLsizei width, GLsizei height, GLint border, GLenum format, GLenum type, const GLvoid *pixels)
#define WS_OVERLAPPEDWINDOW
#define GL_ONE_MINUS_SRC_ALPHA
struct tagPIXELFORMATDESCRIPTOR PIXELFORMATDESCRIPTOR
LRESULT WINAPI DefScreenSaverProc(HWND hWnd, UINT msg, WPARAM wParam, LPARAM lParam)
GLAPI void GLAPIENTRY glEnd(void)
#define GL_LINEAR_ATTENUATION
int WINAPI WinMain(HINSTANCE hInst, HINSTANCE hPrevInst, LPSTR cmdline, int cmdshow)
#define PFD_SUPPORT_OPENGL
#define PFD_DRAW_TO_WINDOW
__analysis_noreturn void WINAPI PostQuitMessage(_In_ int)
static HBITMAP CreateStarBitmap(HWND hWnd, HDC hDC)
HGLRC WINAPI wglCreateContext(HDC hdc)
static VOID NTAPI BitBlt(_In_ ULONG Left, _In_ ULONG Top, _In_ ULONG Width, _In_ ULONG Height, _In_reads_bytes_(Delta *Height) PUCHAR Buffer, _In_ ULONG BitsPerPixel, _In_ ULONG Delta)
static void InitGL(HBITMAP hStarTex)