گرافیک رایانه‌ای

 

گرافیک رایانه‌ای یا گرافیک کامپیوتری (Computer graphics) یکی از قدیمی‌ترین شاخه‌های علوم رایانه است که به ترسیم، تغییر، و کار

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

این اصطلاح اولین بار توسط محقق گرافیک کامپیوتری William Fetter از شرکت Boeing در سال 1960 استفاده شد. نام دیگر این رشته، تصاویر تولید کامپیوتر (Computer-Generated Imagery یا به اختصار CGI) است.

موضوعات مهم در گرافیک کامپیوتری شامل Sprite Graphics، Vector Graphic، 3D Modeling، Shaders، GPU Design و Computer Vision میباشند. کلیت این مبحث به شدت به علوم بنیادی ترِ شیء شناسی، نورشناسی و فیزیک وابسته است. گرافیک کامپیوتری شامل نمایش تصاویر هنری و تصاویر داده ای به صورت مؤثر و زیبا به کاربر، و پردازش تصاویر داده ای دریافت شده از دنیای فیزیکی میباشد. واکنش و درک کامپیوترها و تفسیر داده ها با وجود گرافیک کامپیوتری ساده تر شده. توسعه گرافیک کامپیوتری تأثیر عمیقی بر بسیاری از جنبه های رسانه ای گذاشته و فیلم، انیمیشن، تبلیغات، بازی های ویدیویی و به طور کلی طراحی گرافیکی را دگرگون ساخته است.

 

گرافیک رایانه‌ای کاربردهای گوناگونی دارد که در زیر به مهم‌ترین آن‌ها اشاره می‌کنیم :

الف) رسم نمودارهای دو بعدی و سه بعدی

ب) طراحی به کمک رایانه(CAD)

Computer- Aided Design

ج) تجسّم ‌داده‌ها(‌بصری سازی)

visualization

د) تحصیل و آموزش

ه) چاپ و نشر

و) هنر رایانه‌ای

ز) سرگرمی (بازی و پویانمایی و فیلم سازی)

ح) طراحی واسط گرافیکی کاربر

Graphics User Interface

ط) پردازش تصویر

ی) واقعیت مجازی

نگاهی اجمالی

واژه گرافیک کامپیوتری به مفهومی وسیع برای توصیف "تقریباً هرچیزی در کامپیوتر به جز متن یا صدا" استفاده میشه. از لحاظ تکنیکی واژه گرافیک کامپیوتری به چندین چیز گفته میشه:

ارائه مجدد و دستکاری داده های تصویری به وسیله یک کامپیوتر

تکنلولوژی های گوناگون استفاده شده برای ساخت و دستکاری تصاویر

زیر شاخه رشته علوم کامپیوتری که روش های سنتز و دستکاری دیجیتالی محتوای بصری رو مطالعه میکنه.

 

امروزه گرافیک کامپیوتری فراگیر شده. تصویر سازی کامپیوتری در تلویزیون، روزنامه ها، برای مثال در گزارش های هواشناسی، یا برای مثال تمام تحقیقات پزشکی یا اعمال جراحی استفاده میشه. یک گراف با ساختار مناسب، میتونه آمار پیچیده رو به فرمی که برای فهم و تفسیر ساده تر هست ارائه کنه. در رسانه چنین گراف هایی برای مصور کردن روزنامه ها، گزارشات، پایان نامه ها و سایر موارد ارائه ای استفاده میشه. ابزارهای قدرتمندی برای بصری سازی داده ها توسعه داده شده اند. تصاویر تولید کامپیوتر میتونند در چندین مدل متفاوت دسته بندی شوند: دو بعدی (two dimensional 2D) ، سه بعدی (three dimensional 3D) ، و گرافیک های متحرک سازی شده (animated graphics). با پیشرفت تکنولوژی، گرافیک کامپیوتری 3D عمومیت بیشتری پیدا کرده، اما گرافیک کامپیوتری 2D همچنان به طور گسترده مورد استفاده قرار میگیره. گرافیک کامپیوتری به عنوان شاخه ای از علم کامپیوتر ظهور کرده که به مطالعه روش هایی برای فتوسنتز و دستکاری محتوای بصری میپردازه. در دهه گذشته، سایر رشته های تخصصی ، مانند بصری سازی داده، و بصری سازی علمی تمرکز بیشتری به بصری سازی پدیده های سه بعدی (معماری، هواشناسی، پزشکی، زیست شناسی و ...) که تاکید روی رندر طبیعی از حجم ها، سطوح، منابع روشنایی و در مواردی با اجزای دینامیک، توسعه پیدا کرده اند.

 

در نیمه ابتدایی دهه 2010، CGI تقریبا در همه ویدیوها وجود داره، گرافیک های پیش رندر شده از نظر علمی تقریباً واقع نمایانه (photorealistic) هستند، و گرافیک بلادرنگ روی سیستم مناسب با مشخصات خوب ، میتونه برای چشمان غیرآزموده واقع نمایی رو شبیه سازی کنه.

Texture mapping به پردازشی چند مرحله ای با چندین لایه رسیده؛ در کل استفاده از texture mapping، bump mapping یا isosurfaces، normal mapping، lighting maps شامل specular highlights و تکنیک های reflection و shadow volumes در یک موتور رندر با استفاده از shader ها که به طور قابل توجهی به بلوغ میرسند، کاملاً معمول هست. Shader ها حالا برای کارهای پیشرفته در این زمینه تقریباً خیلی ضروری هستند، پیچیدگی قابل توجهی رو در دستکاری پیکسل ها، نقاط و تکستچرها، و افکت های بیشمار بر پایه هر عنصر فراهم میکنه. زبان های shader اونها یعنی HLSL و GLSL رشته های فعال در زمینه تحقیق و توسعه هستند. Phyically-Based Rendering (رندر بر پایه فیریک) یا به اختصار PBR، که حتی نگاشت های بیشتری برای شبیه سازی واقعی جریان نور به کار میگیره هم یکی از محدوده های تحقیقاتی فعال به حساب میاد. تجربیاتی در زمینه قدرت پردازشی مورد نیاز برای فراهم کردن گرافیک بلادرنگ در حالت تفکیک پذیری بسیار بالا (urtla-high-resolution) مثل Urtla HD شروع شده، گرچه بیشتر روی سخت افزارهای پرقدرت هست و نه در دسترس همگان.

در سینما، بیشتر فیلم های انیمیشنی CGI هستند؛ تعداد زیادی فیلم های انیمیشنی CGI هر سال ساخته میشن، اما اگر نگیم هیچ کدوم، میشه گفت فقط تعداد کمی به خاطر ترس از دره وهمی سعی در واقع نمایانی (Photorealism) دارن. بیشترشون کارتون های 3D هستند.

 

در بازی های ویدویی، Xbox One از Microsoft، Sony Playstation 4 و Nintendo Wii U در حال حاظر فضای خانه ها رو پر کردن و قابلیت گرافیک 3D بسیار پیشرفته ای رو دارند؛ Windows PC هم همچنان یکی از فعال ترین پلتفرم های بازی هست.

 

2. انواع تصاویر

 

2.1 Two-dimensional

2D computer graphics (گرافیک کامپیوتری 2D) تولید تصاویر دیجیتال بر مبنای کامپیوتر، اغلب از مدلها مثل تصاویر دیجیتال، و به وسیله تکنیکهای خاص مربوط به آنها است.

گرافیک کامپیوتری 2D بیشتر در برنامه هایی استفاده میشه که برپایه تکنولوژی های سنتی پرینت و ترسیم، مثل تایپوگرافی توسعه داده شده اند. در اون برنامه ها، تصاویر دو بعدی فقط ارائه ای از شیء دنیای واقعی نیست، بلکه یک محصول تصنعی مستقل هست که به اون ارزشهای معنایی اضافه شده ؛ مدلهای دو بعدی به این دلیل ترجیح داده میشن، چرا که نسبت به تصاویر گرافیک کامپیوتری 3Dکه رویکردی بیشتر شبیه به عکاسی داره تا تایپوگرافی، قدرت کنترل مستقیم بیشتری روی تصویر میدن.

 

2.2 Pixel art

فرم وسیعی از هنر دیجیتال به نام pixel art به وسیله نرم افزارهای گرافیکی رستر ساخته شده ، که تصاویر در سطح pixel ها ویرایش میشن. گرافیکهای بیشترِ کامپیوترهای قدیمی (یا محدود در در زمینه گرافیکی) و بازی های ویدیویی، بازی های ماشین حساب نموداری (graphing calculator) و بسیاری از بازی های گوشی های موبایل اغلب pixel art هستند.

 

2.3 hicSprite graps

یه Sprite (روح) تصویر یا انیمیشنی دو بعدی هست که با یه صحنه بزرگتر یکپارچه شده. در ابتدا فقط شامل اشیای گرافیکی بودن که به صورت جدا از نگاشت بیتیِ (bitmap) حافظه صفحه نمایش ویدویی به کار گرفته میشدن ، اما حالا شامل روش های مختلف هم پوشانی گرافیکی میشن.

در اصل، sprite ها روشی بودن برای یکپارچه سازی نگاشت های بیتی غیر مرتبط به شکلی که روی صفحه نمایش به صورت یک نگاشت بیتی معمولی به نظر برسن، مثل ساخت یک شخصیت انیمیشنی که میتونه روی صفحه، بدون تغییر اطلاعاتی که تمامیت صفحه رو توصیف میکنه، حرکت داده بشه. چنین sprite هایی میتونند توسط مدارهای الکترونیکی یا نرم افزار ساخته بشن. در مدارها، یه سخت افزار sprite، یه سخت افزار هست که از کانال های DMA (دسترسی مستقیم به حافظه) سفارشی سازی شده برای یکپارچه سازی عناصر تصویری با صفحه اصلی، که در اون دو منبع مجزای ویدویی روی هم قرار میگیرن، استفاده میکنه. نرم افزار میتونه از طریق روش های رندرگیری تخصصی، این کار رو شبیه سازی کنه.

 

 

 

2.4 Vector graphics

فرمت های Vector Graphics (گرافیک برداری) مکمل گرافیک رستری هستند. گرافیک رستری ارائه ای از تصاویر در غالب آرایه ای از پیکسل هاست و معمولاً برای ارائه تصاویر عکسی استفاده میشه. گرافیک برداری شامل کدگذاری اطلاعات درباره اشکال و رنگ هایی هست که تصویر رو تشکیل میدن، که در رندرگیری اجازه انعطاف بیشتری میده. مواردی هستند که بهترین روش، کار با ابزارها و فرمت های برداری هست و مواردی هم هستند که کار با ابزارها و فرمت های رستر بهترین روش هست. مواقعی هم هستند که هر دو فرمت با هم به کارگرفته میشن. فهم فواید و محدودیت های هر تکنولوژی و ارتباطات بین اونها، به استفاده کارآمد و موثر از ابزارها می انجامه.


 

2.5 Three-dimensional

3D graphics (گرافیک 3D) در مقایسه با گرافیک دو بعدی ، گرافیکی هست که از ارائه ای سه بعدی برای داده های هندسی استفاده میکند. برای عملکرد بهتر، این در کامپیوتر ذخیره شده. شامل تصاویری میشه که ممکنه برای نمایش در آینده یا برای نمایش بلادرنگ مورد استفاده قرار بگیره.

جدای این تفاوت ها، گرافیک کامپیوتری 3D در نمایش رندر نهایی بر الگوریتم های مشابه گرافیک کامپیوتر 2D درباره قاب و گرافیک رستری تکیه داره. در نرم افزار گرافیک های کامپیوتری، تفاوت بین 2D و 3D گهگاه کمرنگ میشه؛ نرم افزارهای 2D ممکنه از تکنیکهای 3D برای رسیدن به یک افکت مثل نورپردازی استفاده کنند، و البته در درجه اول نرم افزارهای 3D هم احتمال داره از تکنیک های رندر 2D استفاده کنند.

گرافیک کامپیوتری 3D مشابه مدلهای 3D هست. جدای از رندرگیری، مدل داخلِ فایلِ داده گرافیکی قرار داره. گرچه، تفاوت هایی وجود داره و یکی از اونها این هست که مدل 3D ارائه ای از هر شیء 3D به حساب میاد. تا زمان نمایش بصری، یک مدل، گرافیک نیست. به خاطر قابلیت پرینت شدن مدلهای 3D، این مدلها فقط محدود به فضاهای مجازی نمیشن. رندر 3D، نحوه نمایش یک مدل هست. همینطور متیونه در شبیه سازی های کامپیوتری و محاسبات غیر گرافیکی هم استفاده شود.

 

2.6 Computer animation

انیمیشن کامپیوتری (انیمیشن یا متحرک سازی کامپیوتری)هنر ساخت تصاویر متحرک توسط کامپیوترهاست. زیر رشته ای از گرافیک کامپیوتری و انیمیشن هست. به طور فزاینده ای به وسیله گرافیک کامپیوتری 3Dساخته میشه، با این حال گرافیک کامپیوتری 2D همچنان به طور وسیعی برای نیازهای رندر بلادرنگ، سبک و با پهنای باند کم استفاده میشه. بعضی اوقات هدف انیمیشن خود کامپیوتر است، اما گاهی اوقات هدف رسانه ای دیگه مثل فیلم هست. همینطور ازش به ویژه در صورت استفاده در فیلم بعنوان CGI (تصاویر تولید کامپیوتر) یاد میشه.

موجودیت های مجازی ممکنه با ویژگی های مختلفی معرفی و کنترل بشن، مثل مقادیر جابجایی (مکان، چرخش و مقیاس) ذخیره شده در ماتریس جابجایی یک شیء. انیمیشن، تغییر این مشخصات در زمان است. چندین روش دستیابی به انیمیشن وجود داره؛ شکل ابتدایی بر اساس ساخت و تغییر فریم کلیدی (Keyframes) هست، هر کدوم از این فریم های کلیدی، مقادیر هر مشخصه رو در زمان معین شده برای متحرک سازی در خودشون نگه میدارند. نرم افزار گرافیکی 2D/3D با هر فریم کلیدی تغییر میکنه، یک منحنی قابل ویرایش از مقادیر نگاشت شده در زمان میسازه، که به یک انیمیشن می انجامد. سایر روش های ساخت انیمیشن شامل تکنیک های Procedural (رویه ای) و Expression-based (بر پایه حالت) هست: مورد اول عناصر مرتبط موجودیت های متحرک سازی شده رو در مجموعه ای از ویژگی ها ترکیب، برای ساخت افکتهای ذره ای و شبیه سازی های جمیعت مناسب هست؛ دومی اجازه میده نتایج به دست اومده از عبارات منطقی تعریف شده توسط کاربر، به همراه ریاضیات، انیشمین رو به شکلی قابل پیش بینی خودکارسازی کنه (مناسب برای کنترل رفتار استخوان فرای چیزی که مدل سلسله مراتبی (hierarchy) در تنظیم سیستم اسکلتی عرضه میکنه.)

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

 

3. مفاهیم و قوانین

تصاویر به طور معمول به وسیله دستگاه هایی مثل دوربین ها، آینه ها، لنزها، تلسکوپ ها، میکروسکوپ ها و ... ساخته میشن. تصاویر دیجیتال شامل تصاویر برداری (Vector Images) و رستری (Raster Images) میشن، اما تصاویر رستر بیشتر استفاده میشن. 

 


 

 محیط Fractal، نمونه ای از تصویر تولید کامپیوتر

 

 

3.1 Pixel

در تصویر سازی دیجیتال، پیکسل (Pixel) (یا عنصر تصویر) یک نقطه در تصویر رستری هست. پیکسل ها روی یک شبکه (Grid) منظم دو بعدی قرار گرفته اند، و اغلب به وسیله نقطه یا مربع بیان میشن. هر پیکسل یک نمونه (Sample) از تصویر اصلی هست، و نمونه های بیشتر طبیعتاً تصویر دقیق تری از عکس اصلی به دست میده. شدت هر پیکسل متفاوته، در سیستم رنگ، هر پیکسل به طور معمول سه جزء مثل قرمز، سبز و آبی دارد.

 

 

 در بزرگنمایی یک تصویر میشه پیکسل ها رو به صورت مربع به آسانی دید

 

3.2 Graphics

گرافیک ها (Graphics) ارائه های بصری بر روی سطوحی مثل صفحه نمایش کامپیوتر است. عکس ها، نقاشی ها، طراحی های گرافیکی، طراحی های مهندسی، نقشه ها یا تصاویر مثال هایی از این دست هستند. گرافیک ها اغلب متن و تصویر رو ترکیب میکنن. طراحی های گرافیکی ممکنه شامل انتخاب، خلق یا قراردهی آگاهانه تایپوگرافی تنها، مثل یک بروشور، آگهی، پوستر، وبسایت و یا کتاب بدون هیچ عنصر دیگه ای باشه. هدف میتونه وضوح یا برقراری ارتباط موثر باشه، ارتباط با سایر عناصر فرهنگی دیگه باشه، یا به تنهایی، خلق یک سبک متفاوت باشه.

 

3.3 Rendering

رندگیری تولید تصویری 2D از یک مدل 3D به وسیله یک برنامه های کامپیوتری است. یک فایل صحنه شامل اشیایی در زبان برنامه نویسی کاملاً تعریف شده یا ساختار داده است؛ که میتونه شامل اشیای هندسی، پنجره نمایش (viewpoint)، بافت (texture)، نورپردازی، یا اطلاعات سایه پردازی (shading) به عنوان توصیفی برای صحنه مجازی باشه. داده های داخل فایل صحنه سپس به برنامه رندرگیری (rendering program) داده میشن تا پردازش شده و به شکل تصویر دیجیتال یا فایل تصویری گرافیک رستری خروجی تولید کنه. برنامه رندرگیری معمولاً به صورت داخلی (built in) در نرم افزار گرافیک کامپیوتری قرار داره، اما بعضی دیگه به عنوان پلاگین (plug-in) یا نرم افزارهای کاملاً مجزا هستند. واژه "rendering" میتونه شبیه "ارائه هنرمند" از صحنه باشه. با اینکه جزییات تکنیکی روش های رندرگیری متفاوت هست، چالش های کلی غلبه بر تولید تصویر 2D از ارائه 3D ذخیره شده در فایل صحنه شامل Graphics Pipeline (مراحل کار گرافیکی) در کنار دستگاه رندرگیری، مثل GPU هست. GPU دستگاهیه که قادر به کمک کردن به CPU در محاسبات هست. اگر صحنه ای باید واقعی به نظر برسه و تحت نورپردازی مجازی نتیجه قابل پیش بینی داشته باشد، نرم افزار رندرگیری باید معادله رندرگیری را حل کند. معادله رندر برای تمام اثرات نور محاسبه نمیشه، بلکه یه مدل نورپردازی کلی برای تصاویر تولید کامپیوتر (CGI) هست. واژه Rendering همینطور برای توصیف پردازش محاسباتی افکت ها درادیت یک ویدیو برای تولید ویدوی خروجی نهایی به کار میره.

 

3.3.1 3D Projection

3D Projection روشی برای نگاشت نقاط سه بعدی، روی صفحه ای دو بعدیست. به دلیل این که بیشتر روش های نمایش داده های گرافیکی در حال حاظر روی سطوح مسطح دو بعدیه، استفاده از این نوع پروژکشن عمومیت داره، به ویژه در گرافیک های کامپیوتری، مهندسی و طراحی.

 

3.3.2 Ray tracing

Ray tracing (رهگیری پرتو) تکنیکی برای ایجاد تصویر با رهگیری مسیر نور از میان پیکسل ها در یک تصویر هست. این تکنیک توانایی تولید photorealism (فتورئالیسم، واقع نمایی) بالا رو داره؛ معمولاً بیشتر از انواع روشهای معمول scanline rendering (رندر اسکن-خطی)، اما با هزینه محاسباتی بسیار بیشتر.

 

3.3.3 Shading

Shading (سایه زنی) به به تصویر کشیدن عمق در مدلهای 3D یا تصاویر با استفاده از مقادیر مختلف تاریکی گفته میشه. این فرایندیه که در نقاشی برای به تصویر کشیدن مقادیر مختلف تاریکی روی کاغذ با اعمال بیشتر فشار یا با رنگ های تیره تر برای مناطق تاریک تر، و شدت کمتر یا رنگ های روشن تر برای مناطق روشن تر استفاده میشه. روش های مختلفی برای سایه زنی وجود داره شامل cross hatching (سایه زنی تقاطعی) که خطوط عمود بر هم با نزدیکی های متفاوت، با الگوی مشبک برای ایجاد سایه روی یک منطقه کشیده میشن. هرچه خط ها به هم نزدیک تر بشن، منطقه تیره تر خواهد شد. برعکس، هر چه فاصله خط ها بیشتر باشه، منطقه روشن تر خواهد شد. این واژه اخیراً در معنای عمومی "سایه زنی اعمال شده است" به کار میره.

 

 

 


 

 

نمونه سایه پردازی (Shading)

 

3.3.4 Texture mapping

Texture mapping (نگاشت بافت) روشی برای اضافه کردن جزئیات، بافت سطوح، یا رنگ به گرافیک ها یا مدلهای 3D ساخت کامپیوتر هست. اولین استفاده از اون در گرافیک 3D توسط Dr Edwin Catmull در سال 1974 بود. یک نگاشت بافت به سطح یک شکل یا چند ضلعی اعمال (mapped یا نگاشته) میشه. این فرایند مشابه اعمال یک کاغذ طرح دار روی یک جعبه ساده و سفید هست. Multitexturing (چند بافتی) به استفاده بیش از یک بافت در یک زمان روی یک چند ضلعی (polygon) گفته میشه. Procedural textures (بافت های تابعی) (ساخته شده به وسیله تغییر مقادیر یک الگوریتم که یک بافت خروجی رو تولید میکنه)، و bitmap texture (بافت نگاشت بیتی) (ساخته شده در یک نرم افزار ادیت عکس یا وارد شده از یک دوربین دیجیتال)، به طور کلی روش های به کار گیری جزئیات بافت روی مدلهای 3D در نرم افزارهای گرافیک کامپیوتری هستند، در حالی که نحوه قرار گیری بافت روی سطح مدل اغلب نیازمند تکنیکی است که با نام UV mapping (نگاشت UV) (تنظیم دلخواه مختصات بافت) برای Polygon surface (سطوح چند ضلعی) شناخته میشه، در حالی که NURBS surfaces (سطوح نربز) مقداردهی ذاتی خودشون رو دارن که به عنوان مختصات دهی بافت استفاده میشه. نگاشت بافت همچنین به عنوان یک اصل، تکنیک هایی برای ساخت normal maps (نگاشت های طبیعی) و bump maps (نگاشت های برآمدگی) که با بافت تطابق داده میشه تا ارتفاع رو شبیه سازی کنه و specular maps (نگاشت های بازتابی) برای کمک به شبیه سازی درخشش و بازتاب نور، و environment mapping (نگاشت محیطی) برای شبیه سازی انعکاس آینه مانند که gloss (صیقلی) نامیده میشود، رو شامل میشه.

 

3.3.5 Anti-aliasing

رندرگیری موجودیت های غیر وابسته به تفکیک پذیری (resolution-independent) (مثل مدلهای 3D) برای نمایش روی یک دستگاه رستر (بر پایه پیکسل) مانند نمایشگر کریستال مایع (LCD) یا تلویزیون های CRT به طور غیر قابل اجتناب ایجاد aliasing artifacts (مصنوعات دندانه ای) میکنه که بیشتر در لبه های اشکال و مرزهای جزئیات بافت اتفاق میفته؛ این مصنوعات به طور غیر رسمی jaggies نامیده میشن. روش های Anti-aliasing (ضد دندانه ای) چنین مشکلاتی رو اصلاح میکنه، که نتیجش تصاویری لذت بخش تر برای بینندست، اما میتونه تا حدی از لحاظ محاسباتی پر هزینه باشه. الگویتم های anti-aliasing متفاوتی (مانند supersampling) میتونن به کار گرفته بشن، و سپس برای بهترین عملکرد رندرگیری در مقابل کیفیت تصویر نهایی سفارشی سازی بشن؛ یک هنرمند گرافیکی باید این دو مورد اگر از روش های anti-aliasing استفاده میشه در نظر داشته باشه.نمایش یک bitmap texture (بافت نگاشت بیتی) که pre-anti-aliased (از قبل anti-aliased شده) باشه روی صفحه نمایشی (یا مکانی از اون) که در تفکیک پذیری تصویری از خود بافت تفاوت داره (مانند مدل بافت دهی شده ای که از دوربین مجازی فاصله دارد) مصنوعات دندانه ای رو ایجاد میکنه، در حالی که هر بافت تعریف شده به وسیله تابع همیشه مصنوعات دندانه ای رو ایجاد میکنه، چرا که وابسته به تفکیک پذیری تصویر نیست؛ تکنیکهایی مانند mipmapping و texture filtering به حل مشکلات دندانه ای شدن مربوط به بافت کمک میکنه.

 

3.4 Volume rendering

رندر حجمی (Volume rendering) تکنیکی هست که برای نمایش یک پروژکشن 2D از مجموعه داده های نمونه برداری شده پراکنده 3D استفاده میشه. یه مجموعه داده 3D معمولی گروهی از تصاویر 2D برش خورده هستند که با یک اسکنر CT یا MRI به دست اومده اند. معمولاً اینها به وسیله الگوهای منظم به دست میاد (برای مثال یک برش در هر میلیمتر) و معمولاً در یک الگوی منظم تعداد پیکسلهای تصویر منظمی وجود داره. این مثالی از یک شبکه حجمی منظم هست، با هر عنصر حجم، یا voxel نمایش داده شده با یک مقدار که با نمونه گیری مناطق کناری که voxel رو احاطه کرده به دست میاد.

 


3.5 3D Modeling

3D modeling (مدلسازی سه بعدی) فرایند توسعه ارائه ای ریاضی و قالب سیمی (wireframe) به نام 3D model (مدل سه بعدی) از هر شیء سه بعدی هست، که با نرم افزارهای ویژه ساخته میشه. مدلها ممکنه خودکار یا دستی ساخته بشن؛ فرایند مدلسازی دستی برای آماده سازی داده های شیء برای گرافیک کامپیوتری سه بعدی مشابه با هنرهای پلاستیکی (plastic arts) مثل مجسمه سازی (sculpting) هست. مدلهای 3D میتونن به چندین روش ساخته بشن: استفاده از منحنی های NURBS برای ساخت تکه های نرم و دقیق سطح، polygon mesh modeling (مدلسازی شبکه ای چند ضلعی) (دستکاری شکل چند وجهی)، یا polygon mesh subdivision (شبکه چند ضلعی تقسیم شده) (موزاییک کاری پیشرفته چندضلعی ها، که در نتیجه اون سطوح نرم تر مشابه با مدلسازی NURBS تولید میشه). یک مدل 3D میتونه از طریق فرایند 3D Rendering به صورت تصویری دو بعدی نمایش داده بشه، در یک شبیه سازی کامپیوتری پدیده های فیزیکی استفاده بشه، یا به طور مستقیم برای اهداف دیگه متحرک سازی بشه. همچنین میشه مدل رو به وسیله دستگاه های 3D Printing (پرینترهای سه بعدی) ساخت.

 


 

4. پیشگامان گرافیک کامپیوتری

3.1 Charles Csuri

Charles Csuri پیشگامی در انیمیشن کامپیوتری و هنر دیجیتال هست و اولین هنر کامپیوتری رو در سال 1964 ساخته. Csuri توسط Smithsonian به عنوان پدر هنر دیجیتال و انیمیشن کامپیوتری ، و توسط Museum of Modern Art (موزه هنرهای معاصر یا MoMA) و Association for Computing Machinery-SIGGRAPH (انجمن ماشین های کامپیوتری) به عنوان پیشگام انیمیشن کامپیوتری شناخته شده است.

 

4.2 Donald P. Greenberg

Donald P. Greenberg یک پیشروی نوآوری در گرافیک کامپیوتری هست. Greenberg صدها مقاله نوشته و به عنوان معلم و استاد برای بسیاری از هنرمندان برجسته گرافیک کامپیوتری، انیماتورها و محققانی چون Robert L. Cook، Marc Levoy، Brian A. Barsky و Wayne Lytle بوده. بسیاری از شاگردان سابق اون برای دستاوردهای تکنیکی برنده Academy Awards (جایزه اسکار) و بسیاری دیگر برنده SIGGRAPH Achievement Award (جایزه دستاورد SIGGRAPH) شدند. Greenberg مدیر مؤسس NSF Center for Computer Graphics and Scientific Visualization (مرکز NSF برای گرافیک کامپیوتری و بصری سازی علمی) بوده است.

 

4.3 Aaron Marcus

Aaron Marcus یکی از اولین طراحان گرافیکی دنیاست که با گرافیک کامپیوتری کار کرده. او بیش از 250 مقاله و نویسنده/ جزو نویسندگان شش کتاب بوده. او بیش از 40 سال در سطح بین المللی به نشر پرداخته، سخنرانی کرده، آموزش داده و مشورت داده و از او به عنوان سخنران اصلی در همایش هایی مثل ACM/SIGCHI، ACM/SIGGRAPH، Usability Professionals Association (UPA) دعوت به عمل آمده. در سال 2007 به عنوان AIGA Fellow نام گرفت و در سال 2008 برای CHI Academy انتخاب شد. او مؤسس Aaron Marcus and Associates, Inc. ، یک شرکت طراحی تخصصی پیشگام و شناخته شده در سطح جهانی در زمینه توسعه برنامه های رابط کاربری/تجربه کاربری بوده است.

 

4.4 A.Michael Noll

Noll یکی از اولین محققاتی بود که از یک کامپیوتر دیجیتال برای ساخت الگوهای هنری و رسمی سازی استفاده از پردازش های تصادفی در ساخت هنرهای بصری استفاده کرد. او در سال 1962 شروع به خلق هنرهای کامپیوتری کرد، که او رو تبدیل به یکی از اولین هنرمندان کامپیوتر دیجیتال میکنه. در سال 1965، Noll به همراه Frieder Nake و Georg Nees اولین کسانی بودند که نمایشگاه عمومی برای هنر کامپیوتری خود برگذار کردند. در آپریل 1965، گالری Howard Wise نمایشگاهی از هنر کامپیوتری Noll به همراه الگوهای نقاط تصادفی از Bela Julesz برگذار کرد.

 

4.5 سایر پیشگامان

Pierre BezierJim BlinnJack BresenhamJohn CarmackPaul de CasteljauEd CatmullFrank CrowJames D. FoleyWilliam FetterHenry FuchsHenry GouraudNadia Magnenat ThalmannBenoit B. Mandelbort Martin NewellFred ParkeBui Tuong PhongSteve RussellDaniel J. SandinAlvy Ray SmithBob SproullIvan SutherlandDaniel ThalmannAndries van DamJohn WarnockLance Williams

 

4.6 سازمان های مهم

SIGGRAPHSIGGRAPH Asia - Bell Telephone LaboratoriesUnites States Armed Forces ، به ویژه Whirlwind computer و SAGE ProjectBoeingIBMRenault – دپارتمان علوم کامپیوتر دانشگاه UtahLucasfilm و Industrial Light & MagicAutodeskAdobe SystemsPixarSilicon Graphics, Khronos Group & Open GL – دپارتمان DirectX از MicrosoftNvidia و AMD

 

5.رشته گرافیک های کامپیوتری

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

به عنوان یک رشته دانشگاهی، گرافیک کامپیوتری به وسیله تکنیک های محاسباتی به مطالعه و دستکاری اطلاعات بصری و هندسی میپردازه. به جای اینکه فقط به مباحث زیبایی شناسی بپردازه روی اصول ریاضی و محاسباتی ساخت و پردازش تصویر تمرکز داره. گرافیک های کامپیوتری اغلب از رشته بصری سازی (Visualization) تفکیک میشه، گرچه هر دو رشته تشابهات زیادی دارن.

 

6. موارد استفاده

گرافیک کامپیوتری در این زمینه ها نیز ممکن است  مورد استفاده قرار بگیره:


محاسبات زیست شناسی – محاسبات فیزیکی – طراحی به کمک کامپیوتر – شبیه سازی کامپیوتری – هنر دیجیتال – آموزش – طراحی گرافیکی – اینفوگرافیک – بصری سازی اطلاعات – طراحی منطقی دارو – بصری سازی علمی – جلوه های ویژه برای سینما – بازی های ویدویی – حقیقت مجازیطراحی وب

 

 

کلمات کلیدی:|درس گرافیک کامپیوتری|رشته گرافیک کامپیوتر کاردانش|کتاب گرافیک کامپیوتری|رشته گرافیک کامپیوتر در دانشگاه|گرافیک کامپیوتر را از کجا بفهمیم|دروس رشته "گرافیک کامپیوتر"|رشته گرافیک کامپیوتری دانشگاه علمی کاربردی|دانشگاه های رشته گرافیک رایانه|گرافیک کامپیوتر را از کجا بفهمیم|کارت گرافیک کامپیوتر چیست|قیمت کارت گرافیک کامپیوتر|قیمت کارت گرافیک2 گیگ|قیمت کارت گرافیک 4 گیگ|قیمت کارت گرافیک nvidia|رشته گرافیک کامپیوتر|کارت گرافیک برای بازی