PDA

View Full Version : Direct X Or OpenGL in C#.net



benyamin_pc
یک شنبه 08 مرداد 1385, 14:45 عصر
سلام هر کی هر چی در رابطه با این تاپیک تو زبان سی شارپ یا سی می دونه لطفا بگه
چطور یه فایل که محتوای 3د داره رو میشه کشید تو محیط برنامه نویسی و ازش استفاده کرد
از الگوریتم direct x ya open gl از اینکه به جزییات شی سه بعدی چجوری میشه با برنامه نویسی دسترسی داشت اونها رو تغییر داد و خلاصه تسلط به یک شی سه بعدی مثل یه آبجکت برنامه نویسی:متعجب:
ممنون:لبخند:

Valadi
یک شنبه 08 مرداد 1385, 19:50 عصر
در زبان دلفی برنامه نویسی 3 بعدی آسان تر از آب خوردن است و فقط با توابع API کار میکنی
:چشمک: :چشمک: :چشمک: :چشمک: :چشمک: :چشمک: :چشمک: :چشمک:

benyamin_pc
یک شنبه 08 مرداد 1385, 19:56 عصر
ولی من با سی شارپ می خوام بدونم!

aidinwashere
دوشنبه 09 مرداد 1385, 02:36 صبح
میدونی که مطرح کردن یک سوال در چند بخش خلاف مقررات است؟

benyamin_pc
دوشنبه 09 مرداد 1385, 12:05 عصر
آخه این قسمت رو بعد دیدم
و فقط مخصوص بازی سازی سه بعدیه

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

benyamin_pc
چهارشنبه 11 مرداد 1385, 02:09 صبح
چطور یه فایل که محتوای 3د داره رو میشه کشید تو محیط برنامه نویسی و ازش استفاده کرد


از اینکه به جزییات شی سه بعدی چجوری میشه با برنامه نویسی دسترسی داشت اونها رو تغییر داد و خلاصه تسلط به یک شی سه بعدی مثل یه آبجکت برنامه نویسی

aidinwashere
چهارشنبه 11 مرداد 1385, 02:22 صبح
دیدی گفتم؟

benyamin_pc
چهارشنبه 11 مرداد 1385, 02:25 صبح
در حقیقت همون طوری که یه دایره میکشیم و باهاش تو محیط برنامه نویسی کار می کنیم
چجوری میشه از یه کره استفاده کرد؟؟
البته من نمی خوام خودم اون کامپایلرم طراحی کنم که کره رو مثلا با سی شارپ بکشم و بعد باش کار کنم می خوام مثلا یک کره ای که با تری دی مکس کشیدم رو بیارم تو سی شارپ و باش کار کنم البته تقریبا اینجوری خودتون که واردین اگه میشه راهنمایی کنین

kochol
یک شنبه 29 مرداد 1385, 19:06 عصر
تو می تونی از موتور های سورس باز اماده برای این کار استفاده کنی مثل irrlicht

AiatAzizi
یک شنبه 26 شهریور 1385, 20:46 عصر
من که چیزی نفهمیدم

kochol
یک شنبه 26 شهریور 1385, 21:48 عصر
سلام
من که خودم هم نفهمیدم سوال اصلی چی بوده ولی اگه سوالی داشتی که من بلد بودم در خدمتم.

alireza264
چهارشنبه 24 خرداد 1391, 23:06 عصر
سلام
بالاخره ما اصلا نفهمیدیم سوال چی هست فرق دایرکت ایکس و اپن جی ال می خوای یا نحوه نمایش یک شکل سه بعدی از یک فایل.
برای این کار باید از فرمت فایل های سه بعدی سر در بیاری که مشخصات نقطه ها و تکستچر ها و یا انیمیشن ها رو بخونی و ازش رندر بگیری.

با سلام خیلی خلاصه میشه گفت openGl مبتنی بر کارت گرافیگه یعنی اگه درایور کارت گرافیک کامل نصب نشده باشه اجرا نمیشه یا زمینه پرش دارد ضمن اینکه هه اشیا و حرکت ها و جلوه ها رو خودت باید بساری و کد نویسیش زیاد اما DirectX یک شتاب دهنده گرافیکی که درصورت نبودن درایور کارت گرافیک سرعت لازم برای اجرای انیمیشن ها رو میده و بعضی از اشیا و حرکت ها و جلوه هادرونش وجود داره ونیاز به ساختنش نیست در نتیجه کد نویسی کمتری داره همچنین میشه گفت که برنامه های opengl روی سیستم های متفاوت ممکنه عملکرد متفاوتی داشته باشندیا اجرا نشن اما DirectXاینطوری نیست

pswin.pooya
پنج شنبه 25 خرداد 1391, 01:06 صبح
با سلام خیلی خلاصه میشه گفت openGl مبتنی بر کارت گرافیگه یعنی اگه درایور کارت گرافیک کامل نصب نشده باشه اجرا نمیشه یا زمینه پرش دارد ضمن اینکه هه اشیا و حرکت ها و جلوه ها رو خودت باید بساری و کد نویسیش زیاد اما DirectX یک شتاب دهنده گرافیکی که درصورت نبودن درایور کارت گرافیک سرعت لازم برای اجرای انیمیشن ها رو میده و بعضی از اشیا و حرکت ها و جلوه هادرونش وجود داره ونیاز به ساختنش نیست در نتیجه کد نویسی کمتری داره همچنین میشه گفت که برنامه های opengl روی سیستم های متفاوت ممکنه عملکرد متفاوتی داشته باشندیا اجرا نشن اما DirectXاینطوری نیست

نه خير.
لطفا ديگه اين تاپيك هاي عهد بوق رو هم بالا نياريد

mohamad.zakery
یک شنبه 25 تیر 1391, 17:14 عصر
منم با حرف جناب pswin.pooya (http://barnamenevis.org/member.php?34511-pswin.pooya) موافقم که توضیح اون دوستمون اشتباهه!!!

اما نمی دونم چرا هر وقت سر مسئله مقایسه OpenGl یا DirectX باز میشه بحث به ناکجا میرسه!!!

فقط اینون به دوستان بگم که همه بالاتفاق قبول دارند که سرعت DirectX در ویندوز بالاتر از OpenGl هست!!!

حالا ضعفهای فراوونی داره این DirectX که بدترینش کراس پلتفرم نبودنشه!!!

ولی باید با واقعیت ها زندگی کنیم که امروزه 90% بازار سیستم عامل های دنیا در اختیار مایکروسافته!!!

و مطمئنم اگر کسی بگه من به ویندوز دسترسی اصلا ندارم دروغ میگه!!!

همه در دوران ما به ویندوز دسترسی دارن ولی همه به مکینتاش دسترسی ندارن!!!


اما انتخاب اینکه OpenGl یا DirectX دست خودتون و میتونین اونها را از این منبع به سرعت و سادگی یاد بگیرین!!
http://www.codesampler.com


اما چجوری فایل 3D را باید ترسیم کنین!!!
خیلی راحت!!!
اون فایل در یک نرم افزار 3D مثل 3DsMax طراحی میشه، میتونین اون فایل و با خروجی های خاص مثل FBX یا X File یا ... خروجی بگیرین
بعد باید یک لودر برای بارگزاری این فایل و ترسیم اون بنویسین

اما X File ها در DirectX 10 به بالا تابع Load ندارن و باید خودتون بنویسین اما در Directx9 تابع Load دارند.

اگر کارتون خیلی سادست من Xna پیشنهاد میکنم چون براحتی میتونین این کار با یکی دو خط کد انجام بدین.

alireza264
یک شنبه 25 تیر 1391, 20:11 عصر
من نفهمیدم که مطلبی که نوشتم از نظر این دو دوست کجاش اشتباه بودDiectX محصول مایکروسافته اما OpenGl هم از طرف شرکتهایی مثل Borland و Sony برای مقابله با انحصار مایکروسافت حمایت میشه
OpenGl یک سری توابع API و Open Source هستش یکی از دلایل پیشرفته DirctX همین Open Source بودن OpenGl بود
در خصوص 3DMAX هم باید عرض کنم که خروجی خود را بر اساس یکی از سه گزینه GDI - OPenGL یا DirectX تولید می کند که پیش فرضش DirectX هست ولی میتونین با استفاده از مسیر
Customiaze----> Preferences ----> View Port --->Choose Driver ---> Revert From DirectX
ضمنا" خروجی 3DMAX یک فیلم یا جلو ثابته ولی OpenGL یا DrectX انیمیشن پویا طراحی میکنن مثلا فرض کنید یک شی پس از برخورد به لبه های مانیتور بازگشت کنه اگه اندازه مانیتور تغییر کنه این در فیلم تولید شده 3Dmax درست جواب نمیده اما در کد نویسی بازم درست رفتار می کنه