View Full Version : OpenGL 3.2
pswin.pooya
شنبه 24 مرداد 1388, 01:17 صبح
به نظر میاد گروه khronos این روزها سرش بدجوری مشغول باشه. بله سه ورژن در کمتر از یک سال. از ابتدای امسال مرتبا ویرایش های جدیدی از OpenGL منتشر میشه در حالی که اطلاعات و داکیومنتهای کافی حتی برای ویرایش 3.0 هم وجود نداره. و برنامه نویسان به علت تغییرات عمده در ویرایش سوم ، از نوشتن برنامه های OpenGL تحت این ویرایش باز موندن. به هر حال nvidia هم دستخالی نشته و فورا درایورها رو تحت سیستم عاملهای ویندوز و لینوکس منتشر کرده. و خرونوس هم اعلام کرده که این ویرایش اصلیترین ویرایش OpenGL در 12 ماه گدشته بوده.
برای اینکه بتونین از OpenGL 3.x استفاده کنین حتما باید سری هشت به بالای Geforce رو داشته باشین
اخبار سایت khronos :
http://www.khronos.org/news/press/releases/khronos-releases-opengl-3.2-third-major-opengl-release-within-twelve-months/
درایورهای nvidia:
http://developer.nvidia.com/object/opengl_3_driver.html
خبر داغ داغه، هنوز داکیومنتهای خود nv و خرونوس هم بیرون نیومده. به محض اینکه این سایتها تغییرات رو اعلام کردن اونها رو به اطلاع شما میرسونم.
pswin.pooya
دوشنبه 09 شهریور 1388, 21:03 عصر
تغییرات عمده زیادی داخل وسرایش سوم به OpenGL اعمال شده که از جمله اونها حذف اکثر متغییرهای توکار شیدرهاش هستن و ساخت شی محتوا توسط خود OpenGL هستش. البته لازمه بگم که عمده ترین تغییر اون هم حذف قسمت fixed function هستش. ساختار جدید OpenGL 3.x قابلیت اجرای شیدرهای دایرکت ایکس رو هم فراهم میکنه ( اینو تو یکی از فروم ها دیده بودم و در باره اون مطمئن نیستم.)
به علت اینکه تغییر وضعیت ها داخل OpenGL باعث کاهش شدید کارایی می شد. سعی شده که داخل OpenGL 3.x تا حد ممکن اینکار رو خود GPU انجام بده تا CPU و تا اونجایی که امکان داره CPU با این مساله درگیر نشه و همین باعث معرفی توع جدیدی از بافر ورتکس ها به نام VAO شده. این نوع جدید تمام کار ست کردن موقعیت و اطلاعات بافر رو خودکار انجام میدن که نتیجتا به جزء هنگام ساخت اولیه در بقیه موارد تنها با دو دستور تمامی کارهای مورد نیاز رو انجام میده. این نوع جدید بافر ترکیبی از VBO ( که توسط OpenGL 2.x+ ساپورت میشه) و وضعیتها هستن. در ویرایش سوم OpenGL ، FBO دیگه به صورت یک الحاقی عمل نمی کنه و دیگه جزء خود OpenGL هستش.
ویرایش زبان GLSL به 1.5 تغییر پیدا کرد:
OpenGL 3.0 => 1.3
OpenGL 3.1 => 1.4
OpenGL 3.2 => 1.5
توی این ویرایش جدید تغییرات زیادی ایجاد شده و سعی شده زبان به زیانهای CG نزدیکتر بشه. قابلیت جدید half-float داخل OpenGL باعث شده که بشه اطلاعات اعشاری رو در صورتی که دقت مهم نباشه با نصف اندازه فرستادش و نتیجتا هم ریجیسترهای کمتری از GPU اشغال بشه و هم سرعت بالاتر بره. توی ویرایشهای جدید این زبان مارتیسهای نما مدل و ماتریس پروجکشن رو باید به صورت متغییر یونی فرم به GPU فرستاد و یگه متغییرهای توکار gl_ModelViewMatrix، gl_ProjectionMatrix و gl_ModelViewProjectionMatrix وجود نداره.
البته لازم هستش که این مورد رو هم اضافه بکنم که شما هنوز میتونید برنامه GLSL بنویسید که ترکیبی از ویرایش های قبلی و جدید باشه اما این مورد از استاندارد دور هستش و امکان داره توی کارتهای گرافیکی آینده پشتیبانی نشه. لازم به ذکر هستش که OpenGL میتونه شیدرهای ویرایش های قبلی رو به شرط اینکه با پیش پردازنده #version ویرایش اونها مشخص شده باشه اجرا کنه. البته شرط اینکار هم استفاده از دستورهای پیشین همانند glVertexPointer و ... هستش. در صورتی که از این پیش پردازنده استفاده نشه ویرایش پیش فرض یعنی 1.10 استفاده میشه که با نام 110 معرفی میشه.
کار MRT توسط OpenGL هم تفاوتهایی کرده که قبل از کار با اون باید توابعی مانند glBindFragDataLocation رو استفاده بکنید.
این مطلب رو لازمه استفاده کنم که اکثر موارد اضافه شده داخل OpenGL 3.x تا قبل از این توسط الحاقی های ARB و یا NV و حتی apple پشتیبانی میشدش.
این ویرایش هم اکنون توسط D-Engine ساپورت میشه. به خاظر ساپورت این ویرایش قسمتهای زیادی از D-Engine رو از اول نوشتم و هنوز هم نتونستم تمامی قسمت ها رو راه اندازی کنم.
pswin.pooya
شنبه 14 شهریور 1388, 13:28 عصر
nvidia درایور جدید OpenGL 3.2 را منتشر کرد. درایور پیشین این شرکت مشکلات و باگهای جدی داشت به عنوان مثال دستور glBindVertexArray کار نمی کرد.
این درایور رو می تونید از سایت nvidia دریافت کنید.
pswin.pooya
شنبه 14 شهریور 1388, 13:31 عصر
نیروی دفاعی ارتش استرالیا و OpenSource
نیروی دفاعی استرالیا برای شبیه سازهای پرواز خود تصمیم گرفت که از OpenGL ، لینوکس suse و کارتهای گرافیکی NVIDIA Quadro FX 5600G استفاده بکنه. علت این انتخاب حجم بالای پردازش شیدرهای شبیه سازهای افکتهایی همانند ابر و دود اعلام شده. لازم به ذکر هستش که زبان شیدینگ هم GLSL انتخاب شده.
لینک خبر:
http://www.itnews.com.au/News/154262,defence-spends-17m-on-ultimate-linux-flight-simulator.aspx
vBulletin® v4.2.5, Copyright ©2000-1404, Jelsoft Enterprises Ltd.