در پست قبلی درباره directx توضیحات مختصری دادم که کارش چی هست و وجودش در ویندوز چقدر موثر است. و قول دادم که یک پست دیگر درباره تفاوت بین نسخه های directx بنویسم که جواب سوال اکثر کاربران را بدهم که:چرا باید جدیدترین نسخه directx را داشته باشیم؟
چرا بازیها تا جدیدترین directx را نداشته باشیم اجرا نمیشود؟
و سوالات مشابه که در این زمینه بوجود می آید.
در مطلب قبلی راجع به directx گفتم که نسخه اولی آن در ویندوز ۹۵ و NT4 منتشر شد.
نسخه دوم آن در ویندوز NT4 sp3 منتشر شد. و تا نسخه ۵ آپدیت شد. و همینطور نسخه ۵ آن در ویندوز ۹۸ هم منتشر شد. و نسخه ۴ directx هرگز منتشر نشد.
تصویری را که دربالا مشاهده میکنید بازی مورد علاقه من در ۱۰ سال پیش بوده یعنی سال ۱۹۹۸ که با directx 6 کار میکرد. هنوز مراحل داستان و مخصوصا موزیک متنش در ذهنم هست واقعا یک بازی کاملا کار شده ای بود. این بازی آخرین بازی بود که انجام دادم و دیگر ترک بازیهای کامپیوتری کردم تا اینکه need for speed most wanted عرضه شد. چون از directx یک تا پنج زیاد تکنولوژی خاصی نداشت من از نسخه ۶ که directx پیشرفت کرد تا نسخه ۱۰.۱ آن که هم اکنون در ویستا sp1 هست را تفاوتهایشان را مینویسم. و همینطور تفاوت بین نسخه ۹ و ۱۰ را میبینید چقدر زیاد است.
در directx 6 قابلیتی بوجود آمد به نام bump mapping این قابلیت امکاناتش باعث ایجاد پستی و بلندی روی سطوح را راحت تر میکرد و محیط در بازی واقعی تر به نظر میرسید.
بد از عرضه directx 6 کارتهای گرافیک که از geforce 256 شروع شد قابلیت ۳ی در آنها بوجود آمد که دنیای گرافیک را متحول کرد وظایفی در آنها بوجود آمد که دستورالعملهای مربوط به آنرا T&L که نام کاملش هست transformation and lightning تشکیل میداد. همین قضیه باعث بوجود آمدن directx 7 شد.
وقتی directx 8 منتشر شد باعث شد دو قابلیت pixel shader یعنی سایه زنی پیکسلی و vertex shader یعنی سایه زنی راسی به طور رسمی وارد دنیای پردازش ۳d بشوند. و تغییرات خیلی اساسی در دنیای سه بعدی بوجود آوردند یعنی اینکه میشود صدها یا هزاران چند ضلعی تشکیل داد که روی این سه ضلعی ها و چهارضلعیها رنگهای مختلف بپوشاند که همین باعث بالاتر رفتن وضوح تصویر و اینکه واقعی تر به نظر برسد شد. واحد سایه زنی اجازه میداد که همزمان ۱۲ دستورالعمل استفاده کند که این خود یک ضعف بود و در نسخه ۸.۱ اصلاح شد و دستور العملها به ۲۲ رسید و تا حدودی بهبود پیدا کرد.
تصویر بالا هنوز همان resident evil 2 هست که ضعف تصویر را نسبت به بازیهای امروزی میبینید در تصویر بالا قابلیت سایه زنی وجود ندارد در تصویر بالا قابلیت T&L وجود ندارد همین باعث میشه که با بازیهای امروزی قابل مقایسه نباشد.
برای افزایش کیفیت موضوعات ۳ بعدی directx 9 منشر شد و قابلیت پشتیبانی از نسخه ۲ سایه زنی داشت و واحد سایه زنی پیکسلی را قادر میساخت که همزمان از ۹۶ دستورالعمل استفاده کندکه همین باعث شد باز تغییرات زیادی در کیفیت ۳ بعدیها ایجاد شود. بعد از مدتی مایکروسافت موفق شد که این دستورالعملها را تا ۶۵۵۳۵ ارتقا بده که در نسخه directx 9.0c منتشر شد. و همینطور که هم اکنون مشاهده میکنید بازیهای امروزی که با این ورژن کار میکنند واقعا گرافیک بالایی دارند و همین دستورالعملها باعث شد که تا آنجایی که جا داره دست سازنده گان بازی در بالا بردن گرافیک و ۳d باز بشه و افکتهای باور نکردنی بکار برده بشه.
همینطور که در اول پست گفتم بعضیها فکر میکنند که بهترین directx نسخه ۹.0c هست و نسخه ۱۰ و ۱۰.۱ نسخه خوبی نیست. این بخاطر این هست که این اشخاص directx را بطور صحیح درک نکردند باید توجه کنید که هسته directx یکی هست و همیشه مطمئن باشید نسخه جدیدتر از نسخه قبلی بهتر هست. با ارائه نسخه ۱۰ شما باید آمادگی گرافیکهای بسیار خفنی که در بازیهای جدید ارائه میشوند را داشته باشید. directx 9.0c و نسخه ۱۰ با هم تفاوتهای بسیاری دارند که من هم اکنون توضیح میدم.
در نسخه ۹.0c واحدهای پردازشی سایه زنی پیکسلی و سایه زنی راسی به صورت مجزا از یکدیگر فعالیت میکردند و همین باعث میشد که تمام واحدهای مخصوص پردازش پیکسلی مشغول باشند ولی پردازشهای سایه زنی راسی آزاد بودند. با ارائه نسخه ۱۰ باعث شد که واحدهای پردازش سایه زنی یکی بشند و قابلیتی به نام unified shader بوجود آمد که باعث پردازش همزمان سایه زنی پیکسلی و راسی شد. در نسخه ۱۰ نه تنها نسخه سایه زنی ۴ وجود داره بلکه سایه زنی به نام ژئو متری (هندسی) هم داره که امکان پردازش تعییرات فیزیکی پیشرفته را به کارت گرافیک میده.
من در پائین یک جدول رسم میکنم که تفاوت بین نسخه ۹.0c و نسخه ۱۰ را ببینید.
من سعی کردم جدول بکشم ظاهرا بلاگفا با فایرفاکس سازگاری نداره.و من توضیح میدم.
تقویت کننده های موقت: نسخه۹ ۳۲ و نسخه ۱۰ ۴۰۹۶
تثبیت کننده های ثابت نسخه ۹ ۲۵۶ و نسخه ۱۰ ۴*۴۰۹۶
بافتها نسخه ۹ ۱۶ و نسخه ۱۰ ۱۲۸
حداکثر اندازه بافت نسخه ۹ ۴۰۴۸*۴۰۴۸ نسخه ۱۰ ۸۰۹۶*۸۰۹۶
همینطور که
میبینید تفاوت بین اعداد و ارقام زیاد هست.
نسخه ۱۰.۱ که با ویستا sp1 ارائه شد تغییرات کوچکی داره مثلا سایه زنی نسخه ۴.۱ ، ماسک پوششی ، انتخاب الگوی نمونه و موارد کوچکتر دیگه.
این مطلبی که من نوشتم به شما در خرید کارت گرافیک برای بازی بسیار کمک میکنه حالا شما میدانید که باید چه کارت گرافیکی بخرید تا بتوانید بالاترین کیفیت را از بازی بگیرید چون کارت گرافیک شما اگر با directx همخوانی داشته باشد شما بهترین بهره را برده اید اگر نداشته باشد پولتان را هدر داده اید.
چرا OpenGL از Directx شکست خورد؟
استفاده کردم.
سلام علی آقا
حالا چیجوری بفهمیم که کارت گرافیک با directx مهخوانی داره یا نه؟
اگه میگی ار جعبش میشه فهمید من که جعبشو ندارم
ممنون میشم منو راهنمایی کنی
سلام
کارت گرافیک مطمئن باش همیشه با directx همخوانی داره ولی مهم نسخه آن هست. هنگامیکه directx جدید منتشر میشه از اون به بعد کارتهای گرافیک سازگار با اون میشوند. برای اینکه ببینید کارت شما ورژن چند directx را support میکنه کافیه به سایت سازنده بروید.
ولی من بیشتر منظورم روی ورژن ۱۰ و ۱۰.۱ بود. اگر شما قصد بازی دارید که directx 10 یا ۱۰.۱ بخواد باید کارتی را بخرید که این directx را support کنه.
کارایی داشت
ممنونم!!
کارایی داشت
ممنونم