سورس حرکت هلیکوپتر با OpenGL به زبان C++

helicopter simulator in opengl using cpp 5023 سورس حرکت هلیکوپتر با OpenGL به زبان C++

سورس حرکت هلیکوپتر با OpenGL به زبان C++

در این بخش سورس حرکت هلیکوپتر با OpenGL را برای شما آماده کرده ایم که با استفاده از زبان برنامه نویسی C++ نوشته شده است. شما با مشاهده این سورس کد می توانید نحوه رسم اشکال مختلف، چگونگی حرکت دادن آن ها، چرخاندن اشکال و همچنین نحوه اپدیت کردن صفحه نمایش با کتابخانه OpenGL را یاد بگیرد. در ادامه می توانید توضیحات و تصاویر مربوط به این برنامه را مشاهده کنید.

توضیحات پروژه

این پروژه به صورت Console است و زمانی که کاربر آن را اجرا می کند، یک پنجره OpenGL باز می شود. در ابتدا یک هلیکوپتر در وسط صفحه نمایش قرار دارد و کاربر می تواند با استفاده از کلید های W، A، D و S هلیکوپتر را حرکت دهد.

کلید هایی که برای کنترل هلیکوپتر تعریف شده اند:

  • کلید A: به منظور حرکت دادن هلیکوپتر به سمت جلو استفاده می شود.
  • کلید D: به منظور حرکت دادن هلیکوپتر به سمت عقب استفاده می شود.
  • کلید W: به منظور حرکت دادن هلیکوپتر به سمت بالا استفاده می شود.
  • کلید S: به منظور حرکت دادن هلیکوپتر به سمت پایین استفاده می شود.
  • کلید R: این کلید هم برای ریستارت کردن استفاده می شود. یعنی هلیکوپتر را در وسط صفحه ثابت نگه می دارد.

توابعی که در این پروژه استفاده شده اند عبارت اند از:

  • تابع restart: که به منظور ریستارت کردن برنامه استفاده می شود و باعث می شود تا هلیکوپتر را در وسط صفحه ثابت بایستد.
  • Display: که برای نمایش اشیاء مختلف در صفحه نمایش می شود.
  • تابع keys: که به منظور تشخیص کلید های فشرده شده توسط کاربر استفاده می شود.
  • تابع right: که برای حرکت دادن هلیکوپتر به سمت راست استفاده می شود.
  • تابع left: که برای حرکت دادن هلیکوپتر به سمت چپ استفاده می شود.
  • تابع up: که برای حرکت دادن هلیکوپتر به سمت بالا استفاده می شود.
  • تابع down: که برای حرکت دادن هلیکوپتر به سمت پایین استفاده می شود.
  • تابع sky: که برای رسم آسمان یا همان رنگ پس زمینه استفاده می شود.

helicopter simulator in opengl using cpp 5023 1 سورس حرکت هلیکوپتر با OpenGL به زبان C++

قسمت های از سورس پروژه:

#include <stdio.h>
#include <math.h>
#include <gl/glut.h>
static GLfloat spin = 0, i = 0, j = 0;
void sky()
{
	glBegin(GL_POLYGON);
	glColor3f(0, 0.6, 0.8);
	glVertex2f(0, 400);
	glVertex2f(650, 350);
	glColor3f(1.0, 1.0, 1.0);
	glVertex2f(600, 300);
	glVertex2f(0, 100);
	glEnd();
}
void display()
{
	glClear(GL_COLOR_BUFFER_BIT);
	sky();
	drawheli();
	glFlush();
	glutSwapBuffers();
}
void myinit()
{
	glClearColor(1.0, 1.0, 1.0, 1.0);
	glColor3f(1.0, 1.0, 1.0);
	glMatrixMode(GL_PROJECTION);
	glLoadIdentity();
	glOrtho(0.0, 600.0, 0.0, 350, 0.0, 250.0);
	glMatrixMode(GL_MODELVIEW);
}
void up()				//MOVE UP
{
	j++;
	glutPostRedisplay();
}
void down()				//MOVE DOWN
{
	j--;
	glutPostRedisplay();
}
void left()				//MOVE LEFT
{
	i--;
	glutPostRedisplay();
}
void restart()				//MOVE RIGHT
{
	i = j = 0;
	i--;
	glutPostRedisplay();
}
void right()				//MOVE RIGHT
{
	i++;
	glutPostRedisplay();
}
void main(int argc, char** argv)
{
	glutInit(&argc, argv);
	glutInitDisplayMode(GLUT_DOUBLE | GLUT_RGB);
	glutInitWindowSize(800, 500);
	glutInitWindowPosition(350, 150);
	glutCreateWindow("SourceSara.Com | Helicopter | w-UP a-FRONT s-DOWN r-RESTART (d-BACK)");
	glutDisplayFunc(display);
	glutKeyboardFunc(keys);
	myinit();
	glutMainLoop();
}

نکات

  • این پروژه در نرم افزار Visual Studio نسخه ۲۰۱۵ تست شده است و به خوبی کار می کند.
  • به منظور اجرای پروژه های OpenGL باید آن را بر روی IDE خود نصب کنید.

نوشته سورس حرکت هلیکوپتر با OpenGL به زبان C++ اولین بار در سورس سرا - آموزش برنامه نویسی. پدیدار شد.

درباره نویسنده: administrator

ممکن است دوست داشته باشید

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

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