آموزش OpenGL در Qt

 

قرار هست که در این سری آموزشی، ترسیم به کمک OpenGL در Qt رو با هم یاد بگیریم. چندین فصل در نظر گرفته شده و هر فصل شامل چندین قسمت هست. برای هر قسمت، سورس کد و یک ویدئوی آموزشی قرار داده میشه. برای یادگیری درست، حتماً سورس کدها رو روی سیستم خودتون اجرا کنین. در پایان هر ویدئو ممکنه تمرین‌هایی هم داده بشه. حتماً این تمرین‌ها رو هم حل کنین.

توجه:

برای هر فصل، تمرین‌هایی هم قرار داده میشه که هرکس که اون رو حل کنه، میتونه کدش رو برای من ایمیل کنه تا پس از بررسی با نام خودش در سایت قرار بگیره. ایرادی نداره اگر چندین نفر هم یک تمرین رو حل کنن. به این ترتیب، چندین پیاده‌سازی رو برای حل هر مطلب خواهیم داشت.

 



معرفی کتاب



 

قبل از هر چیز


 

شماره عنوانلینک ویدئو
1گرافیک کامپیوتری برای همهbasic-cg4all
2مقدمهbasic-basic-1-intro
3چرا OpenGL؟basic-basic-2-why-gl
4محیط Qt Creatorbasic-3-qt

 

 



 

 

فصل ۱


 

شمارهتصویرعنوانلینک کدلینک ویدئو
1مقدار دهی اولیهInitOpenGLInitOpenGL
2تعیین سیستم مختصات
ترسیم نقطه
DrawPointDrawPoint
3نقاط روی محیط دایرهDrawPoint-MoreDrawPoint-More
4خطDrawLineDrawLine
5نمودارDrawLine-MoreDrawLine-More
6چند ضلعی منظمNGonNGon
7فراکتال سادهSimple-FractalSimple-Fractal
8مثلث سِرپینس‌کیSierpinski-TriSierpinski-Tri
9فرش سِرپینس‌کیSierpinski-CarpetSierpinski-Carpet
10بکارگیری تایمرTimerTimer
11حرکت مربع‌ها در محدودهMovementMovement
12محافظ صفحه نمایش سادهSimpleScreenSaverSimpleScreenSaver
13رسم خطوط طرح‌دار LineStippleLineStipple
14تغییر شکل (مورف) سادهSimple-Morphآماده نیست


 

تمرین بیشتر برای فصل ۱

شمارهتوضیح
1<<فرش سرپینس‌کی ساده>>

یک فراکتال که چند مرحله‌ی اول ترسیم آن به شکل زیر است:




وضعیت حل:

یک حل از کاربر Ali_Bahrami:

Sierpinski-Carpet-AliBahrami

2

 

 

 

 

 

 

 

فصل ۲


 

شمارهتصویرعنوانلینک کدلینک ویدئو
1تبدیلات 1Transformation1آماده نیست
2تبدیلات 2Transformation2آماده نیست
3تبدیلات 3Transformation3آماده نیست
4تبدیلات 4Transformation4آماده نیست
5مثلث،چهار ضلعی و
چند ضلعی توپُر
Triangle_Quad_Polygonآماده نیست
6طیف رنگ / تک‌رنگFlat_Smooth_Shadingآماده نیست
7آماده نیستترسیم دایره به صورت بازگشتیآماده نیستآماده نیست
8منحنی بِزی‌یِرBezier Curveآماده نیست
9آماده نیستبازی اِسنِیک (مار)آماده نیستآماده نیست
10آماده نیستطرح دارکردن چندضلعی توپُرآماده نیستآماده نیست
11آماده نیستنرخ فریمآماده نیستآماده نیست
12آماده نیستلیستآماده نیستآماده نیست
13آماده نیستساعت عقربه‌ایآماده نیستآماده نیست
14آماده نیستتغییر حالت ترسیم یک چندضلعی (توپُر، سیمی، نقطه‌ای)آماده نیستآماده نیست
15آماده نیستبرف‌دانه کُخآماده نیستآماده نیست
16آماده نیستسِوِن سِگمِنتآماده نیستآماده نیست
17آماده نیستساعت دیجیتال توپُرآماده نیستآماده نیست


 

 

فصل ۳


 

شمارهتصویرعنوانلینک کدلینک ویدئو
1نگاشت بافت 1Texture1آماده نیست
2آماده نیستنگاشت بافت 2آماده نیستآماده نیست
3آماده نیستساخت ساعت دیجیتال با تصویرآماده نیستآماده نیست
4آماده نیستترکیب به کمک آلفاآماده نیستآماده نیست
5آماده نیستحرکت دادن اسلایدآماده نیستآماده نیست
6آماده نیستسیستم ذره‌ای 1آماده نیستآماده نیست
7آماده نیستسیستم ذره‌ای 2آماده نیستآماده نیست
8آماده نیستمباحثی راجع به نقطه و بردار در هندسهآماده نیستآماده نیست
9آماده نیستمباحثی راجع به ضرب داخلیآماده نیستآماده نیست
10آماده نیستمباحثی راجع به ضرب خارجیآماده نیستآماده نیست
11آماده نیستدنبال کردن ماوس 1آماده نیستآماده نیست
12آماده نیستدنبال کردن ماوس 2آماده نیستآماده نیست
13آماده نیستدنبال کردن ماوس 3آماده نیستآماده نیست
14آماده نیستپیکان 1آماده نیستآماده نیست
15آماده نیستپیکان 2آماده نیستآماده نیست


 

 

فصل ۴


 

شمارهتصویرعنوانلینک کدلینک ویدئو
1آماده نیستصرف‌نظر کردن از ترسیم با توجه به آلفاآماده نیستآماده نیست
2آماده نیستفیلتر کردن مولفه‌های رنگآماده نیستآماده نیست
3آماده نیستبریدن بخشی از ترسیم - مستطیلیآماده نیستآماده نیست
4آماده نیستبریدن بخشی از ترسیم - به شکل دلخواه 1آماده نیستآماده نیست
5آماده نیستبریدن بخشی از ترسیم - به شکل دلخواه 2آماده نیستآماده نیست
6آماده نیستبریدن بخشی از ترسیم - به شکل دلخواه 3آماده نیستآماده نیست


 

 

فصل ۵


 

شمارهتصویرعنوانلینک کدلینک ویدئو
1آماده نیستمقدمات ترسیم سه‌بعدیآماده نیستآماده نیست
2آماده نیستدید پِرسپِکتیوآماده نیستآماده نیست
3آماده نیستخانه‌سازی با بلوک مکعبیآماده نیستآماده نیست
4آماده نیستساخت یک شهر به صورت تصادفیآماده نیستآماده نیست
5آماده نیستهرمآماده نیستآماده نیست
6آماده نیستسِرپینس‌کی سه بعدیآماده نیستآماده نیست
7آماده نیستآشنایی با وجه رویی و پشتیآماده نیستآماده نیست
8آماده نیستهرم نیمه سیمیآماده نیستآماده نیست
9آماده نیستساخت کره به صورت بازگشتیآماده نیستآماده نیست
10آماده نیستکلاس دوربینآماده نیستآماده نیست
11آماده نیستجدال عمقآماده نیستآماده نیست


 

 

فصل ۶


 

شمارهتصویرعنوانلینک کدلینک ویدئو
1آماده نیستسایه‌زن 1آماده نیستآماده نیست
2آماده نیستسایه‌زن 2آماده نیستآماده نیست
3آماده نیستسایه‌زن 3آماده نیستآماده نیست
4آماده نیستماتریس در سایه‌زنآماده نیستآماده نیست
5آماده نیستدرونیابی مقادیر در سایه‌زنآماده نیستآماده نیست
6آماده نیستتولید مقدار آلفای دلخواه در سایه‌زنآماده نیستآماده نیست
7آماده نیستکار با تصویر در سایه‌زنآماده نیستآماده نیست
8آماده نیستصرف‌نظر کردن از ترسیم در سایه‌زنآماده نیستآماده نیست
9آماده نیستمهآماده نیستآماده نیست
10آماده نیستنورپردازی 1آماده نیستآماده نیست
11آماده نیستنورپردازی 2آماده نیستآماده نیست
12آماده نیستنورپردازی 3آماده نیستآماده نیست
13آماده نیستنورپردازی 4آماده نیستآماده نیست
14آماده نیستنورپردازی 5آماده نیستآماده نیست


 

 

سامانه‌ی پرسش و پاسخ

در این بخش می‌توانید پرسش‌ خود را بیان کرده و پاسخ آن را دریافت کنید. بهترین جواب را انتخاب کرده و به دیگران امتیاز دهید.

برای ورود کلیک کنید

می‌خواهید به ما کمک کنید؟

نیازی به پول نیست. بودن شما، کمک شما است.

برای همکاری بیشتر کلیک کنید

آیا میدانید؟

برای شمارش تعداد هسته‌های یک CPU تعداد انگشتان دست شما کافی است امّا برای شمارش تعداد هسته‌های GPU احتمالاً نیازمند کمک گرفتن از چندده و یا حتی چندصد نفر هستید.