PDA

نسخه کامل مشاهده نسخه کامل : کار با open GL



z.seifadini
23-03-2015, 13:23
سلام دوستان
کسی ابنجا OPEN GL کار کرده که یاد بده؟
ممنون

god of war 2
24-03-2015, 00:59
سلام. براي يادگيري opengl شما نياز ب يك كتاب داريد. اما اگر سوالي داريد بفرماييد شايد بتونيم راهمنماييتون كنيم.

e4lyas
24-03-2015, 01:52
چه سوالي داريد ؟
در قسمت برنامه نويسيش يا مفهوم ها ؟

z.seifadini
24-03-2015, 10:14
من تاحالا کار نکردم تازه میخوام شروع کنم میخواستم بدونم برای شروع چه توابعی لازمن؟
این ارور واسه چیه؟ error C1083: Cannot open include file: 'GL/glut.h': No such file or directory
من تمام فایل های glut رو سرجای خودشون گذاشتم مشکلش چیه؟ ممنون

z.seifadini
24-03-2015, 10:15
تو این سایت کسی از مقدماتی یاد نداده؟

god of war 2
24-03-2015, 18:52
برای شروع شما باید یک پنجره + context با توجه به ورژن OpenGL ک میخواهید ایجاد کنید که بتونید ترسیماتتونو داخلش انجام بدید.
کتابخانه هایی مثل glut , glfw , ... دو مورد بالا رو برای شما بصورت اماده (در قالب چند تابع ساده) فراهم میکنن, تا اینجای کار لزوما ارتباط زیادی به OpenGL نداره یعنی بیشتر از API های خود سیستم عامل استفاده میشه.
اما برای شروع کار با OpenGL (بعد از دو مرحله بالا) شما باید کار با راس ها (Vertex) رو یاد بگیرید که البته با توجه به ورژن OpenGL توابع و روش ها متفاوت هست و پیشنهاد میکنم از ورژن های قدیمی OpenGL (نسخه های پایینتر از 3) استفاده نکنید چون تقریبا منسوخ شده و کاربردی نیست.
و در آخر پیشنهاد میکنم حتما از یک کتاب کمک بگیرید. (به عنوان مثال OpenGL Programming Guide تقریبا تمامه بخشهای OpenGL رو پوشش میده به همراه جزئیات و توضیح)

z.seifadini
25-03-2015, 13:48
کتاب انگلیسی دارم اگه میشه فارسی بگین

god of war 2
25-03-2015, 18:42
متاسفانه من نديدم هنوز كتاب فارسي مناسبي براي opengl و سعي كنيد اصلا دنبال منابع فارسي نباشيد چون يا موجود نيست يا اينكه خيلي قديمي و منسوخ شده هست.

z.seifadini
25-03-2015, 18:57
برنامه ی من< include <GL/glut.h> # را ساپورت نمیکنه ولی <GL/GLU.h> , <glut.h> را ساپورت میکنه چرا اینجوره؟ الان این کدا نوشتم // vertex.cpp : Defines the entry point for the console application.
//

#include ([ برای مشاهده لینک ، لطفا با نام کاربری خود وارد شوید یا ثبت نام کنید ]) "stdafx.h"
#include ([ برای مشاهده لینک ، لطفا با نام کاربری خود وارد شوید یا ثبت نام کنید ]) <GL/GLU.h>
#include ([ برای مشاهده لینک ، لطفا با نام کاربری خود وارد شوید یا ثبت نام کنید ]) <glut.h>
#include ([ برای مشاهده لینک ، لطفا با نام کاربری خود وارد شوید یا ثبت نام کنید ]) <GL/GL.h>

int _tmain(int argc, _TCHAR* argv[])
{
glutInit( int argc, _TCHAR* argv[]);
glutInitDisplayMode(GLUT_RGB | GLUT_SINGLE);
glutInitWindowSize(500, 500); glutInitWindowPosition(0,0);
glutCreateWindow("simple OpenGL example");
glutDisplayFunc(mydisplay);
glutMainLoop();


return 0;
}

void mydisplay(){
glClearColor(0.0f, 0.0f, 1.0f, 0.0f);
glClear(GL_COLOR_BUFFER_BIT);
glBegin(GL_POLYGON);

glVertex2f(-0.5, -0.5);
glVertex2f(-0.5, 0.5);
glVertex2f(0.5, 0.5);
glVertex2f(0.5, -0.5);
glEnd();
glFlush();
}
زیر تموم خط های my display
ارور میده فک میکنم بخاطر اینه که < include <GL/glut.h> #را ننوشتم ولی وقتی هم مینویسم ارور میده

god of war 2
25-03-2015, 22:54
ببینید شما وقتی میخواید از یک کتابخانه (برای مثال glut) استفاده کنید باید ابتدا سرفایل های اونو ب IDE تون که من حدس میزنم از Visual Studio استفاده میکنید معرفی کنید.
برای معرفی کردن سرفایلها باید آدرس محل سرفایلهارو تو قسمت Directories معرفی کنید. طبق عکس
[ برای مشاهده لینک ، لطفا با نام کاربری خود وارد شوید یا ثبت نام کنید ]

z.seifadini
26-03-2015, 14:59
مشکلش همینه فقط؟ باز که فرقی نکرد خسته شدم واقعا

L͠øneWolf
26-03-2015, 15:37
برای دانشگاه میخواین یا برای یادگیری؟
این کدی که گذاشتین از رده خارجه.

z.seifadini
27-03-2015, 13:48
برای دانشگاه میخوام یاد بگیرم چون استادمون پروژه گرافیکی میده مثلا بازی پینگ و پونگ اینا با گرافیک میده
این کدا همینجوری زدم ببینم اجرا میده یا نه که مشکل داره