مکعب چرخنده زیبا روی سطح شیشه ای – OpenGL

مکعب چرخنده زیبا روی سطح شیشه ای  –

قیمت :   ۹۵۰۰ تومان ( نه هزار و پانصد تومان)

رشته :

کامپیوتر

نوع فایل:

ویژوال استدیو – اپن جی ال

توضیحات:


توضیحات : 

در این که به زبان سی پلاس پلاس در محیط ویژوال استدیو  و با استفاده از توابع کتابخانه ای  opengl طراحی شده است ، شما یک مکعب زیبا را می بینید که روی سطح شیشه ای و آینه ای در حال چرخش است و تصویر آن روی سطح آینه ای نیز قابل مشاهده است و در جهات مختلف روی این سطح می چرخد .         

   

==========

رایگان فایل اجرایی این پروژه : 


==========

بخشهایی از سورس کد این پروژه : 

#include <windows.h>
#include <winuser.h>
#include <gl/gl.h>
#include <gl/glu.h>
#include “bitmap.h”
#include “HiResTimer.h”
#include <math.h>
#define WND_CLASS_NAME “OpenGL Window Class”
const int SCREEN_WIDTH = 800;
const int SCREEN_HEIGHT = 600;
const int SCREEN_BPP = 32;
const bool USE_FULLSCREEN = false;
const char *APP_TITLE = “OpenGL project”; //Title of the Window
const GLfloat DEGREES_PER_SECOND = 60.0f;
HDC g_hdc;
HGLRC g_hrc;
BOOL g_isFullscreen = TRUE;
BOOL g_isActive = TRUE;
HWND g_hwnd = NULL;
HINSTANCE g_hInstance;
GLuint g_marbleTexture;
GLuint g_cubeTexture;
float g_rotationAngle = 0.0;
CHiResTimer g_timer;
GLfloat g_lightPos[4] = {5.0, 5.0, 5.0, 1.0};
GLfloat g_shadowMatrix[16];
LRESULT CALLBACK WndProc(HWND hwnd, UINT message,

WPARAM wParam, LPARAM lParam);
BOOL SetupWindow(const char *title, int width,

int height, int bits, bool isFullscreen);
BOOL KillWindow();
GLvoid ResizeScene(GLsizei width, GLsizei height);
BOOL InitializeScene();
BOOL DisplayScene();
BOOL Cleanup();
void LoadTexture(char *filename, GLuint &texture);
void DrawSurface();
void DrawCube();
void SetShadowMatrix(GLfloat destMat[16],

float lightPos[4], float plane[4]);
int WINAPI WinMain(HINSTANCE g_hInstance, HINSTANCE hPrevInstance,

LPSTR lpCmdLine, int nShowCmd)
{
MSG msg;
BOOL isDone;
if (SetupWindow(APP_TITLE, SCREEN_WIDTH, SCREEN_HEIGHT, SCREEN_BPP, USE_FULLSCREEN))
isDone = FALSE;
else
isDone = TRUE;
while (!isDone)
{
if(PeekMessage(&msg, g_hwnd, NULL, NULL, PM_REMOVE))
{
if (msg.message == WM_QUIT)
{
isDone = TRUE;
}
else
{
TranslateMessage(&msg);
DispatchMessage(&msg);
}
}
if (g_isActive)
{
DisplayScene();
SwapBuffers(g_hdc);
}
}
Cleanup();
KillWindow();
return msg.wParam;
}
LRESULT CALLBACK WndProc(HWND hwnd,

UINT message, WPARAM wParam, LPARAM lParam)
{
switch(message)
{
case WM_ACTIVATE:
{
if (!HIWORD(wParam))
{
g_isActive = TRUE;
}
else
{
g_isActive=FALSE;
}

return 0;
}
case WM_SYSCOMMAND:
{
switch (wParam)
{
case SC_SCREENSAVE:
case SC_MONITORPOWER:
return 0;
default:
break;
}
} break;

case WM_CLOSE:
{
PostQuitMessage(0);

return 0;
}
case WM_SIZE:
{

ResizeScene(LOWORD(lParam), HIWORD(lParam));
return 0;
}

case WM_CHAR:
{
switch (toupper(wParam))
{
case VK_ESCAPE:
{
PostQuitMessage(0);
return 0;
}
default:
break;
};
} break;
default:
break;
}
return (DefWindowProc(hwnd, message, wParam, lParam));
}
BOOL SetupWindow(const char *title, int width, int height,

int bits, bool isFullscreen)
{
g_isFullscreen = isFullscreen;
g_hInstance = GetModuleHandle(NULL);
WNDCLASSEX wc;
wc.cbSize = sizeof(WNDCLASSEX);
wc.style = CS_HREDRAW | CS_VREDRAW | CS_OWNDC;
wc.lpfnWndProc = WndProc;
wc.cbClsExtra = 0;
wc.cbWndExtra = 0;
wc.hInstance = g_hInstance;
wc.hIcon = LoadIcon(NULL, IDI_APPLICATION);
wc.hIconSm = LoadIcon(NULL, IDI_WINLOGO);
wc.hCursor = LoadCursor(NULL, IDC_ARROW);
wc.hbrBackground = NULL;
wc.lpszMenuName = NULL;
wc.lpszClassName = WND_CLASS_NAME;
if (!RegisterClassEx(&wc))
{
MessageBox(NULL,”Unable to register the window class”, “Error”, MB_OK | MB_ICONEXCLAMATION);
return FALSE;
}
if (g_isFullscreen)
{

 ==========

دانلود کامل پروژه همراه با فایل سورس کد برنامه و فایل اجرایی آن
در تمامی ساعات شبانه روز >> پرداخت آنلاین و دانلود آنلاین پروژه

 

پذیرش و انجام سفارشات پروژه های شما
شماره تماس پشتیبانی سایت : ۰۹۳۹۲۷۶۱۶۳۰



توجه مهم :

*دوست عزیز در صورت نداشتن رمز پویا یا قطع بودن درگاه بانکی ، لطفا نام پروژه درخواستی خود را جهت هماهنگی برای دریافت شماره کارت واریزی و دریافت لینک دانلود، به واتساپ پشتیبانی سایت  ۰۹۳۹۲۷۶۱۶۳۰  ارسال کنید *(از ساعت ۸ الی ۲۳)

Related posts

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *