فهرست مطالب:
تصویری: نمایشگر سه بعدی: 4 مرحله
2024 نویسنده: John Day | [email protected]. آخرین اصلاح شده: 2024-01-30 08:57
سلام! برای برآوردن علاقه من به برنامه نویسی و امیدوارم بتوانم رضایت شما را برآورده کنم ، می خواهم یک Viewer 3D را که در جاوا اسکریپت کدگذاری کرده ام به شما نشان دهم. اگر می خواهید درک خود را از بازی های سه بعدی بیشتر کنید یا حتی بازی سه بعدی خود را ایجاد کنید ، این نمونه اولیه نماینده 3D برای شما مناسب است.
مرحله 1: نظریه
برای درک نظریه این بیننده سه بعدی ، می توانید به سادگی نحوه مشاهده محیط اطراف خود را بررسی کنید (داشتن تنها یک منبع نور مهم کمک می کند). توجه کنید که:
- اجسامی که از شما دورتر هستند بخش کوچکتری از میدان دید شما را اشغال می کنند.
- اجسامی که از منبع نور دورتر هستند رنگ تیره تری به نظر می رسند.
- با افزایش موازی سطوح (کمتر عمود) با منبع نور ، رنگ آنها تیره تر به نظر می رسد.
من تصمیم گرفتم یک میدان دید را با مجموعه ای از خطوط ناشی از یک نقطه واحد (مشابه کره چشم) نشان دهم. مانند یک توپ سنبله ، خطوط باید به طور مساوی از هم فاصله داشته باشند تا اطمینان حاصل شود که هر قسمت از میدان بینایی به طور برابر نمایش داده شده است. در تصویر بالا ، توجه کنید که خطوط ناشی از توپ سنبله با فاصله گرفتن بیشتر از مرکز توپ چگونه فاصله بیشتری پیدا می کنند. این امر به تجسم اجرای برنامه مشاهده 1 کمک می کند زیرا تراکم خطوط کاهش می یابد زیرا اجسام از نقطه مرکزی دورتر می شوند.
خطوط واحد اصلی دید در برنامه هستند و هر کدام بر روی پیکسل روی صفحه نمایش ترسیم می شوند. وقتی خطی از یک جسم عبور می کند ، پیکسل مربوطه بر اساس فاصله آن از منبع نور و زاویه آن از منبع نور رنگ آمیزی می شود.
مرحله 2: تئوری پیاده سازی
برای ساده سازی برنامه ، منبع نور همان نقطه مرکزی است (کره چشم: نقطه ای که نقشه از آن مشاهده می شود و خطوط از آنجا نشأت می گیرند). با نگه داشتن نور در کنار صورت ، این کار سایه ها را از بین می برد و اجازه می دهد تا روشنایی هر پیکسل بسیار راحت تر محاسبه شود.
این برنامه همچنین از مختصات کروی استفاده می کند و نقطه مرکزی دید در مبدا است. این امر باعث می شود خطوط به راحتی تولید شوند (هر کدام دارای یک تتا منحصر به فرد: زاویه افقی و phi: زاویه عمودی) ، و اساس محاسبات را فراهم می کند. خطوطی با تتا یکسان در پیکسل های یک ردیف ترسیم می شوند. phis زوایای متناظر در هر ردیف پیکسل افزایش می یابد.
برای ساده سازی ریاضی ، نقشه سه بعدی از صفحات با متغیر مشترک (x ، y یا z مشترک) تشکیل شده است ، در حالی که دو متغیر غیر متداول دیگر در محدوده ای محدود شده و تعریف هر صفحه را کامل می کند.
برای مشاهده اطراف با ماوس ، معادلات برنامه در یک چرخش عمودی و افقی در حین تبدیل بین سیستم های مختصات کروی و xyz نقش دارد. این امر باعث ایجاد پیش چرخش در مجموعه خطوط بینایی "توپ سنبله" می شود.
مرحله سوم: ریاضی
معادلات زیر برنامه را قادر می سازد که تعیین کند کدام خط ها هر شی را قطع می کنند و اطلاعات مربوط به هر تقاطع. من این معادلات را از معادلات مختصات کروی اساسی و معادلات چرخش دو بعدی استخراج کردم:
r = فاصله ، t = theta (زاویه افقی) ، p = phi (زاویه عمودی) ، A = چرخش در محور Y (چرخش عمودی) ، B = چرخش در محور Z (چرخش افقی)
Kx = (sin (p)*cos (t)*cos (A)+cos (p)*sin (A))*cos (B) -inin (p)*sin (t)*sin (B)
Ky = (sin (p)*cos (t)*cos (A)+cos (p)*sin (A))*sin (B)+sin (p)*sin (t)*cos (B)
Kz = -sin (p)*cos (t)*sin (A)+cos (p)*cos (A)
x = r*Kx
y = r*Ky
z = r*Kz
r^2 = x^2+y^2+z^2
روشنایی = Klight/r*(Kx یا Ky یا Kz)
p = arccos ((x*sin (A)*cos (B)+y*sin (A)*sin (B)+z*cos (A))/r)
t = arccos ((x*cos (B)+y*sin (B) -p*sin (A)*cos (p))/(r*cos (A)*sin (p)))
مرحله 4: برنامه
امیدوارم این نمونه اولیه نمایشگر سه بعدی به شما در درک عملکرد واقعیت های مجازی سه بعدی کمک کرده باشد. این برنامه بیننده با کمال و کدگذاری بیشتر مطمئناً می تواند در توسعه بازی های سه بعدی مورد استفاده قرار گیرد.
توصیه شده:
اسکنر سه بعدی پایه برای نقشه برداری سه بعدی دیجیتال: 5 مرحله
اسکنر سه بعدی پایه برای نقشه برداری سه بعدی دیجیتال: در این پروژه ، من اصول اولیه اسکن و بازسازی سه بعدی را که عمدتاً در اسکن اجسام نیمه نیمه کوچک کاربرد دارد و عملکرد آنها را می توان به سیستم های اسکن و بازسازی گسترش داد ، توضیح داده و توضیح می دهم. ب
سگ روباتیک چاپ سه بعدی (روباتیک و چاپ سه بعدی برای مبتدیان): 5 مرحله
سگ رباتیک چاپ سه بعدی (روباتیک و چاپ سه بعدی برای مبتدیان): روباتیک و چاپ سه بعدی چیزهای جدیدی هستند ، اما ما می توانیم از آنها استفاده کنیم! اگر به ایده تکلیف مدرسه نیاز دارید یا فقط به دنبال یک پروژه سرگرم کننده هستید ، این پروژه یک پروژه مبتدی خوب است
تبدیل تصویر دو بعدی به مدل سه بعدی: 7 مرحله (همراه با تصاویر)
تبدیل تصویر دو بعدی به مدل سه بعدی: آیا تا به حال خواسته اید یک تصویر دو بعدی بگیرید و آن را به یک مدل سه بعدی تبدیل کنید؟ این دستورالعمل به شما نشان می دهد که چگونه با یک اسکریپت رایگان و Fusion 360. آنچه شما نیاز دارید Fusion 360 (Mac / Windows) آنچه شما باید انجام دهید بارگیری و نصب Fusion 360. برای ثبت نام رایگان اینجا کلیک کنید
محفظه حرارتی چاپگر سه بعدی: رفع پیچ خوردگی در چاپهای سه بعدی: 4 مرحله
محفظه حرارتی پرینتر سه بعدی: رفع پیچ خوردگی در چاپهای سه بعدی: هرکسی که تا به حال از چاپگر سه بعدی استفاده کرده است ، در یک نقطه با مشکل تاب خوردن روبرو شده است. چاپهایی که ساعت ها طول می کشد در نهایت خراب می شوند زیرا پایه از تخت جدا شده است. این مسئله می تواند خسته کننده و زمان بر باشد. پس چه چیزی
نمایشگر تصویر سه بعدی دیجیتال - "The DigiStereopticon": 6 مرحله (همراه با تصاویر)
نمایشگر تصویر سه بعدی دیجیتال - "DigiStereopticon": عکاسی استریوسکوپی از بین رفته است. این احتمالاً به این دلیل است که مردم دوست ندارند برای مشاهده عکس های فوری خانواده از عینک مخصوص استفاده کنند. در اینجا یک پروژه کوچک سرگرم کننده است که می توانید در کمتر از یک روز برای ایجاد تصویر سه بعدی خود انجام دهید