• مقالات آموزشی
    • آموزش برنامه نویسی
    • آموزش الگوریتم
    • آموزش شبکه های کامپیوتری
    • آموزش های عمومی
  • ترجمه مقاله
    • لیست ترجمه کامل مقالات
    • لیست ترجمه مفهومی مقالات
  • تحقیق و پژوهش
    • لیست داکیومنت پایان‌نامه
    • لیست داکیومنت سمینار
  • پیاده سازی
    • سی پلاس پلاس ++C
    • برنامه نویسی OpenGL
    • سی شارپ #C
    • پایتون Python
    • اندروید Android
    • پی اچ پی PHP
    • متلب Matlab
  • پاورپوینت
    • پاورپوینت الگوریتم های بهینه سازی
    • پاورپوینت شبکه‌های کامپیوتری
    • پاورپوینت مهندسی کامپیوتر
    • پاورپوینت یادگیری ماشین
    • پاورپوینت درس و تحقیق
    • قالب آماده پاورپوینت
  • فیلم آموزشی
    • لیست فیلم های آموزشی
  • قالب آماده
    • لیست قالب آماده HTML
  • دانلود رایگان
  • مجله پی استور
  • ابزارهای آنلاین
    • برنامه نویسی آنلاین
    • تبدیل مبنای آنلاین
  • سفارش تدریس آنلاین
  • آموزش برنامه نویسی
  • آموزش الگوریتم
  • آموزش شبکه
  • آموزش عمومی

ورود

رمز عبور را فراموش کرده اید؟

هنوز عضو نشده اید؟ عضویت در سایت
  • درباره ما
  • تماس با ما
  • سفارش تدریس آنلاین
پی استور
0

ورود و ثبت نام

مقالات آموزشی
  • ترجمه مقاله
    • لیست ترجمه کامل مقالات
    • لیست ترجمه مفهومی مقالات
  • تحقیق و پژوهش
    • لیست داکیومنت پایان‌نامه
    • لیست داکیومنت سمینار
  • پیاده سازی
    • سی پلاس پلاس ++C
    • برنامه نویسی OpenGL
    • سی شارپ #C
    • پایتون Python
    • اندروید Android
    • پی اچ پی PHP
    • متلب Matlab
  • پاورپوینت
    • پاورپوینت الگوریتم های بهینه سازی
    • پاورپوینت شبکه‌های کامپیوتری
    • پاورپونت مهندسی کامپیوتر
    • پاورپوینت یادگیری ماشین
    • پاورپوینت درس و تحقیق
      • عمومی
      • مشاهیر و اشخاص
      • واقعیت مجازی
      • طراحی سایت
      • برنامه نویسی
      • علوم کامپیوتر
      • اینترنت اشیاء
      • سیستم عامل
      • ارز دیجیتال
      • کسب و کار
      • تکنولوژی
      • علوم
    • قالب آماده پاورپوینت
  • فیلم آموزشی
    • لیست فیلم های آموزشی
  • قالب آماده
    • قالب آماده HTML
  • مجله پی استور
  • ابزارهای آنلاین
    • برنامه نویسی آنلاین
    • تبدیل مبنای آنلاین

پروژه میله پرچم میدان در OpenGL در سی شارپ #C

خانهفروشگاهبرنامه نویسیبرنامه نویسی OpenGLپروژه میله پرچم میدان در OpenGL در سی شارپ #C
https://dl.programstore.ir/files/Uploades/Previews/opengl/plaza.mp4

پروژه میله پرچم میدان در OpenGL با استفاده از برنامه نویسی #C عنوان پروژه ای است که در این پست به آن پرداخته شده است.  پروژه میله پرچم میدان  سه بعدی 3D یکی از پروژه های محبوب و جالب در برنامه نویسی گرافیکی به کمک OpenGL است.

cropped-fav2.png

برنامه‌نویس: تیم برنامه نویسی پی استور

متشکل از اساتید و فارغ التحصیلان رشته های فنی - مهندسی

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

پروژه میله پرچم میدان در OpenGL در سی شارپ #C

برای شبیه سازی پروژه میله پرچم میدان  در سی شارپ از کتابخانه گرافیکی اپن جی ال OpenGL استفاده شده است. این کتابخانه در قالب چارچوب Tao.OpenGl به Microsoft Virtual Studio افزوده می شود تا بتوان از قابلیت های گرافیکی OpenGL در سی شارپ استفاده کرد.

TAO یک کتابخانه است که تمام توابع OpenGL را به Net. ارجاع می دهد. به این ترتیب شما از OpenGL در .NET استفاده می کنید. این پروژه بسیار مدولار است. این بدان معنی است که هر جسم تقریبا مستقل است. هر شی به طور واقعی شامل تمام منطق کاری خود است، بنابراین شما می توانید با بسیاری از وابستگی ها در سراسر پروژه آشنا شوید.

توضیحات سورس کد

پروژه میله پرچم میدان دارای 5 کلاس و یک فرم می باشد. که در ادامه به توضیح آنها می پردازیم:

  • کلاس SkyBox.cs

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

Gl.glEnable(Gl.GL_TEXTURE_2D); // enable opengl texturing
Gl.glBindTexture(Gl.GL_TEXTURE_2D,ContentManager.GetTextureByName
("back.bmp"));        //enabling texture for the portion of the skybox
Gl.glBegin(Gl.GL_QUADS);
Gl.glNormal3d(-1, 1, 1);
Gl.glTexCoord2f(1.0f, 0.0f); Gl.glVertex3d(x + width, y, z);
Gl.glNormal3d(-1, -1, 1);
Gl.glTexCoord2f(1.0f, 1.0f); Gl.glVertex3d(x + width, y + height, z);
Gl.glNormal3d(1, -1, 1);
Gl.glTexCoord2f(0.0f, 1.0f); Gl.glVertex3d(x, y + height, z);
Gl.glNormal3d(1, 1, 1);
Gl.glTexCoord2f(0.0f, 0.0f); Gl.glVertex3d(x, y, z);
Gl.glEnd();

با استفاده از Gl.glVertex3d نقطه ای از مربع روی صفحه را رسم می کنیم، با Gl.glTexCoord2f به OpenGL می گویم که در آن تصویر روی مربع خواهد بود و با Gl.glNormal3d بهopenGL جهت مربع را می گوییم. تمام این تماس ها بین Gl.glBegin (Gl.GL_QUADS) و Gl.glEnd () ساخته شده است.

  • کلاس Plaza.cs

این کلاس نقاشی از میدان را مدیریت می کند که اساسا برای طراحی مدل 3D با بافت است. این فرایند کپسوله شده است، بنابراین شما فقط این را در تابع ایجاد مشاهده می کنید:

m = ContentManager.GetModelByName("plaza.3DS"); // get the model
m.CreateDisplayList(); // this loads the model in opengl memory(displays lists)

و تابع رسم بصورت زیر است:

Gl.glPushMatrix();
Gl.glTranslatef(0, 1.4f, 0);
Gl.glScalef(0.2f, 0.2f, 0.2f);
m.DrawWithTextures();
Gl.glPopMatrix();
  • کلاس Flag.cs

پرچم شبکه ای از نقاط است که توسط یک تابع سینوسی ضرب می شود و به همین دلیل یک تابع سینوسی برای حرکت پرچم تعبیه شده است.

for (int x = 0; x < 47; x++)
 {
     // Loop Through The Y Plane
     for (int y = 0; y &lt; 10; y++)
         {
             // Apply The Wave To Our Mesh
             points[x, y, 0] = (float)((x / 5.0f) - 0.1f);
             points[x, y, 1] = (float)((y / 1.125f) - 0.1f);
             points[x, y, 2] = 
(float)(Math.Sin(Helper.DegreeToRad(((x/ 5.0f) * 40.0f)) * 2.0f));
          }      
     }
  • کلاس Camera.cs

این کلاس برای دست زدن به حرکت دوربین است. دوربین دید اول شخص دارد. ایده این است که ماوس را در مرکز صفحه قرار دهید و هر حرکت موشی در X و Y را به چرخش های زاویه ای ترجمه کنید و سپس ماوس را دوباره روی مرکز صفحه قرار دهید. همچنین دوربین قبل از حرکت در جهت، مدلی برخورد را نمایش می دهد. در اینجا یک نمونه است:

if (!Collision.CheckCollision(new Point3D(-newEyeX, -newEyeZ, 0)))
   {
      eyex = newEyeX;
      eyez = newEyeZ;
   }
  • کلاس MainClass.cs and Mainform.cs

Mainclass کلاس مدیریت است، شامل تمام اشیاء خواهد شد که بر روی صفحه کشیده می شود.

public void DrawScene()
        {
            plaza.Draw();
            sky.Draw();
            flag.Draw();  
            //DebugMode.WriteCamaraPos(200, 200); //work only in
                                                 32bits system
            Collision.DrawColissions();         
        }

Mainform فرم ویندوز است که این پروژه را نمایش می دهد. این شامل تایمر برای طراحی و به روز رسانی صحنه است.

تصاویری از خروجی پروژه

پروژه میله پرچم میدان در سی شارپ با opengl

پروژه میله پرچم میدان در سی شارپ با opengl

پروژه میله پرچم میدان در سی شارپ با opengl

پروژه میله پرچم میدان در سی شارپ با opengl

ویدئوی معرفی محصول

Your browser does not support the video tag.

درباره محصول

این محصول سورس پروژه میله پرچم میدان بصورت سه بعدی 3D در OpenGL با استفاده از برنامه نویسی #C است که در microsoft visual studio 2013 نوشته شده است. پروژه توسط کارشناسان پی استور تست و بررسی شده است و مورد تایید پی استور می باشد. این محصول دارای نشان تضمین کیفیت پی استور می باشد. برای دانلود پروژه آن را خریداری کنید. به محض خریداری لینک دانلود در دسترس خواهد بود.

گارنتی 7 روزه بازگشت هزینه

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

  • ۱۰۰ درصد مبلغ پرداختی در حساب کاربری شما شارژ می‌شود.
  • و یا 80 درصد مبلغ پرداختی به حساب بانکی شما عودت داده می‌شود.

پروژه های مرتبط با OpenGl

سورس کد شبیه سازی منظومه شمسی در #C با OPENGL
سورس کد شبیه سازی منظومه شمسی در #C با OPENGL
پروژه خانه سه بعدی 3D در OpenGL با استفاده از #C
پروژه خانه سه بعدی 3D در OpenGL با استفاده از #C
پروژه اتاق سه بعدی با در و پنجره و میز و قوری در OpenGl
پروژه اتاق سه بعدی با در و پنجره و میز و قوری در OpenGl
پروژه ساعت دیواری در OpenGl
پروژه ساعت دیواری در OpenGl

پروژه های پیشنهادی در سی شارپ

پروژه پردازش تصویر در سی شارپ #C
پروژه پردازش تصویر در سی شارپ #C
سورس کد برنامه نقاشی یا Paint در سی شارپ #C
سورس کد برنامه نقاشی یا Paint در سی شارپ #C
پروژه حضور و غیاب اساتید دانشگاه با #C و پایگاه داده Sql Server
پروژه حضور و غیاب اساتید دانشگاه با #C و پایگاه داده Sql Server
برنامه ماشین حساب در سی شارپ #C
برنامه ماشین حساب در سی شارپ #C
تشخیص پلاک خودرو در سی شارپ #C
تشخیص پلاک خودرو در سی شارپ #C
سورس کد مرورگر اینترنت (Internet Explorer) در #C
سورس کد مرورگر اینترنت (Internet Explorer) در #C
امتیاز
5.00 از 2 رأی
5.00 2 رای
39,000 تومان
تاریخ انتشار: 17 خرداد 1397
تاریخ بروزرسانی: 7 اسفند 1399
حجم فایل: 4.8 مگابایت
فرمت فایل sln. در قالب ویژوال استودیو
نسخه: 1.0
هماهنگی با: Microsoft Visual Studio 2013 و بالاتر
دانلود شده توسط: 581 نفر

تاکنون 581 نفر این محصول را تهیه کرده اند و 2 نظر برای آن ثبت شده است.

نظرات و دیدگاه ها
  • پیرمحمدی
    8 تیر 1401
    امتیاز 5 از 5
    پاسخ

    پروژه قابل قبولی بود. ممنون

  • نجیمه
    14 اسفند 1397
    امتیاز 5 از 5
    پاسخ

    سلام ممنون از پروژه خوبتون عالیه

قوانین ثبت دیدگاه

  • لطفاً دیدگاه های خود را فارسی تایپ کنید.
  • دیدگاه های نامرتبط به مطلب تایید نخواهد شد.
  • از درج دیدگاه های تکراری پرهیز نمایید.
  • سوالات تخصصی خودتان را از طریق تیکت پشتیبانی مطرح کنید.

لغو پاسخ

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

دسته‌بندی موضوعی: برنامه نویسی برنامه نویسی OpenGL

قیمت 39,000 تومان

افزودن به علاقه مندی ها
امتیاز
5.00 از 2 رأی
5.00 2 رای
39,000 تومان

تاریخ انتشار: 17 خرداد 1397
تاریخ بروزرسانی: 7 اسفند 1399
حجم فایل: 4.8 مگابایت
فرمت فایل sln. در قالب ویژوال استودیو
نسخه: 1.0
هماهنگی با: Microsoft Visual Studio 2013 و بالاتر
دانلود شده توسط: 581 نفر

2 بازخورد (مشاهده نظرات)

قیمت: 39,000 تومان

تماس با ما
  • دفتر پشتیبانی: 04144225175 (ساعت کاری 8:00 الی 16:00)
  • آی دی تلگرام: programerPstore
درباره پی استور

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

مجوز های اخذ شده
اینماد نشان ملی   پروانه نشر دیجیتال
  • حساب کاربری من
  • سوالات متداول
  • راهنمای خرید و دانلود
پی استور
  • همکاری با ما
  • قوانین و مقررات
  • حریم خصوصی
تمامی حقوق برای پی استور محفوظ است.
keyboard_arrow_up