بازی پینگ پنگ با زبان سی پلاس پلاس به همراه سورس کد
در این پست سورس کد بازی پینگ پنگ Ping Pong را که با زبان سی پلاس پلاس در محیط ویژوال استودیو به صورت گرافیگی و با استفاده از کتابخانه OpenGL نوشته شده است را برای شما کاربران عزیز آماده کرده ایم.
بازی پینگ پنگ که به صورت دو نفری پیاده سازی شده است که هر بازی کن باید توپ در حال حرکت را بزند تا اجازه برخورد آن را به دیوار را ندهد، اگر برخورد اتفاق بیافتد به امتیاز بازیکن مقابل یک واحد اضافه خواهد شد.
در ادامه می توانید فیلم خروجی و قسمت های از بازی پینگ پنگ با زبان سی پلاس پلاس را مشاهده کنید.
در صفحه دو مستطیل سفید توپر قرار دارد که با استفاده از کلید های عددی قابل حرکت در جهت های بالا و پایین می باشد و با استفاده از آن می توانید توپ در حال حرکت را به سمت بازیکن مقابل انتقال بدید تا با دیوار سمت شما برخورد نکند.
قسمت های از تکه کد بازی پینگ پنگ با OpenGL :
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 | <span style="color: #ff0000;">جهت دریافت کد کامل این برنامه لطفا از قسمت خرید محصول اقدام کنید</span> void display() { glClear(GL_COLOR_BUFFER_BIT); drawString(GLUT_BITMAP_HELVETICA_18, "Player1:", 10, 20); itoa(player1score, buffer, 10); drawString(GLUT_BITMAP_HELVETICA_18, buffer, 10, 40); drawString(GLUT_BITMAP_HELVETICA_18, "Player2:", 560, 20); itoa(player2score, buffer, 10); drawString(GLUT_BITMAP_HELVETICA_18, buffer, 560, 40); //middle line for(int i = 0; i <= 50; i++) { glBegin(GL_QUADS); glColor3f(1, 1, 1); glVertex2f (320 - 2, i * 15 - 5); glVertex2f (320 - 2, i * 15 + 5); glVertex2f (320 + 2, i * 15 + 5); glVertex2f (320 + 2, i * 15 - 5); glEnd(); } drawpaddle1(); drawpaddle2(); //moveball(); drawball(); glutSwapBuffers(); } void reshape(int x, int y) { glViewport(0, 0, x, y); glMatrixMode(GL_PROJECTION); glLoadIdentity(); glOrtho(0, 640, 480, 0, 0, 1); glMatrixMode(GL_MODELVIEW); } void main(int argc, char **argv) { initgame(); glutInit(&argc,argv); glutInitDisplayMode(GLUT_RGB|GLUT_DOUBLE); glutInitWindowPosition(100,100); glutInitWindowSize(640,480); glutCreateWindow("Game Ping Pong"); glutReshapeFunc(reshape); glutDisplayFunc(display); glutIgnoreKeyRepeat(1); glutKeyboardFunc(KeyDownPress); glutKeyboardUpFunc(KeyUpPress); glutIdleFunc(display); glutTimerFunc(33, updategame, 0); //call update function after 33 milliseconds //glutFullScreen(); glutMainLoop(); } |
سلام این پروژرو می تونید با سی شارپ بنویسید ؟
سلام این کدها به صورت خط به خط توضیح داده شده یا نه ؟
نه به صورت خط به خط نیست ولی کد ها خیلی واضع هستند و اول هر تابع توضیح نوشته شده است
سی پلاس پلاس که شی گراس باید با کلاسها نوشته بشه چرا این پروژه با تابع نوشته شده؟