حسین کعبی: وقتی فیگو را در جام جهانی زدم....
واقعیت مصنوعی دستگاهی بود که مایرون کروگر آن را ساخت. با این دستگاه، حرکات و حالتهای بدن شما در حالی که در اتاق حرکت میکنید تصاویر روی نمایش گر ویدیویی را تغییر میدهد؛ یعنی تصاویر ویدیویی زنده، همراه با صحنههایی که توسط کامپیوتر تولید شده را میبینید. ایوان ساترلند در دهه 70 گرافیکهای سهبعدی شبکه سیمیرا ساخت که در اولین شبیه سازی کامپبوترهای تولید شده به کار گرفته شد.
واقعیت مجازی را اولین بار در 1989 یارون لانیر به کار برد. پس از آن مایرون کروگر در 1970 هوش مصنوعی را به آن افزود و گیبسون در1984 فضای سایبر را معرفی کرد. در 1990 واژه دنیای مجازی یا محیط مجازی کاربرد بیشتری پیدا کرد و به کلیه فضاهای سه بعدی کامپیوتری اطلاق شد.
VRML زبان مدل سازی واقعیت مجازی
VRML که به صورت V-R-M-L یا Vermel تلفظ میشود، کلمه ای اختصاری برای Virtual Reality Modeling Language یا زبان مدل سازی واقعیت مجازی است. این زبان در می1994 توسط مارک بسکی، تن پاریسی و گاوین بل نوشته شد. آنها در انجمن حرفهای گرافیک کامپیوتری خود برای ایجاد یک برنامه جلوه ویژه برای دنیای انیمیشن سه بعدی تعاملی در وب فعالیت میکردند و موتور محرک این کار زبان VRML بود .
زبان VRML به این دلیل طرِاحی شد تا بتوان با فایلهای بسیار کم حجم، صحنههای سه بعدی طراحی شده درVR را مستند کرده و آنها را روی شبکه اینترنت (که در حال حاضر از محدودیت پهنای باند رنج میبرد) ارسال کرد. در حقیقت VRML مشخصات لازم جهت تفسیر و نمایش اشیاء هر صحنه VR را مدل سازی میکند. پس از انتقال فایل روی شبکه و دریافت آن توسط ماشین کاربر، فایل تفسیر شده و نمایش داده خواهد شد.
استاندارد قبلی VRML، 0.1 VRML بود که با استفاده ازآن تنها میشد مناظر ایستا ایجاد کرد. هم اکنون این استاندارد به فراموشی سپرده شده و جای خود را به استاندارد جدید 97VRML داده که در مرحله طراحی با نام0.2 VRML شناخته شده است79. VRML بسیار پیچیده تر از0.1 VRML است. صوت، تعامل اشیاء با یکدیگر و حرکت شیء میان اشیاء دیگر از مزایای آن نسبت به0.1 VRML به شمار میرود . نسخه آینده VRML امکان چندکاربری را فراهم میسازد که بهعنوان مثال در نوعی تکنولوژی استاندارد چند کاربری و محاوره ای کاربرد خواهد داشت.
کاربرد محیطهای خلق شده توسط VRML
بیشترین کاربردهای واقعیت مجازی در یکی از این سه مقوله جای میگیرد:
شبیه سازی؛ دنیاهای مجازی برگردانهای دنیای واقعی اند، مانند شبیه سازی پرواز یا رانندگی در محیطهای مختلف مثل محیط فیزیکی فضایی و تجسم ؛ به معنای مجسم کردن، قابل مشاهده ساختن بهخصوص در ذهن. دنیاهای مجازی با نشان دادن اطلاعات به صورت تصاویر سه بعدی کمک میکنند که این اطلاعات آسان تر فهمیده شوند. مثل تجسمهای مجازی از فعالیتهای پزشکی،نظامیو آموزشی
واقع گریزی؛ به معنای تمایل به خلاصی از واقعیت دنیاهای مجازی که با تخیل خلق میشوند، شبیه بازیهای ماجرایی.
مهمترین کاربرد واقعیت مجازی در آموزش، تجارت الکترونیکی، پژوهشهای تجربی، عملی و آزمایشگاهی، معماری و تولید صنعتی است.علاوه بر این، فروشگاهها و دانشگاههای مجازی، شبیه سازی حرکت وسایل نقلیه و آموزش رانندگی، خلبانی؛ شبیه سازی انواع ورزش، جراحی از راه دور، کتابخانه و مراکز اطلاعاتی، بازیهای واقعیت مجازی چند نفره و ابزارهای سرگرمیمجازی از دیگر کاربردهای آن است.
VRMLدر مقایسه باHTML
VRML چیزی شبیه HTML است. برخی آن را HTML سه بعدی دانسته اند، استاندارد جدیدی برای توصیف دنیا و اشیاء سه بعدی است. خوشبختانه از ابتدای کار این زبان استاندارد بود. این زبان به عنوان یک تکنولوژی برای نمایش گرافیک سه بعدی مورد پذیرش قرار گرفته است، زیرا راه قابل دسترس و راحت برای دنیای تعاملی است.
VRMLدر حقیقت یک زبان پویانمایی تعاملی است و اجازه میدهد طراحان صفحات وب با آن فضای سه بعدی بسازند و اشیاء سه بعدی در وب را ببینند VRML یک ابر فضای سه بعدی را پدید میآورد که با فشردن کلیدهای روی کامپیوتر میتوان در این جهان سه بعدی به هر سو رفت. در ارتباطات با سرعت کم قادر است کارکند و به خوبی download میشود و کدهایش بهراحتی به ویندوز وLinuxمنتقل میشود.
HTML برای طراحی یک صفحه دو بعدی و VRML برای ساخت صحنههای سه بعدی که اصطلاحا به آنها Virtual World گفته میشود، به کار میرود . نتیجه اجرای فایلهای HTML یک محیط دو بعدی با اصطلاح صفحهPage است، ولی اجرای فایلهای VRML توسط مرورگر، یک فضای سه بعدی را میسازد که اصطلاح صحنه Scene را برایش به کاربردهاند.
VRMLبه نحوی توسعه داده شده که به HTML وابسته نباشد، با این حال در VRML نیز از همان پروتکلها برای انتقال فایل از طریق اینترنت استفاده شده است .بنابراین هر چیز که در مورد اینترنت و وب آموخته اید، در VRML هم کاربرد خواهد داشت .شما میتوانید فایلهای ساخته شده توسط VRML را با مرورگرهای VRML یا مرورگرهای معمولی HTML مثل5 Internet Explorer به بالا مشاهده کنید.
آدرس (URL) فایلهای VRML شبیه فایلهای HTML به نظر میرسد، با این تفاوت که پسوند فایلهای HTML به صورت .html و .htm است، در حالی که در فایلهای ( World files) VRML از پسوندهای.flr ،z .wr و .wrl استفاده میشود.فایلهای VRML فقط حاوی متن هستند، با این حال پس از خوانده شدن توسط مرورگرها، یک محیط کاملا گرافیکی را میسازند.
مهمترین وظیفه VRML این است که مشخص کند چگونه یک صحنه سه بعدی در دنیای مجازی ساخته شود. اگر بخواهیم تخصصیتر بگوییم ،VRML یک زبان صحنه پردازی است.
تفاوت دیگر VRML با HTML در این است که میتواند به مرورگر دستوراتی را در مورد محل قرار گیری اشیاء سه بعدی و رنگ آنها بدهد و بهطور اساسی این امکان را فراهم میکند تا مرورگر نقطهها را به هم متصل کند. در حالی که HTML فقط گونههای ساده متن و تصاویر از پیش ساخته شده را برای ساخت یک صفحه دو بعدی در کنار هم قرار میدهد.
برنامه سازیVRML
با توجه به گستردگی مباحث مربوط به زبان مدلسازی حقیقت مجازی دراین نوشتار تنها به طور اجمالی به شرح نحوه طراحی صحنههای VRML در نسخه دوم این زبان میپردازیم . علاوه بر آن مبنای کار را بر VRML ایستا میگذاریم.
به یاد داشته باشید که VRML یک زبان حساس به متن (Case Sensitive) است و بیتوجه به کوچک یا بزرگ بودن حروف کلمات، ممکن است باعث بروز خطا شود. البته ویرایشگر 1/2 VrmlPad دارای امکان Auto Complete بوده و تا حد زیادی به نوشتن شما کمک خواهد کرد. توصیه میکنم از آن برای نوشتن فایلهایتان استفاده کنید.
VRMLحدوداً 8 نوع گره اصلی دارد:
1- گرههای گروه بندی؛ این گرهها برای ایجاد ساختار سلسله مراتبی ارث بری به کار میروند و فیلدchildren ]...[ در آنها حاوی گرههای فرزند است.
2- گرههای خاص؛ که اطلاعات مربوط به فرزندانشان را از مکانی در WWW میخوانند.
3- گرههای معمول؛ که برای نور، صدا،script ها و ... به کار میروند.
4-حسگرها؛ این گرهها وقوع رویدادی را به اطلاع ما میرسانند. مثلاً حسگرهای هندسی براساس اعمال کاربر (کلیک ماوس، نزدیک شدن به یک شیء و ...)، و حسگر زمانی با گذشت زمان event تولید میکنند.
5- گرههای هندسی؛ برای اینکه این گرهها توسط کاربر قابل دیدن باشند، باید درون یک گره Shape نوشته شوند. همچنین درون فیلد geometry گره Shape تنها یک گره هندسی میتواند قرار گیرد.
6- ظاهر یا ؛Appearance این گره ویژگیهای بصری شکلها را به وسیله گرههای Material و Texture تعیین میکند.
7- درج کنندهها یا؛Interpolators که برای طراحی انیمیشن بهکار میروند.
8- گرههای Bindable
اشکال ساده هندسی
به طور پیش فرض، همه اشکال هندسی در مبدا مختصات و با یک اندازه استاندارد ترسیم میشوند. برای اینکه مکان آنها را تغییر دهیم، از گره Transform و فیلد translation داخلش استفاده میکنیم. همچنین برای تعیین ابعاد شکل از واحد متر (مانند دنیای واقعی) با دقت اعشاری استفاده میکنیم. درجه نیز با واحد رادیان به صورت زیر بیان میشود:
جدول تبدیل درجه به رادیان
30 5236/0
60 0472/1
90 1416/3
180 1416/3
270 7124/4
انواع شکلها و نحوه تعریف آنها:
مکعب یا Box عرض=20 ، ارتفاع=1/0 ، عمق=30 (مانند یک صفحه نازک کاغذ)
کره یا Sphere شعاع=2 .
استوانه یا Cylinder شعاع قائده=5/0 ، ارتفاع=5/0 ، سطح دایره پایین و سطح جانبی قابل روئیت و سطح دایره بالا غیر قابل روِیت باشد.
مخروط یا Cone شعاع دایره پایین=0.7 ، ارتفاع=1، سطح دایره پایین غیر قابل روِیت و سطح جانبی قابل روِیت باشد.
بهتر است بدانید که تفسیر اشیاء همپوشان توسط موتور تفسیر، دارای کارایی کمتری نسبت به تفسیر اشیاء مجاور است. بنابراین توصیه میشود در هنگام طراحی صحنه به این موضوع توجه لازم را داشته باشید.
حسین کعبی: وقتی فیگو را در جام جهانی زدم....