سلام
متدهای ترسیم عادی در زبانهای برنامهنویسی عموماً از پردازندهی مرکزی (CPU) استفاده میکنند. پردازندهی مرکزی یک ماشین همه منظوره است. به این معنی که میتواند همهی پردازشهای مورد نیاز در کامپیوتر را انجام دهد اما برای کارهای گرافیکی (ترسیمات) بهینهسازی نشده است. بنابراین استفاده از پردازندهی مرکزی برای ترسیم روشی ساده و سرراست، امّا ناکارامد است. بکارگیری پردازندهی مرکزی برای ترسیمات پیچیده و سنگین باعث کندتر شدن اجرای برنامه میگردد.
در نقطهی مقابل، پردازندهی گرافیکی (GPU) برای ترسیمات و اعمال گرافیکی ایجاد شده و بهینه گردیده است. این پردازنده همه منظوره نیست امّا برای ترسیم، بسیار عالی و سریع عمل میکند. زمانی که از متدهای OpenGL استفاده میکنیم، اطلاعات را برای پردازش به سمت کارت گرافیک (و به عبارت دیگر پردازندهی گرافیکی) ارسال کرده و ترسیم را به کمک آن انجام میدهیم. دقت کنید که در این حالت اطلاعات کمی (مثل مختصات نقاط و ...) را از طریق پردازندهی مرکزی به پردازندهی گرافیکی میفرستیم و اصل پردازش در پردازندهی گرافیکی انجام میگیرد. بنابراین پردازندهی مرکزی زیاد درگیر نشده و سرعت برنامه مانند قبل کند نمیشود.
بنابراین تنها درجایی که سرعت برای ما مهم نباشد و یا برای ترسیمات ساده و به میزان کم، استفاده از متدهای عادی درست خواهد بود امّا در ترسیمات سنگین و مخصوصاً سهبعدی، باید از متدهای دیگری مانند آنچه OpenGL برایمان فراهم آورده استفاده کنیم.