PDA

نسخه کامل مشاهده نسخه کامل : در خواست open gl for 64 bit



سونامی
09-08-2011, 17:17
با عرض سلام و خسته نباشید من open gl برای وینذوز 64 بیتی سون می خواهم

ممنون از لطفتون

سونامی
10-08-2011, 19:41
کسی نیست جواب سوال ما رو بده

shabnam1986
13-08-2011, 22:43
اونی که شما منظورتونه برای بازی هاست تو خود ویندوز هست و همراه آپدیت ویندوز به روز میشه اما در کل این آپن جی ال یه پروژه برنامه نویسیه

---------- Post added at 12:43 AM ---------- Previous post was at 12:42 AM ----------

[ برای مشاهده لینک ، لطفا با نام کاربری خود وارد شوید یا ثبت نام کنید ]

---------- Post added at 12:43 AM ---------- Previous post was at 12:43 AM ----------

حتما با نرم افزار های متن باز یا به اصطلاح اصلی open source آشنایی دارید ( حداقل نام آن به گوشتان رسیده است ! ) و می دانید که این نرم افزار ها به صورت رایگان در اختیار عموم قرار می گیرند و تهیه کننده گان آنها سورس اصلی برنامه را بیشتر به منظور عیب یابی و کاهش خطا ها و bug های احتمالی برنامه در اختیار برنامه نویسان قرار می دهند تا برنامه نویسان و علاقمندان بتوانند به راحتی کد آن برنامه را ویرایش کرده و تغییرات دلخواه را روی آن انجام دهند ( یکی از معروفترین برنامه های open surce سیستم عامل لینوکس است که حتما نام آن را شنیده اید و البته پیشرفت ها و موفقیت های جدید آن را ، که مهمترین عامل این پیشرفت ها همین متن باز بودن لینوکس بوده و است ) .

opengl هم همانطور که از نام آن مشخص است جزء نرم افزار متن باز به شمار می رود که یک از مزیت ها و امتیازات آن نیز به شمار می رود ، حال نوبت به graphic library می رسد :

graphic library یا همان کتابخانه گرافیکی به مجموعه کتابخانه ها یا کامپوننت های گفته می شود که برای استفاده از دستورات مخصوص گرافیکی تهیه شده است و با الصاق ( include ) آن ها به برنامه اصلی ( هنگام برنامه نویسی ) می توانیم ، از دستورات گرافیکی مجاز برای ایجاد رابطه با بخش گرافیک سیستم استفاده نماییم ( از جمله کار هایی که با گرافیک سیستم سر و کار دارد نوشتن بازی ها و اشکال سه بعدی و دو بعدی و کلا برنامه هایی که با مانیتور در ارتباط باشند )

نکته آموزشی داخل پارانتز (( کتابخانه ها یا همان فایل های با پسوند lib که مخفف شده library می باشد ، به منظور آسان تر شدن کار برنامه نویسان در موقع برنامه نویسی ایجاد و تهیه می شوند ، به این صورت که مثلا برنامه نویسی داخل برنامه های خود از تابع خاصی چندین بار ( شاید هم صد ها و هزاران بار ) به صورت متوالی استفاده می کند ، خوب نوشتن این تابع خاص به این تعداد در کد اصلی برنامه حجم فایل نهایی را بالا برده و البته وقت برنامه نویس را هم خواهد گرفت ، اینجاست که کتابخانه ها یا lib ها وارد عمل می شوند و تابع خاص را داخل خود قرار می دهند تا موقع نیاز به تابع از آن استفاده شود ))

این هم از مفهوم graphic library ، حال شما با مفهوم اسم OpenGL یا همان Open source Graphic Library آشنایی کامل را دارید .

پس در اینجا نتیجه می گیریم که OpenGL یک زبان برنامه نویسی نیست ، یک سری کتابخانه از پیش تعریف شده می باشد که کار این کتابخانه ارتباط راحت تر با بخش سخت افزاری گرافیک سیستم می باشد ، برای درک بیشتر این مطلب باید توضیحی هم درباره رابط های نرم افزاری یا همان API ها بدهم :

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

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


تاریخچه و نحوه تکامل OpenGl :
سازنده OpenGL یا بهتر بگوییم توسعه دهنده و بهینه کننده آن شرکت Silicon Graphics می باشد ( که به اختصار SGI نیز نامیده می شود و یکی از بزرگان صنعت گرافیک کامپیوتری می باشد ) ، خود OpenGL توسعه یافته کتابخانه دوبعدی IRIS GL که آن هم محصول شرکت SGL بود ، می باشد . شرکت های دیگری نیز به توسعه این محصول متن باز کمک کرده اند از جمله شرکت 3D Labs که تکنیک و قابلیت سایه زنی را به OpenGL اضافه نمود . در سالهای اخیر کتابخانه های OpenAL و OpenIL نیز به موازات OpenGL در حال پیشروی و کسترش هستند که اولی برای کنترل و مدیریت سخت افزار های صوتی (Audio) و ایجاد صدا های سه بعدی و دومی برای مدیریت و کنترل دستگاه های ورودی ( Input ) ها ایجاد شده اند .



رقیب اصلی OpenGL همان DirectX محصول شرکت Microsoft می باشد که در سال 1995 وارد عرصه رقابت API ها شد ، در اوایل رقابت بین این دو اپن جی ال کاملا یک سر و گردن از حریف خود جلو بود ، اما کار به همین روال پیش نرفت و شرک ماکروسافت یا استفاده از قدرت تجاری خود توانست از رقیب خود جلو بزند ، البته متن باز بودن OpenGL هم بی تقصیر نبود به گونه ای که ماکروسافت از این ویژگی استفاده می کرد و محصولات خود را تقریبا مشابه با محصولات OpenGL ارائه می داد تا اینکه در تاریخ 2000 میلادی DirectX 8 منتشر شد که امکانات بیشتر و بهتری نسبت به OpenGL داشت ، در این برهه زمانی بود که OpenGL از رقیب خود عقب افتاد ولی همچنان رقابت بین این دو ادامه دارد .

در آخر هم نام دو کتاب درباره OpenGl که توسط شرکت SGI تهیه و منتشر شده است را ذکر می کنم ، اولی کتابی با عنوان OpenGL Red Book می باشد که به توضیح و تشریح اپن جی ال اختصاص داده شده است و کتاب دوم با عنوان OpenGL Blue Book که مرجع دستورات این کتابخانه می شود.