تور لحظه آخری
امروز : چهارشنبه ، 5 دی 1403    احادیث و روایات:  امام علی (ع):توكل بر خداوند، مايه نجات از هر بدى و محفوظ بودن از هر دشمنى است.
سرگرمی سبک زندگی سینما و تلویزیون فرهنگ و هنر پزشکی و سلامت اجتماع و خانواده تصویری دین و اندیشه ورزش اقتصادی سیاسی حوادث علم و فناوری سایتهای دانلود گوناگون شرکت ها

تبلیغات

تبلیغات متنی

صرافی ارکی چنج

صرافی rkchange

سایبان ماشین

دزدگیر منزل

اجاره سند در شیراز

قیمت فنس

armanekasbokar

armanetejarat

صندوق تضمین

Future Innovate Tech

پی جو مشاغل برتر شیراز

خرید یخچال خارجی

موسسه خیریه

واردات از چین

حمية السكري النوع الثاني

ناب مووی

دانلود فیلم

بانک کتاب

دریافت دیه موتورسیکلت از بیمه

طراحی سایت تهران سایت

irspeedy

درج اگهی ویژه

تعمیرات مک بوک

دانلود فیلم هندی

قیمت فرش

درب فریم لس

خرید بلیط هواپیما

بلیط اتوبوس پایانه

تعمیرات پکیج کرج

لیست قیمت گوشی شیائومی

خرید فالوور

پوستر آنلاین

بهترین وکیل کرج

بهترین وکیل تهران

خرید از چین

خرید از چین

تجهیزات کافی شاپ

کاشت ابرو طبیعی و‌ سریع

قیمت بالابر هیدرولیکی

قیمت بالابر هیدرولیکی

قیمت بالابر هیدرولیکی

لوله و اتصالات آذین

قرص گلوریا

نمایندگی دوو در کرج

رفع تاری و تشخیص پلاک

پرگابالین

دوره آموزش باریستا

مهاجرت به آلمان

بهترین قالیشویی تهران

بورس کارتریج پرینتر در تهران

تشریفات روناک

نوار اخطار زرد رنگ

ثبت شرکت فوری

تابلو برق

خودارزیابی چیست

فروشگاه مخازن پلی اتیلن

قیمت و خرید تخت برقی پزشکی

کلینیک زخم تهران

خرید بیت کوین

خرید شب یلدا

پرچم تشریفات با کیفیت بالا و قیمت ارزان

کاشت ابرو طبیعی

پرواز از نگاه دکتر ماکان آریا پارسا

پارتیشن شیشه ای

اقامت یونان

خرید غذای گربه

رزرو هتل خارجی

تولید کننده تخت زیبایی

مشاوره تخصصی تولید محتوا

 






آمار وبسایت

 تعداد کل بازدیدها : 1844347283




هواشناسی

نرخ طلا سکه و  ارز

قیمت خودرو

فال حافظ

تعبیر خواب

فال انبیاء

متن قرآن



اضافه به علاقمنديها ارسال اين مطلب به دوستان آرشيو تمام مطالب
archive  refresh

DirectX10 و اهمیت آن در صنعت کامپیوتر های شخصی


واضح آرشیو وب فارسی:پی سی سیتی: DirectX10 و اهمیت آن در صنعت کامپیوتر های شخصی

http://www.irancg.com/photo/maghale/html05/directx10/directx10.jpg


در این مصاحبه پرسش ها توسط BD (کوتاه شده عبارت Boot Daily) و پاسخ ها با نام Chris (مدیر بخش گسترش و بازاریابی مایکروسافت) مشخص شده اند. همچنین منظور از DX10 در این مصاحبه DirectX 10 می باشد.

BD : لطفا اهمیت DX10 را برای دوست داران بازی ها در یک جمله توضیح دهید.
Chris : ما در مایکروسافت DirectX 10 را به عنوان بلند ترین جهش در کیفیت و کارایی گرافیک در صنعت کامپیوتر های شخصی از زمان پیدایش DirectX که به زمان ویندوز 95، و تحولی در زمینه بازی های کامپیوتری و تکنولوژی مربوط به آن می دانیم.

BD : و اهمیت آن برای کاربران عادی؟
Chris : بله، DirectX 10 بالاترین کیفیت و کارایی گرافیکی را در پلاتفرم ویندوز را به همراه خواهد داشت که نتیجه آن تجربه ای باورنکردنی و دور از ذهن برای کاربران عادی خواهد بود.

BD : این یک حقیقت است که تعداد زیادی از بازی های معروف و پرطرفدار درحال حاظر بر پایه موتور گرافیکی Doom3 که از OpenGL بهره می گیرد ساخته می شوند. به نظر شما DX10 چه مزیت هایی نسبت به OpenGL برای تولید کنندگان بازی های کامپیوتری به ارمغان می آورد؟
Chris : همانطور که می دانید، ما DirectX 10 را برای ویندوز ویستا و با هدف ارایه دادن یک تجربه باورنکردنی از جزئیات گرافیکی به کاربران و بازیکنان ، تماما از پایه و از صفر ساخته ایم. این نسخه از DirectX نسب به نسخه های قبلی دارای بازده به مراتب بیشتر و در عین حال با ضریب اطمینان و پایداری بیشتر خواهد بود. DirectX 10 به لطف Shader Model 4.0 به طور فوق العاده ای کیفیت و جزئیات باورنکردنی را در اختیار توسعه دهندگان و نهایتا کاربران خواهد گذاشت که از آن جمله توانایی بکارگیری محیط های پیچیده گرافیکی و ترسیم چهره ها به صورت بسیار طبیعی و توانایی نمایش تعداد دلخواه از آیتم ها در صحنه می باشد.
اشاره کردید که بازی های معروف و پرطرفدار بر اساس موتور گرافیکی Doom3 و OpenGL ساخته می شوند، اما به عقیده من تعداد بازی هایی که از DirectX استفاده می کنند به مراتب بیشتر و حتی زیبا تر هستند. بازی هایی زیادی هستند که بر اساس موتور های گرافیکی Unreal و Source و با استفاده از DirectX ساخته می شوند. حتی ID (منظور شرکت ID Software سازنده سری بازی های Doom و Quake است) نیز برای منطبق ساختن بازی های خود با کنسول های Xbox و Xbox360 آنها را به DirectX تبدیل می کند.
با این حال، تمامی برنامه هایی که از واسط گرافیکی OpenGL استفاده می کنند قابلیت اجرا در ویندوز ویستا را به شرط پشتیبانی درایور گرافیک و استفاده از وصله (Patch) مناسب، خواهند داشت. به همین خاطر سازندگان و فروشندگان قطعات سخت افزاری ملزم به ارایه ICD یا Installable Client Drivers که امکان استفاده از شتابدهنده گرافیکی را برای پردازش دستورات OpenGL را خواهد داد، هستند.


BD : چرا این نسخه از DX10 تنها قابل استفاده در ویندوز ویستا است؟ آیا این نوعی اجبار کاربران برای خرید و ارتقا به ویندوز ویستا نیست؟ DirectX 10: Chrisباز به امکانات مشخصی جهت بهره گیری کامل از سخت افزار گرافیکی سیستم دارد که این امکانات و خصیصه ها تنها در سیستم عامل ویندوز ویستا موجود است. ما یک هدف بزرگ را برای دراختیار گذاشتن تجربه گرافیکی جدید به کاربران در نظر گرفته ایم و همانطور که قبلا گفتم، DirectX 10 کاملا از پایه و بدون استفاده از نسخه های قبلی این واسط گرافیکی ساخته شده است و بنابر این هیچگونه سازگاری با نسخه های قبلی از سیستم عامل ویندوز ندارد.
DirectX 10 برپایه مدل جدید درایور تصویر ویندوز ویستا (Windows Vista Display Driver Model یا WDDM) که معرف عصر جدیدی در قابلیت های گرافیکی و افزایش پایداری و ضریب اطمینان درنظر گرفته شده، طراحی شده است. در عین حال ما با انجام تغییراتی در معماری مدل درایور ها سعی در آسان سازی و افزایش پایداری و همچنین سازگاری بیشتر تراشه های گرافیکی با مجموعه دستورات هوش مصنوعی و محاسبات فیزیکی (جدا از تراشه های محاسب فیزیکی) انجام داده ایم که مجموعه این دلایل برای ارایه نشدن این نسخه از DirectX جهت سیستم عامل های قبلی مایکروسافت از جمله ویندوز XP متقاعد کننده به نظر می رسد.


BD : به غیر از رشته های کوتاه تر (Shorter Program Strings)، مزیت اصلی Shader Model 4.0 نسبت به نسخه 3.0 آن برای توسعه دهندگان بازی های کامپیوتری چست؟
Shader Model 4.0 : Chris به توسعه دهندکان اینگونه نرم افزار ها اجازه انجام محاسبات پیچیده بیشتری را در تراشه های گرافیکی (GPU) می دهد. این عمل ضمن کاهش بار پردازش از پردازنده سیستم را که باعث عدم بهره گیری از قدرت کامل تراشه گرافیکی می شود، اجازه انجام محاسبات سنگین مربوط به هوش مصنوعی و نیز افزایش تعداد آیتم ها را در صحنه در اختیار توسعه دهندگان قرار خواهد داد.
در عین حال DirectX 10 به همراه Shader Model 4.0 به لطف پشتیبانی از سایه زن های متحد (Unifyed Shaders) انعطاف پذیری و خلاقیت بسیار بیشتری را در اینگونه توسعه دهندگان قرار خواهد داد.


BD : شرکت های ATI و NVIDIA هردو در حال طراحی و ساخت تراشه های گرافیکی سازگار با DX10 هستند. به نظر شما این تراشه های گرافیکی در مقایسه با کنسول های بازی Xbox 360 و PS3 چگونه عمل خواهد کرد؟

Chris : این موضوع و تلااش این دو شرکت در مورد DirectX 10 بسیار هیجان انگیز است. اما بهتر است این سوال را از خود آنها بپرسید.


BD : به غیر از برتری های DX10 در مورد بازی های کامپیوتری، این نسخه چه نقشی را در برنامه های کاربردی آینده بازی خواهد نمود؟

DirectX 10: Chris فراتر از صرفا یک واسط و مجموعه دستورها برای بازی های کامپیوتری است. در گذشته نیز بسیاری از برنامه های کاربردی از CAD/CAM و 3DStudio گرفته تا برنامه های پزشکی و تصویر برداری نیز از مزایای DirectX بهره گرفته اند. با این حال DirectX 10 باز هم نسبت به نسخه های قبلی قطعا امکانات بسیار مناسب تری را در اختیار اینگونه برنامه ها خواهد گذاشت. به یک نکته دقت کنید.
ویندوز ویستا از DirectX 10 به عنوان یک مولفه گرافیکی استفاده می کند - پس ویندوز ویستا هم خود یک برنامه کاربردی استفاده کننده از DirectX 10 محسوب می شود.


BD : نحوه تعامل DX10 با کاربرانی که از سخت افزار DX10 استفاده نمی کنند چگونه خواهد بود؟

DirectX 10: Chris و ویندوز ویستا کاملا با تمامی برنامه ها و بازی های منطبق با نسخه های قدیمی تر DirectX سازگار هستند. کسانی که در زمان انتشار ویندوز ویستا، سخت افزار منطبق بر DirectX 10 را در اختیار ندارند و یا تهیه نکرده اند، هنوز هم قابلیت اجرای بازی ها و برنامه های برپایه DirectX 10 را خواهند داشت. DirecrX 9 هم در ویندوز ویستا برای این گروه از کاربران در نظر گرفته شده است. با این حال جالب است بدانید کاربرانی که با استفاده از سخت افزار منطبق بر DirectX 10 بازی های DirectX 9 را اجرا کنند شاهد افزایش کیفیت و بازده آن خواهند بود.
درعین حال توسعه دهندگان نیز می توانند با خیالی آسوده به تولید بازی ها و نرم افزار های بر اساس DirectX 9 برای ویندوز ویستا بپردازند.


BD : آیا به نظر شما DX10 نهایت گرافیک در کامپیوتر خواهد بود؟ یعنی با فرض در اختیار داشتن سخت افزار مناسب آیا شاهد تصاویر منطبق بر واقعیت با سرعت نمایش مناسب خواهیم بود؟

Chris : ما به DirectX 10 به عنوان گام بلندی در زمینه گرافیک کامپیوتری می نگریم. مطمنا این نسخه از DirectX تجربه جدید را در اختیار کاربران خواهد گذاشت و با اجازه دادن به توسعه دهندگان برای آشنایی با قابلیت های DirectX 10 این تجارب بهتر و بهتر نیز خواهند شد. اما ما همچنین عقیده داریم که هنوز هم موارد زیادی در این مورد قابل دستیابی هستند و بدست آوردن آنها نیز به زمان بیشتری نیاز دارد. گرافیک در ویندوز و DirectX 10 هنوز هم در راه توسعه و تکامل هستند.


BD : آیا شما در این لحظه در مورد تراشه های DirectX 10 شرکت های ATI و nVIDIA نظری دارید؟ کدام یک را برای خود انتخاب می کنید؟

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


BD : در مورد پیشرفت های صدا در DX10 نیز توضیح دهید. آیا ما میتوانیم با این نسخه صداها را "ببینیم" !؟

Chris : این نسخه از DirectX کماکان روال گذشته را در مورد چگونگی و نحوه تولید صدا ها ( بر پایه XACT cross-platform audio creation tool) را ادامه می دهد. بنابر این برتری عمده ای نسبت به نسخه های قبلی در این نسخه قابل ذکر نیست اما پیشرفت هایی انجام شده است.


BD : ویندوز ویستا چگونه برای اجرای یک بازی یا برنامه با استفاده از DX10 و یا DX9 را با توجه به نوع GPU تصمیم گیری می کند؟

Chris : وقتی روند اجرای یک بازی آغاز می شود، ویندوز ویستا با تشخیص نسخه DirectX به کار رفته در بازی و سخت افزار سیستم، گزینه مناسب را انتخاب خواهد کرد.


BD : گفته می شود که DirectX10 از Geometry Shaders (سایه زن هندسی) استفاده می کند. این قابلیت تا چه حد به روند انجام و تشکیل اشکال هندسی کمک خواهد کرد؟

Geometry Shader : Chris دقیقاً در بین سایه زن های پیکسل و راس (Vertex and Pixel) در خط لوله پردازش قرار دارد. می تواند از رئوس و مثلث های ایجاد شده در ترسیم اشکال بعدی، بدون نیاز به پردازش مجدد، استفاده کند. سایه زن هندسی کارهای دیگری نیز انجام میدهد : تقویت تعداد مثلث ها با انتخاب یک یا چند مثلث از قبل پردازش شده و تکرار آنها بدون نیاز به پردازش مجدد، و یا تشکیل مثلث های جدید با ترکیب مثلث های دردسترس، تولید نقطه ها و خط های جدید و یا با استفاده از مثلث های ازقبل پردازش شده، و یا تولید پیکسل های پخش شده (جدا جدا).
انتخاب یک نقطه، تولید یک سری مثلث در اطراف آن و گسترش آن تا تشکیل یک تصویر قابل درک (Sprite) و یا تجزیه یک مثلث به تعداد کوچکتری مثلث و گسترش آن. بیرون انداختن یک راس از مثلث از مجموع مثلث ها و تبدیل آن به یک حجم یا یک چهار ضلعی.
بهترین نقطه در DirectX ترکیب تمامی انواع Shader Model ها در Shader Model 4.0 است که به توسعه دهندگان اجازه خواهد داد انواع Vertex، Pixel و Geometry Shaders ها را در یک مدل بیافرینند.


BD : در مورد محاسبات فیزیک (کنش ها و واکنش های محیط در مقابل تعییرات) چطور؟

Chris : ویندوز ویستا از تمامی انواع محاسبات فیزیکی چه به وسیله پردازنده، تراشه گرافیکی یا پردازنده فیزیک جداگانه پشتیبانی خواهد نمود. با اتکا بر DirectX 10 ویندوز ویستا پلاتفرم قدرتمندی برای انجام محاسبات فیزیکی توسط GPU خواهد بود. پشتیبانی از ویژگی چند تراشه گرافیکی SLI و یا CrossFire و توانایی تقسیم وظایف پردازش تصویر و یا محاسبات فیزیکی بین تراشه های گرافیکی موجود در سیستم از جمله امتیازات سیستم عامل ویستا و DirectX 10 می باشد.

BD : با این وجود پشتیبانی از کارت پردازش فیزیک Ageia به عهده ویندوز ویستا خواهد بود؟ و یا ATI و NVIDIA ؟

Chris : واضح است که ساده ترین روش پردازش فیزیک، بهره گیری از پردازنده اصلی سیستم است. در ویندوز ویستا تامین درایور های لازم و پشتیبانی تراشه های پردازش فیزیک (مانند Agiea) بر عهده خود سازندگان آنها خواهد بود.



BD : آیا تیم توسعه و بازار یابی شما اقدامی در جهت موجود بودن محتوای مناسبی مانند بازی های کامیوتری، نرم افزار های سازگار و مختص به ویندوز VISTA در هنگام انتشار آن انجام داده است؟

Chris : بله، در زمان انتشار ما پشتیبانی کاملی از تمام نسخه های موجود بازی ها و نرم افزار ها را در ویندوز ویستا شاهد خواهیم بود. در عین حال علاوه بر 10 عنوانی که قبلا برای انتشار همزمان با ویندوز ویستا اعلام شده بود، عناوین مهم و جذاب دیگری نیز برای انتشار همزمان با ویندوز ویستا پیش بینی کرده ایم. مطمنا این عنواین در همان روزهای اول پیشرفت فوق العاده در نسل بعدی بازی های کامپبوتری و امکانات باورنکردنی ویندوز ویستا و DirectX 10 را به نمایش خواهند گذاشت. ضمنا تعداد تعداد زیادی از عنواین فعلی نیز برای ویندوز ویستا و پشتیبانی آن از پردازنده های چند هسته ای بهینه سازی شده اند.


از عناوینی که در هنگام انتشار ویستا برای خرید موجود خواهد بود :




“Alan Wake (Microsoft Game Studios)
“Age of Conan: Hyborian Adventures” (Eidos)
“Company of Heroes” (THQ)
“Crysis” (EA-Partners)
“Flight Simulator X” (Microsoft Game Studios)
“Halo 2 for Windows Vista” (Microsoft Game Studios)
“Hellgate: London” (Namco)
“LEGO Star Wars II: The Original Trilogy” (LucasArts)
“Shadowrun” (Microsoft Game Studios)


“Zoo Tycoon 2: Marine Mania” (Microsoft Game Studios)


BD : از اینکه به سوالات ما و تعداد زیادی از کاربران و دوستداران بازی های کامپیوتری پاسخ دادید متشکرم. به امید موفقیت هرچه بیشتر شما. ما مشتاقانه منتظر عرضه ویندوز ویستا و بازی های جذاب DirectX 10 و سخت افزار های ارایه شده توسط NVIDIA و ATI خواهیم بود.

منبع اینجا (http://irancg.com/index.php/publisher/articleview/action/view/frmArticleID/1468)

http://www.irancg.com/images/Image/articles/0026/directx.jpg

در ابتدایی ترین سطح Directx بعنوان یك واسطه بین سخت افزار در كامپیوتر شخصی و خود ویندوز ، بخشی از API ویندوز یا واسطه برنامه نویسی برنامه های كاربردی Application Programming Interface است .

برنامه های بازی و مالتی مدیا جزء رضایت بخش ترین برنامه های كامپیوتری می باشند ، ولی متأسفانه اجرای آنها به شیوه ای مناسب همیشه آسان نیست . علت اول اینكه ساختار كامپیوترهای شخصی هرگز به منظور استفاده بعنوان پایگاهی جهت بازی كردن طراحی نگردیده است . ثانیاً ماهیت طیف گسترده كامپیوترهای شخصی به معنای آن است كه دستگاه یك نفر می تواند بسیار متفاوت با دستگاه دیگری باشد . لذا در حالیكه دستگاه های بازی همگی از سخت افزارهای مشابهی استفاده می كنند ، كامپیوترهای شخصی چنین نیستند : حیطه بسیار وسیع تفاوت های سخت افزاری می تواند دردسر بزرگی برای بازكردن این برنامه ها محسوب شود . جهت رهایی از این دردسر تا حد امكان ، مایكروسافت نیازمند معرفی استانداردی عمومی یا بهتر بگوئیم یك واسطه و میانجی عمومی بین سیستم عامل و هرگونه سخت افزار نصب شده بر روی كامپیوتر بود تا تمام برنامه های بازی و مالتی مدیا بتوانند از آن پیروی كنند . این واسطه عمومی همان Directx است ، یعنی چیزی كه می تواند مانع سردرگمی های بسیاری شود .




http://www.karapardaz.ir/Portals/0/arrow5.gif Directx واسطه ای است كه وظائف برنامه ریزی خاصی را بسیار ساده تر می سازد ، چه برای پدید آورنده بازی و چه برای ما كه فقط می خواهیم بنشینیم و آخرین بازی پرفروش را بازی كنیم . لیكن قبل از ینكه بتوانیم Directx و چگونگی كاركرد آن را توضیح دهیم ، لازم است به تاریخچه آن نگاهی بیندازیم . تاریخچه Directx
هر بازی نیاز به اجرای وظائف خاصی بصورت مكرر دارد . بازی نیازمند زیر نظر داشتن و كنترل داده های ورودی شما از طریق ماوس ، جوی استیك و یا یك بورد بوده و همچنین نیاز به نمایش تصاویری بر روی صفحه مانیتور و اجرای اصوات و موسیقی دارد . این تقریباً توصیف هر بازی در ساده ترین سطح آن است .
حال تصور كنید كه این امر برای برنامه نویسانی كه در ساختارهای كامپیوتر شخصی پیش از ویندوز اقدام به برنامه نویسی می كردند تا چه حد باور نكردنی و پیچیده بود .
لازم بود هر برنامه نویس روشی مختص به خود جهت خواندن كی بورد و یاحتی ردیابی اینكه آیا اصلاً جوی استیكی به سیستم متصل است یا خیر بنویسد ، چه برسد به اینكه بتوان از آن جهت باز كردن استفاده نمود . اعمال تكراری خاصی مورد نیاز بود تا بتوان حتی ساده ترین نوع تصویر را در صفحه نمایشگر نمایش داد و یا حتی صدایی ساده را اجرا نمود .
اساساً ، برنامه نویسان بازی ها در سطحی بنیادی با سخت افزار كامپیوتر كار می كنند . هنگامی كه مایكروسافت ویندوز را معرفی نمود ، جهت برقرای ثبات و موفقیت پایگاه كامپیوتر شخصی ضروری بود تا كارها قدری برای برنامه نویسان و بازیكنان ساده تر شود .
چه كسی حاضر بود زحمت نوشتن بازی برای ماشینی را بكشد كه در آن هر بار كه قصد كار بر روی بازی جدیدی را داشت ، می بایست همه چیز را از نو بنویسد ؟
ایده مایكروسافت ساده بود : كار كردن مستقیم برنامه نویسان با سخت افزار را متوقف كرده و بجای آن یك toolkit عمومی بسازد كه بتوانند آن را مورد استفاده قرار دهند . پس Directx متولد شد .

http://www.karapardaz.ir/Portals/0/arrow5.gif چطور كار می كند ؟
در ابتدایی ترین سطح Directx بعنوان یك واسطه بین سخت افزار در كامپیوتر شخصی و خود ویندوز ، بخشی از API ویندوز یا واسطه برنامه نویسی برنامه های كاربردی Application Programming Interface است .
برای مثال هنگامی كه نویسنده یك برنامه بازی می خواهد یك فایل صوتی اجرا شود ، صرفاً فراخوانی (call) به تابع كتابخانه (library function) صحیح می باشد . هنگامی كه بازی اجرا می شود ، عملكرد مزبور Directx API را فرا می خواند كه به نوبه خود فایل صوتی را به اجرا در می آورد . برنامه نویس به دانستن نوع كارت صدایی كه با آن سروكار دارد ، توانائی های كارت مزبور و چگونگی مكالمه با آن نیاز ندارد . ماكروسافت Directx را فراهم آورده است و سازنده كارت صدا نیز درایوی كه توان اجرای Directx را داشته باشد فراهم كرده است . برنامه نویس تقاضای صدایی كه باید اجرا شود را می نماید و صوت مزبور اجرا می شود بدون توجه به دستگاهی كه صدا بر روی آن باید اجرا شود .
از دیدگاه ما بعنوان بازیكنان نیز Directx اوضاع را بطرز غیر قابل باوری تسهیل می نماید ، حداقل بصوت تئوری . شما كارت صدای جدیدی را جایگزین كارت قدیمی تان می كنید و كارت جدید به همراه درایو می آید . دفعه بعد كه بازی مورد علاقه خود را بازی كردید ، هنوز می توانید صداها و موسیقی آن را شنیده و ناچار به انجام هیچگونه تغییرات پیكربندی پیچیده ای نمی باشید .
در ابتدا ، Directx زندگی خود را بعنوان یك Toolkit ساده آغاز نمود : سخت افزارهای اولیه محدود بوده و صرفاًَ گرافیكی بسیار ابتدایی مورد نیاز بود . با تكامل نرم افزارها و سخت افزارها از نظر پیچیدگی ، Directx نیز تكامل یافت .
اكنون Directx بسیار بیشتر از یك Toolkit گرافیكی بوده و اصطلاح مزبور ، در بر گیرنده گزیده گسترده ای از روتین ها می باشد . برای مثال روتین DirectInput می تواند با همه گونه ابزار ورودی از ماوس دو دكمه ای گرفته تا جوی استیك های پیچیده مخصوص عملیات پرواز سروكار داشته باشد و سایر بخش ها شامل DirectSound برای ابزارهای صوتی است و DirectPlay كه یك Toolkit برای بازی های چند بازیكنی Online فراهم آورده است .

http://www.karapardaz.ir/Portals/0/arrow5.gif نسخه های Directx
نسخه فعلی Directx در زمان نوشتن این مقاله Directx ۹.۰c است . این واسطه بر روی كلیه نسخ ویندوز از ویندوز ۹۸ گرفته تا ویندوز سرور ۲۰۰۳ به همراه كلیه نسخ فی مابین آن ها اجرا می گردد . لیكن این Toolkit بر روی ویندوز ۹۵ اجرا نمی شود : اگر دستگاهی دارید كه روی آن ویندوز ۹۵ نصب شده است ، ناچارید به استفاده از نسخه قدیمی تر و كم توان تر ۸.۰a می باشید . ویندوز NT۴ نیز نیازمند نسخه خاص خودش است كه در این مورد خاص Directx ۳.۰a است .
با این همه نسخ متفاوت Directx كه طی سنوات متمادی در دسترس قرار گرفته است ، ردیابی نسخه هایی كه به آن ها نیاز دارید مشكل و مشكل ترمی شود . در تمام موارد به جز موارد بسیار نادر ، كلیه نسخ Directx قابلیت سازگاری با نسخ قدیمی تر را نیز دارند . یعنی بازی هایی كه می گویند نیازمند Directx ۷ هستند ، به راحتی با نسخه های جدید تر نیز اجرا خواهند گردید ، ولی با نسخ قدیمی تر خیر . بسیاری از عناوین جدید بازی ها بطور دقیق اعلام می نمایند كه نیازمند Directx ۹ بوده و بدون نصب دقیقاً آخرین نسخه آن ، اجرا نخواهد گردید . این امر بخاطر آن است كه بازی های مزبور از ویژگی های جدیدی كه با این نسخه معرفی گردیده است ، استفاده می نمایند . البته دیده شده كه برنامه نویسان تنبل نیز گاهی آخرین نسخه Directx را بعنوان نسخه مورد نیاز بازی خود معرفی می كنند ، در حالیكه بازی مورد بحث از هیچ كدام از موارد تقویت یافته جدید استفاده نمی كند . لیكن بطور كلی ، اگر عنوان یك بازی به نسخه ای از Directx به اینصورت پیوند خورده باشد ، قبل از اینكه بتوانید بازی كنید ، لازم است Directx خود را ارتقاء دهید .
اصلاحات انجام گرفته در ریشه كد Directx بدین معناست كه ممكن است حتی در بعضی از بازی ها بهبودهایی را پس از ارتقاء به آخرین نسخه ساخته شده از Directx ، مشاهده نمایید . دان لود و نصب Directx نیز نباید چندان پیچیده باشد .

http://www.karapardaz.ir/Portals/0/arrow5.gif ارتقاء Directx
كلیه نسخ قابل دسترس ویندوز به هرماه شكلی از Directx بعنوان جزئی از هسته (core) سیستم ، كه قابل حذف نمی باشد می آیند .
لیكن بسیاری از بازی های جدید نیازمند آخرین نسخه Directx جهت اجرای كامل و یا اصولاً هر گونه اجرایی می باشند .
عموماً بهترین محل جهت نصب آخرین نسخه Directx ، بخش اختصاص یافته به آن در سایت اینترنتی مایكروسافت می باشد كه در آدرس www.microsoft.com/windows/directx (http://p30city.net/redirector.php?url=http%3A%2F%2Fwww.microsoft.com%2Fwindows% 2Fdirectx) یافت می شود . در هنگام چاپ این مقاله ، آخرین نسخه در دسترس برای دان لود عمومی نسخه Directx.۹.۰c بود . می توانید یك installer ساده را دان لود كنید كه هنگام نصب به نوبه خود آن اجرایی كه سیستم جهت ارتقاء نیاز دارد را دان لود می نماید و یا بسته نرم افزاری توزیع شده را بطور كامل جهت نصب Offline بعدی دان لود نمائید .
منبع خوب دیگر برای Directx خود بازی ها هستند . اگر بازی به نسخه خاصی از Directx نیاز داشته باشد ، نسخه مزبور روی CD نصب بازی خواهد بود و ممكن است حتی بطور خودكار توسط Installer بازی روی سیستم نصب گردد .

http://www.karapardaz.ir/Portals/0/arrow5.gif تشخیص علت مشكلات
تشخیص علت مشكلات نصب Directx می تواند مشكل ساز باشد ، بخصوص اگر ندانید كدامیك از اجزاء آن سبب از كار افتاده بازی جدیدی شده است كه به تازگی خریداری نموده اید .
خوشبختانه ، مایكروسافت یوتیلیتی مفید بنام Directx Diagnostic Tool را فراهم كرده ، هر چند كه آن را مشخص نساخته است . این ابزار را در هیچ نسخه ای از ویندوز در منوی Start نمی توانید بیابید ، و هر نسخه ویندوز نیز ابزار مزبور را در جایی متفاوت با سایر ویندوزها نصب كرده است .


راحت ترین راه استفاده از این ابزار چنین است كه كادر محاوره RUN را در منوی Start باز و در آن dxdiag را تایپ و سپس روی OK كلیك كنید . هنگامی كه این برنامه برای اولین بار بارگذاری می شود ، چند ثانیه ای طول می كشد تا نسخه نصب شده Directx را بررسی كرده و مشكل را بیابد .
ابتدا برگه Directx File اطلاعاتی راجع به هر یك از فایل هایی كه نسخه نصب شده مورد استفاده قرار می دهد را نشان می دهد .
بخش Notes در ذیل برگه مزبور نیز ارزش بررسی را دارد ، زیرا فایل های مفقودی یا معیوب در اینجا علامتگذاری می گردند .


برگه هایی كه علامت های Display ، Music ، Input و Network را دارند ، همگی با مناطق خاص همنام خود در Directx مرتبط می باشند و بجز برگه Input ابزارهایی را جهت آزمایش عملكرد صحیح برروی سخت افزار دستگاه در اختیارتان می گذارند . نهایتاً برگه Move Help روشی مفید جهت شروع Directx Troubleshooter را فراهم می آورد كه ابزار حل مشكل خط ساده مایكرو سافت برای بسیاری از موارد معمول و عمومی Directx می باشد .

نگاهی به DirectX 10

این روز ها زمزمه های زیادی از DirectX10 شنیده می شود و سوالات زیادی در این رابطه مطرح گردیده است. بخصوص سوالاتی در این رابطه که آیا DirectX10 فقط برای ویندوز ویستا طراحی شده است و تا زمانی که ما مجبور به استفاده از XP باشیم، نمی توانیم از آن استفاده کنیم و اینکه چه برتری هایی نسبت به نسخه قبلی دارد؟


شاید با مقایسه تصویر های زیر در بازی Flight Simulator X شرکت مایکروسافت، کمی به تفاوت آنها پی ببرید:

http://www.irancg.com/images/Image/articles/-dey86/0010/directx2.jpg


جهت بررسی موضوع و پاسخ به چنین سوالاتی، تا جایی که در سایت های مختلف مربوط به این موضوع، جستجو نمودیم، باید بگوییم که بله! و شاید دلیل آن این باشد که در ویندوز ویستا، معماری درایوری کاملا جدیدی عرضه شده است که توسط آن امکان استفاده از DirectX10 و فواید مربوط به آن برای طراحی بازی ها به وجود آمده است و همین دلیل اصلی ، در ساختار و اعماق سیستم عامل ویستا گنجانده شده و از این جهت، ویندوز های قدیمی تر فاقد چنین امتیازی هستند. پس بر اساس اطلاعات موجود، نتیجه می گیریم که نسخه ای از DirectX10 برای ویندوز XP وجود نخواهد داشت.


البته این امکان وجود دارد که DirectX 9.L به عنوان بخش گسترش یافته ای برای XP در نظر گرفته شده باشد. اما بطور قطع DirectX10 فقط برای ویستا طراحی شده است.


بنا به گفته ای مایکروسافت و طراحان بازی های مبتنی بر DirectX 9، این بازی ها در ویستا کمی سریعتر کار می کنند که البته Benchmark ها و نسخه های در دسترس ویستا این مسئله را هنوز تایید نمی کنند. البته این مسئله می تواند با ارئه نسخه های جدید تر ویستا تغییر بیابد. یکی از مسائل دیگر این است که ویستا از OpenGL پشتیبانی نمی کند.


حال ببینیم که این نسخه چه برتری هایی نسبت به نسخه های قبل خود دارد؟ بنا به گفته های مایکروسافت، یکی از فواید DirectX10 این است که گرافیک آن حدود 8 برابر روانتر و سریعتر نسبت به DirectX9 اجرا می شود. البته یادمان نرود که حدود 4 سال از اولین تاریخ پیدایش DirectX9 می گذرد. این مسئله با توجه به کنترل و ارتباط مستقیم کارت گرافیکی و توسط برداشتن محدودیت هایی که در DirectX9 به علت ساختار آن قابل رفع نبود، امکان پذیر شده است. علاوه بر مطلب گفته شده، DirectX10 امکان Geometric-Shader و Model Shader 4.0 را فراهم ساخته و درون خود مدیریتی برای Texture ها فراهم ساخته است. همچنین از حافظه کارت گرافیکی بهتر استفاده شده و روند های بسیاری می توانند در آن واحد به CPU دسترسی پیدا کنند. در واقع باید گفت CPU در DirectX10 فشار کمتری را تحمل می کند و در هنگام نیاز با توجه به قابلیت ها و مدیریت DirectX10 ، می تواند با توان لازم، مشغول کار اصلی خود شود، یعنی: محاسبه گرافیک.


درهمین زمینه باید گفت، تصاویر بازی هایی مانند Fligh SimulatorX و Crysis ، تحت ویندوز ویستا و تحت DirectX10 ، بسیار شفاف تر از اجرا در ویندوز XP خواهند بود. خود سازندگان بازی Crysis اعلام کرده اند که توسط امکانات توسعه یافته DirectX10 ، بازی آنها نه تنها زیبا تر جلوه می کند، بلکه درخواست های کمتری را نیز از سیستم طلب می نماید، چراکه یک پردازنده گرافیک مبتنی بر DirectX10 می تواند بیشتر کار را بر عهده بگیرد.


در این میان باید واقع بین بود و به همین دلیل هم پیش بینی می شود، بازی های مربوط به DirectX10 در سریع ترین حالت، در اواخر سال 2007 و اوایل 2008 عرضه شوند. زیرا اگرچه تصمیم در مورد استفاده از کدام تکنولووی در ساخت یک بازی به سرعت انجام می پذیرد، اما ساخت آن زمان زیادی را در بر خواهد گرفت.


در عین حال هدف اصلی مایکروسافت با DirectX10 ، علاقمندان به بازی های کامپیوتری است و این هدف توسط ویندوز ویستا عملی خواهد شد. به عبارتی علاقمندان به بازی های کامپیوتری، جزو آن گروهی قرار می گیرند که به علت سود سرشار این رشته از صنعت کامپیوتر، مایکروسافت توجه خاصی را به آنها مبذول نموده و تلاش مایکروسافت در زمینه ارائه DirectX10 برای ویستا و همچنین کنسول های بازی خود، مبین این نظر و توجه خاص می باشد. البته در این زمینه شرکت های سازنده سخت افزار و بازی ها نیز به سود کافی و سرشار خواهند رسید.


مایکروسافت معتقد است، کامپیوتر ها علاوه بر کارکرد های متعارف خود که با ویستا توسعه خواهد یافت ، قرار است با Vista تبدیل به یک پلتفرم حقیقی برای بازی ها شوند. در این چارچوب، یک لوگو با نام Game For Windows نیز وجود دارد که مدتی است بر روی جعبه های مربوط به بازی های بسیاری که در ویندوز ویستا قابل اجرا هستند، وجود دارد. از اولین نوع این بازی ها می توان به Company of Heroes و Flight Simulator X اشاره کرد.


نویسنده : بنیامین اسدی
www.irancg.com

ناگفته هاي ‏DirectX10‎‏ از ديدگاه سخت افزاري



DirectX10‎ وWindows Graphic Foundation 2.0 ‎ اسامي هستند كه ميتوانند انقلاب جديدي را در گرافيك هاي سه بعدي و بازي هاي ‏پيشرفته كامپيوتري نويد دهند. هنگام عرضه Windows Vista‏ در ابتداي سال جاري ميلادي ما شاهد حضور ‏API‏ جديد شركت ‏Microsoft‏ يعني DirectX 10‎‏ بوديم كه استانداردهاي موجود براي پردازش سه بعدي و تجربه چند رسانه اي كاربران را به سطح جديدي ارتقأ ‏داده است.هرچند زمان زيادي از معرفي ‏DirectX 10‎‏ مي گذرد، اما ناگفته هاي زيادي در رابطه با اين ‏API‏ بنيادي وجود دارد كه ‏در اين مقاله به بررسي آنها پرداخته شده است.



حافظه مجازي در ‏DirectX 10‎

API‏ يا واسط نرم افزاري ‏DirectX‏ از مجموعه اي از اينترفيس ها تشكيل شده است كه مشخص ميكنند توسعه دهندگان ‏بازي ها و نرم افزارهاي مختلف چگونه بايد با سخت افزار به صحبت بپردازند. نوشتن يك برنامه براي يك ‏API‏ استاندارد بسيار ‏ساده تر از نوشتن و بهينه سازي همان برنامه براي اجرا بر روي سخت افزارهاي خاص است. به منظور هرچه يكپارچه تر كردن ‏سخت افزار و نرم افزار، مايكروسافت يك بازنگري كلي را بر روي ‏DirectX‏ اعمال كرده است. از آنجايي كه اين ‏API‏ در طول ‏زمان حياط ‏Windows Vista‏ به عنوان پايه و اساس توسعه و اجراي هر نرم افزار و يا سخت افزار جديدي مورد استفاده قرار ‏خواهد گرفت، ‏Microsoft‏ سعي كرده است با ارايه برخي از مشخصات پيشرو و كاملا جديد و علاوه بر آن ساده سازي اين ‏API‏ به برنامه نويسان امكان دهد تا با سرعت و سهولت بتوانند با دريافت حداكثر كارايي از سخت افزارهاي ‏PC‏ ،نرم افزارها و ‏بازي هايي با كيفيت و كارايي بالا را طراحي كنند.‏

Direct3D‏ قسمتي از ‏DirectX‏ است كه مستقيما بر اجرا و عملكردهاي نرم افزارهاي سه بعدي نظارت دارد. در حقيقت ‏مهمترين بخش ‏DirectX‏ ، ‏Direct3D‏ است. بزرگترين تحولات صورت گرفته در ‏DirectX10‎‏ نيز مستقيما به ‏Direct3D‏ مربوط مي ‏شود. ‏Direct3D10‎‏ با يكپارچه كردن دستورالعمل ها و استاندارد نمودن مشخصات سايه زن هاي قابل برنامه نويسي، برنامه ‏نويسان را از شر سايه زن هايي كه هر سازنده به صورت اختصاصي طراحي و روانه بازار ميكرد رها ميسازد. بعلاوه مايكروسافت ‏در مدل درايورهاي مربوط به كارت هاي گرافيك و نمايشگرها نيز تجديد نظر كرده است.

به اين خاطر كه در Windows Vista‏ تمام دسك تاپ به صورت سه بعدي به نمايش در مي آيد، كارت گرافيك ديگر تنها براي بازي كردن مورد ‏استفاده قرار نمي گيرد. هنگامي كه شما يك صفحه نمايش سه بعدي داريد و هر برنامه را در صفحه سه بعدي مربوط به ‏خودش اجرا مي كنيد، درايورها كارت گرافيك بايد به اندازه كافي با ثبات و انعطاف پذير باشد تا بتواند نقش پردازنده گرافيكي را ‏افزايش دهد. به همين منظور مايكروسافت تصميم گرفته است تا درايورها را به دو بخش مجزا تقسيم نمايد. يك بخش براي ‏اجراي دسك تاپ و بخش ديگر براي اجراي نرم افزارها و بازي هاي سه بعدي. اين تقسيم بندي براي افزايش ثبات زير ‏سيستم گرافيكي طراحي شده است و به سيستم عامل امكان ميدهد حتي در صورتي كه يك برنامه كاربردي و يا بازي سه ‏بعدي به علت خطاهاي نرم افزاري و يا سخت افزاري متوقف ميشود، همچنان و با وجود يك دسك تاپ كاملا سه بعدي قابل ‏استفاده و با ثبات باقي بماند. وجود چنين نوآوري هايي همچنين به اين معني است كه مايكروسافت ‏DirectX10‎‏ را براي ‏Windows XP‏ ارايه نخواهد كرد، به خاطر اينكه بسياري از پيشرفت هاي صورت گرفته در ‏Direct3D10‎‏ مستقيما به مشخصات ‏مدل جديد درايور كارت گرافيك ‏Windows Vista‏ نياز خواهد داشت.‏

استفاده وسيع تر از توانايي هاي كارت گرافيكي براي اجراي كاربردهاي مختلف، نياز به اختصاص منابع سيستمي بيشتر از ‏سوي سيستم عامل به آن را دارد. سيستم عامل بايد به كاربردها امكان دهد تا بتوانند سخت افزار را به نحو موثرتري به ‏اشتراك بگذارند. بزرگترين تغيير در اين زمينه در ‏Windows Vista‏ تكنولوژيي است كه با نام ‏Virtualized Memory‏ و يا حافظه ‏مجازي شناخته مي شود. از اين پس كارت گرافيك فضاي حافظه اختصاصي خود را در حافظه سيستم خواهد داشت. اين ‏حافظه اختصاصي ميتواند براي ذخيره داده هايي كه داراي اندازه بزرگتر از حافظه محلي كارت گرافيك هستند مورد استفاده ‏قرار گيرد. هم اكنون كارت هاي گرافيكي گران قيمت و سطح بالا معمولا با حافظه هايي به ميزان 256 يا 512 مگابايت عرضه ‏ميشوند. اما بازي ها ميتوانند به سادگي تمامي حافظه موجود را براي ذخيره قطعات بسيار بزرگ داده، مانند بافت هاي با ‏وضوح بسيار بالا، مورد استفاده قرار دهند. ‏

http://www.irancg.com/images/Image/articles/-dey86/0031/d1.jpg

تصویری ساخته شده توسط Unreal Engine 3 برپایه DirectX 10

مدير عامل شركت ‏Epic Games‏ كه به تازگي موتور بسيار قدرتمند ‏Unreal Engine 3.0 ‎‏ را معرفي كرده و در حال توسعه ‏عناوين معروفي چون ‏UT2007‎‏ و ‏Gears Of War‏ ميباشد، در اين باره ميگويد: ‏

‏«تكنولوژي هايي مانند بافت گذاري مجازي ‏‎(Virtual Texturing)‎‏ ميتواند گلوگاه هاي مرتبط با اندازه بافت ها را در حافظه هاي ‏گرافيكي بر طرف نمايد. اندازه بافت هايي را كه ما در ‏DirectX9.0‎‏ ميتوانستيم با حفظ كارايي كامل استفاده كنيم به وسيله ‏حجم حافظه محلي كارت گرافيكي محدود شده بود، اما در ‏DirectX10‎‏ حجم آنها تنها توسط اندازه حافظه سيستم محدود ‏خواهد شد. او توضيح ميدهد كه با در اختيار داشتن چنين امكاناتي، سطح استفاده از بافت ها در بازي ها و نرم افزارهاي سه ‏بعدي بين 2 تا 4 برابر افزايش خواهد يافت كه اين براي كساني كه از موتور ‏Unreal Engine 3.0‎‏ براي توسعه بازي هاي خود ‏استفاده ميكنند بسيار عالي است. هرجا كه طراح بخواهد ميتواند از بافت هايي با كيفيت و وضوح بالا، براي مثال در وضوح ‏‎2048x2048‎‏ پيكسل، استفاده كند و سپس آنها را براي اجرا بر روي سيستم هاي با قدرت پايين تر به اندازه هاي كوچكتري ‏مقياس دهي كند.»‏

كارت هاي گرافيكي براي تطابق با استدانداردهاي ‏DirectX 10‎‏ و افزايش كارايي نياز به رعايت نكات دقيقي دارند. كارت هاي ‏گرافيك بايد داراي مجموعه كاملي از مشخصات باشند تا بتوانند تاييديه هاي ‏DirectX 10‎‏ را بدست آورند. البته اين استاندارها ‏به طور كامل با آنچه كه در نسل فعلي كارت هاي گرافيكي شاهد ان هستيم متفاوت نخواهند بود. براي مثال كارت هايي كه از ‏DirectX 9.0c‏ و يا سايه زن هاي نسخه 2 پشتيباني كنند ميتوانند از بسياري از توابع موجود در ‏DirectX 10‎‏ نيز پشتيباني كنند. ‏اما ‏Microsoft‏ مشخصه هاي كاملا دقيقي را اعلام كرده است تا سازندگان مختلف پردازنده هاي گرافيكي مجبور به ساخت ‏سخت افزارهاي سازگار با يكديگر شوند. براي مثال تفاوت هاي موجود در واحد هاي مميز شناور پردازنده هاي گرافيكي ‏مختلف شركت هاي ‏ATI‏ و ‏nVIDIA‏ توسعه دهندگان بازي را براي سازگار كردن موتور بازي با هر دو نوع پردازنده گرافيكي تحت ‏فشار قرار ميداد، اما مشخصه هاي تعريف شده در ‏DirectX 10‎‏ كمك بزرگي به حذف اينگونه ناسازگاري ها در سخت افزارهاي ‏مختلف و در نتيجه كاهش هزينه و زمان توسعه نرم افزار براي كار با آنها خواهد كرد.


ديگر ويژگي هاي ‏DirectX10‎

مايكروسافت مشخصه هاي لازم براي طراحي پردازنده هاي سازگار با ‏Direct3D 10‎‏ را سريع اعلام كرد و تا سازندگان پردازنده ‏هاي گرافيك بتوانند هرچه زودتر كارت هاي گرافيكي مطابق با آن را ارائه دهند. با توجه به نكات گفته شده توسعه دهندگان نرم ‏افزار ديگر مجبور نخواهند بود تا هنگام عرضه هر پردازنده گرافيكي جديدي، محصولات خود را با آن منطبق كنند. طبق گفته ‏هاي مايكروسافت تنها هنگام ارايه ‏DirectX 11‎‏ آنها نياز به ايجاد تغييرات در نرم افزارهاي خود را خواهند داشت و تا پيش از آن ‏هر نرم افزاري كه براي كار با ‏DirectX 10‎‏ طراحي شده باشد ميتواند بدون اعمال هيچگونه تغييري از تمامي مشخصه هاي آن ‏پشتيباني نمايد. البته شايد هرگز نتوان جلوي نوشتن كدهاي بهينه شده براي يك پردازنده گرافيكي خاص را گرفت و ممكن ‏است همچنان شاهد مشخصه هاي اضافي عرضه شده از طرف شركتهاي مخلف سازنده سخت افزار باشيم كه توسعه ‏دهندگان مختلف ممكن است تمايل به پشتيباني از آنها را داشته باشند. اما بي شك نسل آينده نرم افزارها و سخت ‏افزارهاي سه بعدي بيش از پيش يكپارچه خواهند شد و رقابت آنها در ارائه ويژگي ها و قابليت هاي فراتر از ملزومات ‏DirectX10‎‏ خواهد بود. ‏

طبق اظهارات ‏Microsoft، ‏DirectX10‎‏ ميتواند با مديريت هوشمندتر منابع، افزايش بازده ‏API‏ و انتقال بيشتر بار كاري از ‏CPU‏ ‏به پردازنده گرافيك، كارايي را در بازي هاي مختلف از 6 تا 8 برابر افزايش دهد. البته اين امر اندكي اغراق آميز به نظر ميرسد ‏اما مسلما شاهد افزايش زيادي در كارايي خواهيم بود.‏‎ ‎براي اين منظورDirectX 10‎‏ و معماري خط لوله هاي پردازشي در داخل ‏پردازنده گرافيك براي به حداقل رساندن بار كاري بر روي ‏CPU‏ و زير سيستم حافظه، مجددا از ابتدا طراحي شده اند. مهمترين ‏موضوعي كه در اين زمينه مد نظر طراحان قرار داشته است، افزيش كارهايي بوده كه پردازنده گرافيكي قادر است بدون نياز به ‏گفتگو با ‏CPU‏ انجام دهد. به همين دليل هنگامي كه نياز به استفاده از ‏CPU‏ داشته باشيم، خواهيم توانست به شكلي بسيار ‏سريع و موثر از آن استفاده كنيم. ‏

در ادامه مواردي را كه سبب افزايش كارايي هنگام استفاده از ‏DirectX 10‎‏ ميشود را ذكر ميكنيم:‏

• با استفاده از بافرهاي جديد براي مقادير، بازده عملياتي سايه زن ها هنگام ارسال و دريافت داده هاي مورد نياز ‏مانند مكان نورها، مشخصات مواد و غيره، افزايش خواهد يافت. علاوه بر اين با حذف داده هاي زايد، حجم عظيمي ‏از نقل انتقال هاي موجود بين ‏API‏ و درايور حذف خواهد گرديد. اين امر به ميزان قابل توجهي باعث كاهش فراخوان ‏داده ها توسط ‏API‏ و از بين بردن بار اضافي بر روي پهناي باند حافظه شده و اجازه خواهد داد تا اعمالي كه قبلا نياز ‏به گفتگو ميان ‏API‏ و درايور داشتند، در سطح درايور انجام شوند.‏

• با استفاده از آرايه هاي جديد بافت گذاري، پردازنده گرافيك خواهد توانست تا به طور شناور موارد استفاده از بافت را ‏تغيير داده و بدون نياز به فراخواني و يا ذخيره، آن را مجددا مورد استفاده قرار دهد.‏

• با بررسي داده هاي مربوط به هر فريم، داده هاي نالازم بدون هيچ فعل و انفعالي با پردازنده حذف خواهد شد. ‏تكنيك فوق از تكنيك هاي بررسي مختصات عمق به صورت سلسله مراتبي براي تشخيص و حذف اشيايي كه ‏توسط اشيا ديگر پوشانده شده و قابل ديد نيستند استفاده مينمايد. اين تكنيك قبلا نيز در پردازنده هاي گرافيكي ‏مختلف مورد استفاده قرار گرفته بود اما مهمترين تفاوت تكنيك فوق با تكنيك هاي قبلي، بررسي اطلاعات فريم ‏قبلي براي يافت و حذف اين اشيا است كه نياز به محاسبات جداگانه براي هر فريم را از بين برده و سربار عمليات را ‏تا حد زيادي كاهش ميدهد.‏

• Direct3D 10‎‏ داراي مشخصات منحصر به فردي است كه به كاربردها اجازه ميدهد آن را با توجه به نياز خود تنظيم و ‏بهينه كرده و در نتيجه كارايي را در تمام شرايط در سطح بالايي نگه دارند.‏

• با پشتيباني از سايه زن هاي نسخه 4 ‏‎(Shader Model 4.0)‎، پردازنده گرافيكي قادرخواهد بود تا تعداد بسيار ‏بيشتري از دستورالعمل ها را در هر سيكل كلاك انجام دهد. علاوه بر اين با استفاده از تعداد زيادي دستور العمل ‏جديد ميتوان كار بسيار بيشتري را از ‏CPU‏ به پردازنده گرافيكي منتقل كرد. در جدول زير ميتوانيد تفاوت هاي موجود ‏ميان نسخه هاي قبلي سايه زن ها را با سايه زن هاي جديد نسخه 4 مشاهده كنيد:

http://www.irancg.com/images/Image/articles/-dey86/0031/d2.jpg

جدول مقایسه Shader Model های نسخه 1 الی 4

سايه زن هندسي در ‏DirectX 10‎

Direct3D 10‎‏ يك مرحله سايه زن جديد را به خط لوله هاي گرافيكي اضافه كرده است. سايه زن هندسي (‏Geometric ‎Shader‏) واحد جديدي است كه ميان سايه زن راس ‏‎(Vertex Shader)‎‏ و سايه زن پيكسل ‏‎(Pixel Shader)‎‏ واقع شده است. يك ‏سايه زن راس سنتي تنها قادر به دريافت يك ورودي است و در نتيجه ميتواند تنها يك خروجي را ايجاد كند. توليد و يا حذف ‏مثلث ها براي سايه زن راس غير ممكن است زيرا اين سايه زن هميشه مجبور به توليد خروجي در ازاي هر ورودي دريافت ‏شده ميباشد. سايه زن هندسي به نرم افزار اجازه ميدهد تا به تمامي مختصات هندسي قبلي، خطوط، مثلث ها و نقاط در ‏واحد هاي مجاور هم دسترسي داشته باشد. اين سايه زن قادر است تا تغييراتي را در قطعات پيشين اعمال كرده و مثلث ها و ‏نقاط جديدي را قبل از ارسال اشياي مختلف صحنه به سايه زن پيكسل به آنها اضافه يا حذف نمايد.

علاوه بر اين سايه زن ‏هندسي قادر است تا نتايج محاسباتي را مستقيما به حافظه ارسال نموده و به آنها اجازه دهد تا در صورت نياز بدون دخالت ‏CPU‏ به جريان پردازش بازگردند. اين تغييرات اجازه خواهد داد تا جلوه هايي مانند ذرات، دود و يا انفجارها كه هميشه توسط ‏CPU‏ شبيه سازي ميشدند توسط پردازنده گرافيكي پردازش شوند. همچنين بازي ها ميتوانند از سايه زن هندسي در تركيب با ‏آرايه بافت ها براي شتاب دهي افكت هايي مانند ‏Cube Mapping‏ استفاده كنند. بازي ها از ‏Cube Mapping‏ براي ايجاد ‏انعكاس محيط اطراف بر روي يك شي استفاده ميكنند. مثلا انعكاس تصوير محيط آشپزخانه بر روي يك قوري شفاف را در نظر ‏بگيريد، شما ميتوانيد با توجه به اجزا محيطي كه قوري داخل ان قرار دارد، تصوير انعكاسي مناسب را محاسبه كرده و سپس ‏آن را بر روي قوري پياده سازي كنيد. انجام اين عمليات با استفاده از امكانات موجود حداقل به 6 عبور ‏‎(Pass)‎‏ نياز خواهد ‏داشت، اما سايه زن هندسي ميتواند با پردازش نمودار گرافيكي، يك ‏Cube Map‏ را تنها در يك عبور پردازش نمايد.‏

در تصوير زير ميتوانيد شماتيكي از خط لوله گرافيكي ‏DirextX 10‎‏ موسوم به ‏Windows Graphics Foundation 2.0‎را ‏مشاهده كنيد كه كليه پردازنده هاي گرافيكي سازگار با آن بايد از اين ساختار تبعيت كنند.

http://www.irancg.com/images/Image/articles/-dey86/0031/d3.jpg


شماتیک Windows Graphic Fundation 2.0


نویسنده: بهزاد فرخي ([email protected])
منبع: سخت افزار

از عکس و مطالب موفیدت ممنونم {پپوله}{داش مشتی}






این صفحه را در گوگل محبوب کنید

[ارسال شده از: پی سی سیتی]
[مشاهده در: www.p30city.net]
[تعداد بازديد از اين مطلب: 748]

bt

اضافه شدن مطلب/حذف مطلب




-


گوناگون

پربازدیدترینها
طراحی وب>


صفحه اول | تمام مطالب | RSS | ارتباط با ما
1390© تمامی حقوق این سایت متعلق به سایت واضح می باشد.
این سایت در ستاد ساماندهی وزارت فرهنگ و ارشاد اسلامی ثبت شده است و پیرو قوانین جمهوری اسلامی ایران می باشد. لطفا در صورت برخورد با مطالب و صفحات خلاف قوانین در سایت آن را به ما اطلاع دهید
پایگاه خبری واضح کاری از شرکت طراحی سایت اینتن