الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

[مخالف]need help

مغلق
بدأه eng-sally في 26 أبريل 2011 · 7 رد · 1,147 مشاهدة · في OpenGL
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

السلام عليكم ورحمة الله وبركاته

ممكن حد يقولى ازاى اخلى نفس الشكل مثلث مثلا او غيرة بانه يظهر بعدد معين random فى game

عشان الاحداثيات للمكان بتاع الرسومات بيختلف

وكمان انى اخلى للgame وقت معين

وشكرا

لابد أحياناً من لزوم الصمت ليسمعنا الآخرون

#2

استخدمي داله العداد العشوائيه rand للحصول على الاعداد العشوائيه التي تحتاجينها وكذلك الداله srand للحصول على اعداد مختلفه عند كل تشغيل

#3
Ali Al-Zyoud كتب:

استخدمي داله العداد العشوائيه rand للحصول على الاعداد العشوائيه التي تحتاجينها وكذلك الداله srand للحصول على اعداد مختلفه عند كل تشغيل

شكرا على الرد

المشكلة مش فى الفنكشن ,انا المفروض اغير فى ال vertex ازاى ,انا دورت وفى اكتر من طريقة بس الكودات كانت مش مفهومة فالو ممكن

حدي يشرح طريقة يعرفها بطريقة مبسطة ,

لابد أحياناً من لزوم الصمت ليسمعنا الآخرون

#4
eng-sally كتب:

شكرا على الرد

المشكلة مش فى الفنكشن ,انا المفروض اغير فى ال vertex ازاى ,انا دورت وفى اكتر من طريقة بس الكودات كانت مش مفهومة فالو ممكن

حدي يشرح طريقة يعرفها بطريقة مبسطة ,

انا لا اعلم ما هي المشكله بالنسبه لكي ، عليكي ان توضحي اكثر ، لتغيير ال vertices نغيير قيمتها .

هذا مثال على يرسم مثلث بأماكن مختلفه عند كل تشغيل :

#include<windows.h>
#include<GL/gl.h> 
#include<GL/glu.h>
#include<GL/glut.h>
#include<math.h>
#include<time.h>
#pragma comment (lib,"OpenGL32.lib")
#pragma comment (lib,"glu32.lib")
#pragma comment (lib,"glut32.lib")
int width  = 800;
int height = 600;
void Drawing()
{
        glClear(GL_COLOR_BUFFER_BIT);
		glBegin(GL_TRIANGLES);
        glVertex2d(rand()%800,rand()%600);
        glVertex2d(rand()%800,rand()%600);
        glVertex2d(rand()%800,rand()%600);
        glEnd();

        glutSwapBuffers();
}
void Init()
{
        glClearColor(1.0,1.0,1.0,0);
        glColor3f(0.0,0.0,0.0);
        glViewport(0,0,width,height);
        glMatrixMode(GL_PROJECTION);
        glLoadIdentity();
        gluOrtho2D(0,800,0,600);
}
int main()
{
	    srand(time(NULL));
        glutInitDisplayMode(GLUT_DOUBLE | GLUT_RGB);
        glutInitWindowSize(width,height);
        glutInitWindowPosition(0,0);
        glutCreateWindow("Example");
        Init();
        glutDisplayFunc(Drawing);
        glutMainLoop();
        return 0;
}
#5
Ali Al-Zyoud كتب:

انا لا اعلم ما هي المشكله بالنسبه لكي ، عليكي ان توضحي اكثر ، لتغيير ال vertices نغيير قيمتها .

هذا مثال على يرسم مثلث بأماكن مختلفه عند كل تشغيل :

#include<windows.h>
#include<GL/gl.h> 
#include<GL/glu.h>
#include<GL/glut.h>
#include<math.h>
#include<time.h>
#pragma comment (lib,"OpenGL32.lib")
#pragma comment (lib,"glu32.lib")
#pragma comment (lib,"glut32.lib")
int width  = 800;
int height = 600;
void Drawing()
{
        glClear(GL_COLOR_BUFFER_BIT);
		glBegin(GL_TRIANGLES);
        glVertex2d(rand()%800,rand()%600);
        glVertex2d(rand()%800,rand()%600);
        glVertex2d(rand()%800,rand()%600);
        glEnd();

        glutSwapBuffers();
}
void Init()
{
        glClearColor(1.0,1.0,1.0,0);
        glColor3f(0.0,0.0,0.0);
        glViewport(0,0,width,height);
        glMatrixMode(GL_PROJECTION);
        glLoadIdentity();
        gluOrtho2D(0,800,0,600);
}
int main()
{
	    srand(time(NULL));
        glutInitDisplayMode(GLUT_DOUBLE | GLUT_RGB);
        glutInitWindowSize(width,height);
        glutInitWindowPosition(0,0);
        glutCreateWindow("Example");
        Init();
        glutDisplayFunc(Drawing);
        glutMainLoop();
        return 0;
}

شكرا على الاجابة

بس سؤال تانى معلش

هو انا ممكن ادليت شكل معين من محموعة الاشكال المرسومة عندى اثناء ال runtime

لابد أحياناً من لزوم الصمت ليسمعنا الآخرون

#6
eng-sally كتب:

شكرا على الاجابة

بس سؤال تانى معلش

هو انا ممكن ادليت شكل معين من محموعة الاشكال المرسومة عندى اثناء ال runtime

ممكن توضحي اكثر ماذا يعني "ادليت"

#7

يمكنك استخدام FLAG فى داله الرسم على الجزء الذى تريدين رسمه واذا كان ب FALSE فانه لن يقوم برسم الشكل ثانيه

void display()
{
if (myflag == true )
draw rectangle 
}

no-pain-no-gain.jpg

اذا كنت لا تعلم الى اين تذهب... فكــل الطرق تؤدى الى هناك

#8

الأخ الكريم/الأخت الكريمة

السلام عليكم ورحمة الله وبركاته

مرحباً بكم في منتدى الفريق العربي للبرمجة

تأسف إدارة المنتدى لغلق الموضوع وذلك لمخالفته قوانين المشاركات .

قواعد طرح المشاركات

/index.php?showtopic=29343

شاكرين لكم حُسن تعاونكم

{username}

صورة
صورة

حسابي في الفيس بوك
http://goo.gl/XIzwL

حسابي في تويتر
http://goo.gl/6p4e3

 

 
 

هذا الموضوع مغلق.

مواضيع مشابهة