PDA

برای دیدن نسخه كامل اینجا را كلیك كنید : OpenGL



negin17h
2011/6/20, 06:41 AM
با سلام
کلیه موارد مرتبط با بحث OpenGL در این تاپيک قرار داده می شود :gol:

negin17h
2011/6/20, 06:43 AM
The OpenGLR Graphics System : A Specification

negin17h
2011/6/20, 06:53 AM
The OpenGL® Shading Language

negin17h
2011/6/20, 06:54 AM
OpenGL Addision Wisley

salome
2011/8/16, 01:13 PM
سلام به همه

این یه کتاب مفیده که اگه کسی بخواد openGL یاد بگیره خیلی کمکش میکنه چون قدم به قدم آموزش داده

OpenGL Programming Guide - Fifth Edition

psp2004
2011/12/14, 07:15 PM
دوستان من واسه رسم خط این کد را گیر آوردم

#include < gl/glut.h ><="">
void display(void)
{
/* clear all pixels */
glClear (GL_COLOR_BUFFER_BIT);
/* draw white polygon (rectangle) with corners at
* (0.25, 0.25, 0.0) and (0.75, 0.75, 0.0) */
glColor3f (1.0, 1.0, 1.0);
glBegin(GL_LINES);
glVertex3f (0.25, 0.25, 0.0);
glVertex3f (0.75, 0.25, 0.0);
glVertex3f (0.75, 0.75, 0.0);
glVertex3f (0.25, 0.75, 0.0);
glEnd();
/* don't wait! start processing buffered OpenGL routines */
glFlush ();
}
void init (void)
{
/* select clearing color */
glClearColor (0.0, 0.0, 0.0, 0.0);
/* initialize viewing values */
glMatrixMode(GL_PROJECTION);
glLoadIdentity();
glOrtho(0.0, 1.0, 0.0, 1.0, -1.0, 1.0);
} /*
* Declare initial window size, position, and display mode
* (single buffer and RGBA). Open window with "hello"
* in its title bar. Call initialization routines.
* Register callback function to display graphics.
* Enter main loop and process events.
*/
int main(int argc, char** argv)
{
glutInit(&argc, argv);
glutInitDisplayMode (GLUT_SINGLE | GLUT_RGB);
glutInitWindowSize (250, 250);
glutInitWindowPosition (100, 100);
glutCreateWindow ("hello");
init ();
glutDisplayFunc(display);
glutMainLoop();
return 0; /* ANSI C requires main to return int. */
}
تو این برنامه باید تو خود تابع display دو تا نقطه را داده باشیم تا رسم کنه .. حالا اگه من بخوام نقاطم رو به عنوان پارامتر بگیره و رسم کنه باید چی کار کنم ؟؟؟ ... مثلا اگه بخام تو یه حلقه هی دو نقطه بگیره و رسم کنه ؟؟؟ تابع خاصی داره؟؟ ...

Kaveh.Sadeghi
2011/12/26, 10:05 AM
دوستان سلام
احتیاج فوری به کمک شما دوستان عزیز دارم لطفا متن زیر رو با حوصله بخونید

salam.
yek tasvire voroodi ba format jpg ke shamele sheklhaye mosalas va dayere va yek chand zeli(polygon) k daraye pas zamineye sefid va dore ashkal range meshki bashad.karbar yeki az ashkale tasvir ra entekhab mikonad va ba mouse ruye yek noghteye delkhah az shekle entekhabi entekhab mikonad k an shekl shoroo be por shodan (rang shodan) mikonad va dar nahayat tasvire khorooji k namayesh dade mishavad an shekle entekhabi ra rangi (por shode) namayesh midahad.
b zabane c++ va ba Opengl bayad neveshte shavad.2ta algoritme por kardane ashkale hendesi boundery filled va scanline filled hastan. az tarighe poshte (stack) ham tashkhis midahad k shekl b range meshki reside k joze shekl nist va agar dar mohite sefid rang bashad joze shekl ast vabayad dar poshte gharar girad ta por shavad(rang shavad) albatte b jaye stack mishe az tabee bazgashty ham estefade kard.
y tamrine gerafikie. 2ta source code c++ ba opengl attach kardam (rasme bazi az ashkale hendesi va taghire range pas zamine)


rasme ashkale hendesi:


#include <glut.h>// also included gl.h, glu.h

void display() {
glClear(GL_COLOR_BUFFER_BIT); // Clear the color buffer

glBegin(GL_QUADS); // Each set of 4 vertices form a quad
glColor3f(0.4f, 0.4f, 0.4f); // Red
glVertex2f(-0.7f, -0.1f); // x, y
glVertex2f(-0.1f, -0.1f);
glVertex2f(-0.1f, 0.5f);
glVertex2f(-0.7f, 0.5f);
glEnd();

glBegin(GL_TRIANGLES); // Each set of 3 vertices form a triangle
glColor3f(0.0f, 1.0f, 0.0f); // Green
glVertex2f(0.2f, -0.3f);
glVertex2f(0.8f, -0.3f);
glVertex2f(0.5f, 0.2f);
glEnd();

glBegin(GL_POLYGON); // The vertices form one closed polygon
glColor3f(0.0f, 0.0f, 1.0f); // Blue
glVertex2f(0.2f, 0.3f);
glVertex2f(0.4f, 0.3f);
glVertex2f(0.5f, 0.5f);
glVertex2f(0.4f, 0.7f);
glVertex2f(0.2f, 0.7f);
glVertex2f(0.1f, 0.5f);
glEnd();

glFlush(); // Render now
}

// GLUT runs as a Console Application
int main(int argc, char** argv) {
glutInit(&argc, argv); // Initialize GLUT
glutCreateWindow("2D Shapes"); // Create a window with the given title
glutDisplayFunc(display); // Register callback handler for window re-paint
glutMainLoop(); // Enter infinitely event-processing loop
return 0;
}


Taghire range pas zamine


#include <glut.h>// also included gl.h, glu.h

void display() {
glClearColor(1.0,0.2,0.3,1.0);

glClear(GL_COLOR_BUFFER_BIT); // Clear the color buffer


glBegin(GL_LINES); // Each set of 4 vertices form a quad
glColor3f(0.0f, 0.0f, 1.0f); // Red
glVertex2f(-0.6f, 0.2f); // x, y
glVertex2f(-0.2f, 0.77f);


glEnd();

glFlush(); // Render now
}

// GLUT runs as a Console Application
int main(int argc, char** argv) {
glutInit(&argc, argv); // Initialize GLUT
glutCreateWindow("2D Shapes"); // Create a window with the given title
glutDisplayFunc(display); // Register callback handler for window re-paint
glutMainLoop(); // Enter infinitely event-processing loop
return 0;
}

STELLA_PB
2012/3/16, 01:40 PM
سلام دوستان
کسی بازی مار و پله به زبان open gl رو داره؟ یا اگه میشه کمک کنید نحوه نوشتنشو توضیح بدید
merc:smile: