PDA

View Full Version : فرق اوپن جی ال با دایرکت ایکس چیه؟



khareh_siah
چهارشنبه 02 فروردین 1385, 22:22 عصر
فرق اوپن جی ال با دایرکت ایکس چیه؟

HO457
چهارشنبه 02 فروردین 1385, 23:05 عصر
فکر کنم منظورت فرق opengl با direct3d باشه:
http://www.xmission.com/~legalize/d3d-vs-opengl.html
http://en.wikipedia.org/wiki/Direct3D_vs._OpenGL
http://www.answers.com/topic/direct3d-vs-opengl

kochol
پنج شنبه 03 فروردین 1385, 19:53 عصر
سلام
زیاد خودتو مشغول نکن برای ویندوز فقط DirectX برای بقیه سیستم عامل ها فقط OpenGL چرا؟
چون رو ویندوز بعد از اپن جی ال 1.1 دیگه ورژن های جدید اپن جی ال برای ویندوز نیومد و با کمک کارت های گرافیک فکر کنم اپن جی ال 1.5 قابل اجرا هست ولی چیزی که اپدیت نشه به درد نمی خوره.
برای بقیه سیستم عامل ها مثل لینوکس opengl ورژن 2 هست.

Delphi Skyline
پنج شنبه 03 فروردین 1385, 21:45 عصر
DirectX قدرتمند تره اما خوب سختتر هم هست .

Ehsansh
جمعه 11 فروردین 1385, 22:08 عصر
سلام
زیاد خودتو مشغول نکن برای ویندوز فقط DirectX برای بقیه سیستم عامل ها فقط OpenGL چرا؟
چون رو ویندوز بعد از اپن جی ال 1.1 دیگه ورژن های جدید اپن جی ال برای ویندوز نیومد و با کمک کارت های گرافیک فکر کنم اپن جی ال 1.5 قابل اجرا هست ولی چیزی که اپدیت نشه به درد نمی خوره.
برای بقیه سیستم عامل ها مثل لینوکس opengl ورژن 2 هست.

من شنیدم کارت گرافیک ها برای خودشون نسخه های OpenGL ارائه میدن.
آیا این نمیتونه کاربرد خوبی داشته باشه؟
حیفه OpenGL به این سادگی رو کنار بذاریم.

omid_Ahmadi
جمعه 11 فروردین 1385, 22:20 عصر
OpenGL اصلا با DirectX قابل مقایسه نیست. OpenGL رو میشه با قسمت Direct3D از DirectX مقایسه کرد. DirectX شامل قسمتهای دیگه هم هست مثل DirectDraw

kochol
شنبه 12 فروردین 1385, 10:48 صبح
DirectX قدرتمند تره اما خوب سختتر هم هست .

نمی دونم شاید ولی خوب دایرکت ایکس سیستمش شی گرایی هست.



من شنیدم کارت گرافیک ها برای خودشون نسخه های OpenGL ارائه میدن.

من فکر کنم اشتباه شنیدی مثلا کارت گرافیک ها را سازگار با نسخه 1.5 می سازند.

anubis_ir
شنبه 12 فروردین 1385, 10:58 صبح
اکثر کارتهای گرافیک، سازگار با استاندارد OpenGL هستند. اما بدلیل وجود مفهومی به نام اکستنشن در OpenGL ، توسعه آن نه تنها متوقف نشده بلکه هر سازنده سخت افزاری، بنابر توانایی‌های جدید کارتش، اکستنشن‌های جدیدی را می‌تواند به OpenGL اضافه کند. بدیهی است این موارد مختص به سخت افزارهای مربوطه هستند. (همچنین افزودن این موارد نیاز به کسب مجوز از SGI ، مایکروسافت و غیره نیز ندارد. بنابراین توسعه و افزودن آن سریعتر خواهد بود)

برای مثال کارتهای مربوط به NVIDIA اکستنشن‌های زیر را اضافه کرده‌اند (یا ساپورت می‌کنند):
http://developer.nvidia.com/object/nvidia_opengl_specs.html

Delphi Skyline
شنبه 12 فروردین 1385, 13:15 عصر
در حال حاضر به دلیل Cross Platform نبودن ActiveX شرکت های بازی سازی چند OS یی با OpenGL بازی می سازن .

seyedof
شنبه 12 فروردین 1385, 17:01 عصر
اکثر کارتهای گرافیک، سازگار با استاندارد OpenGL هستند. اما بدلیل وجود مفهومی به نام اکستنشن در OpenGL ، توسعه آن نه تنها متوقف نشده بلکه هر سازنده سخت افزاری، بنابر توانایی‌های جدید کارتش، اکستنشن‌های جدیدی را می‌تواند به OpenGL اضافه کند. بدیهی است این موارد مختص به سخت افزارهای مربوطه هستند. (همچنین افزودن این موارد نیاز به کسب مجوز از SGI ، مایکروسافت و غیره نیز ندارد. بنابراین توسعه و افزودن آن سریعتر خواهد بود)

برای مثال کارتهای مربوط به NVIDIA اکستنشن‌های زیر را اضافه کرده‌اند (یا ساپورت می‌کنند):
http://developer.nvidia.com/object/nvidia_opengl_specs.html

سلام
البته این یک نقطه ضعفه نه قوت. چون برنامه نویسی به نوع کارت گرافیک وابسته میشه. شما باید هر مثلا افکت رو دوبار پیاده سازی کنید یکبار برای مثلا کارتهای ATI یکبار برای nVidia.
از نظر سرعت پیشرفت هم که اخیرا دایرکت ایکس معمولا جلوتر بوده از نظر قابلیتهای جدید و بعدش OGL اون قابلیتها رو اضافه کرده.
ممنون علی

anubis_ir
شنبه 12 فروردین 1385, 17:47 عصر
البته به نظر من این مورد یک عیب محسوب نمیشه. چون فرض کنید کارت گرافیک خاصی امروز به بازار اومده و فقط هم همین کارت است که فلان عملیات نرم افزاری سنگین را الان به صورت سخت افزاری و بسیار روان ارائه می‌دهد. برای استفاده از این قابلیت و نو آوری جدید در OpenGL ، این شرکت فقط کافی است extension مربوطه رو ارائه بده (بدون اخذ مجوز از هیچیک از کمپانی‌های مرتبط با OpenGL). برنامه‌های استفاده کننده هم می‌دونند که "اگر" از این extension استفاده کنند برنامه اشان دیگر با کارتهای متداول کار نخواهد کرد. بنابراین فقط با ارائه یک اخطار به کاربر، برنامه را خواهند بست. (هرچند کارتهای گرافیکی عموما اکستنشن‌های نسبتا مشابهی را ارائه می‌دهند و کار با آنها زیاد زمان بر نیست)
http://www.gamedev.net/reference/programming/features/oglext/page2.asp

اما در مورد دایرکت‌تری‌دی هم آیا وضع پشتیبانی از نوآوری‌های سخت افزاری به همین صورت و سرعت است؟

kochol
شنبه 12 فروردین 1385, 22:11 عصر
سلام
یه قانونی هست که من سعی می کنم که همیشه از اون اطاعت کنم اونم اینه که هیچ وقت در مورد بحث های مذخرف اپن جی ال بهتره یا دایرکت ایکس شرکت نکنم ولی بگم که این اکستنشن ها رو فکر کنم یه کمیته ای باید تایید کنه تا بصورت رسمی در اپن جی ال اظافه بشن.

seyedof
یک شنبه 13 فروردین 1385, 09:07 صبح
سلام
این بحث مزخرف و بی فایده ای است. شبیه همون بحث سر اینکه سی پلاس پلاس برای گیم نویسی بهتره یا وی بی میمونه.
DirectX و OpenGL هر کدوم یه سری محسناتی دارند که اوونها رو برای یک سری کاربردهای خاص بهینه کرده. حتی میشه از سادگی استفاده هم نام برد. قدیما دایرکت ایکس قسمتی داشت به اسم Direct3D که واقعا مزخرف بود و کار کردن باهاش مشکل، در مقابل OGL خیلی ساده تر بود و ضمنا از نظر قابلیتها هم OGL به دلیل قدمت بیشتری که داشت جلوتر بود. از نسخه 8 دایرکت ایکس تغییرات اساسی در قسمت سه بعدی خودش انجام داد، این تغییرات در راستای ساده تر شدن و همچنین افزایش قدرت و قابلیتهاش بود. از مزایای OGL میشه به مالتی پلتفرم بودنش اشاره کرد ولی در مقابل دایرکت ایکس محسنات بسیار بیشتری داره حتی اینکه معماری COM در اوون استفاده شده برای برنامه نویسان تحت ویندوز یک حسن است. در حال حاضر برای گیم نویسی دایرکت ایکس حرف اول رو میزنه و بیشتر بازیهای موجود با این تکنولوژی کار میکنند همونطور که هنوز برنامه های سنگین و سیستمی رو با زبان سی مینویسند. حالا پیدا کنید پرتغال فروش را و فکر کنید که OGL از دایرکت ایکس بهتره که حتی برای لود کردن مش و خیلی چیزای دیگه پدر آدم در میاد.
چیزی که اینقدر واضحه و در تمام دنیا هم دارن بیشتر از دایرکت ایکس استفاده میکنند نیازی به بحث بیشتر نداره، من تعصبی روی این قضیه ندارم اما دوست هم ندارم کسی به بیراهه بره مخصوصا توی این انجمنها که ممکنه خیلی افراد تازه کار این رو مطالعه کنند و در اثر یک راهنمایی اشتباه مسیر زندگیشون عوض بشه.
آفتاب آمد دلیل آفتاب
ممنون علی

kochol
یک شنبه 13 فروردین 1385, 19:58 عصر
در هر صورت همونی که من از اول گفتم اگر برای ویندوز برنامه می نویسید فقط دایرکت ایکس.

touraj
پنج شنبه 04 خرداد 1385, 17:29 عصر
طبعاً دایرکت ایکس با توجه به قابلیتها و عمومیتی که داره بهتر به نظر میرسه

ali6160
سه شنبه 17 مرداد 1385, 02:55 صبح
opengl بهتر هستش ...
و آیندش هم روشن تر !!!
http://en.wikipedia.org/wiki/OpenGL_vs._Direct3D

دانشمند جوان
جمعه 20 بهمن 1385, 00:57 صبح
سلام
بابا منم دیوونه شدم دیگه یه سوال هر جارسیدم کردم هیچکس هم جوابمو نداده مجددا سوال اینه ؟
من سورس بازی با dirextX رو دارم ولی به هیچ وجه نتونستم اونو کامپایل و اجرا کنم و error زمان اجرا می دهد کسی میتونه به داد من برسه و کمک کنه دلیل این اشکال کجاست ؟؟؟؟؟؟؟
(با ندامت تمام !)تو رو خدا کمکم کنین.