تبليغاتX
دنیای سه بعدی - احجام سه بعدی در Flash با قابليت چرخش دوربين
آموزش مایا
احجام سه بعدی در  Flash با قابليت چرخش دوربين


در اين پست شما با شبیه سازی  چرخش دوربين را با استفاده از ActionScript و MEL آشنا می شوید در این نوع شبیه سازی می توان با حرکت دادن ماوس زاویه دوربین را تغییر دهد  این عمل باعث می شود که بیننده احساس کند که در حال تماشای یک حجم سه بعدی است مزیت استفاده از شیوه سرعت بالای آن می باشد  و اما اشکال اساسی آن حجم بالای خروجی آن است( معمولا بالاتر از 5Mg ) که به دلیل این مشکل عملا قابل استفاده در اینترنت نیست

 من لینک دو نمونه بسیار فشرده از این نوع انیمیشن ها را در زیر قرار داده شده است

توجه کنید برای درک توضیحات این پست حتما این دو نمونه را دانلود کنید

3dflash.Swf        1.4MB

3DflashAvi.swf     2MB 

3Dflash2.swf   HQ 8MB

 

 


گام اول : آشنایی با الگوریتم کار

اصولا Flash یک نرم افزار گرافیکی دو بعدی است و قادر ایجاد اشکال سه بعدی نیست هر چند می توان با نوشتن چند صد خط کد کاری کرد که  اشکال سه بعدی در Flash قابل شناسایی و Render گیری باشند اما به دلیل اینکه فلش توانایی دسترسی مستقیم  به کارت گرافیکی را ندارد (یا به صورت خیلی محدود می تواند) پس نمیتواند به صورت RealTime رندر بگیرد

در این شیوه دو مرحله اساسی وجود دارد

مرحله اول: با استفاده از یک انیمشن پیش ساخته که  تمامی محل های قرار گیری دوربین و زوایا آن در فرم های جداگانه با نظمی منطقی ثبت شده است   

در واقع تولید این انیمیشن به عهده مایا می باشد که با نوشتن چند خط MEL فریم های مورد نظر رابطه منطقی بین آنها  بوجود آید

 مرحله دوم : نوشتن کدهایی در فلش که با تغییر مکان ماوس فریم ها به گونه ایی تغییر کنند که حالت چرخش دوربین را تدایی کند


گام دوم :ساخت صحنه ابتدایی

در صحنه مورد نظرتان یک دوربین بسازید و در ATTEditor گزینه Camera and aim را انتخاب کنید 

یک Locator بسازید و در جایی که می خواهید دوربین حول آن بچرخد قرار دهید سپس Aim دوربین را دقیقا روی Locator قرار دهید حالا ابتدا دوربین و سپس  Locator را انتخاب کرده و دکمه p را فشار دهید تا Locator والد دوربین شود

 


گام سوم : ایجاد حرکت در دوربین با استفاده از MEL

کدهای زیر را ScriptEditor (نوار سفید رنگ پایین صفحه)وارد کنید و Ctrl + Enter بزنید

  

 

 کد بالا هر ۹۰ فریم به ۹۰ فریم یک در جه زاویه دوربین را در محور y افزایش میدهد سپس در هرکدام از این فواصل ۹۰ فریمی دوربین یک کمان ۹۰ درجی در محور X  طی میکند

در صورتی که شما به حالت دیگری نیاز دارید (به عنوان مثال ۴۵ فریم به ۴۵ فریم ) کافی تنها اعداد ثابت را در کد بالا تغییر دهید برای درک اثر هر عدد در کد بالا به شکل زیر توجه کنید

 حالا از کل انیمیشن به صورت یک تک فایل با یکی از دو پسوند SWF یا AVI  رندر بگیرید

 


گام چهارم : ایجاد اثر چرخش دور بین با استفاده از ActionScript

ابتدا فایل رندر شده را در فلش Import کنید سپس آن را انتخاب کرده و در قسمت Properties در جعبه

Instance کلمه Rotate را دقیقا با همین املا تایپ کنید

حالا فریم ۱ را در TimeLine انتخاب کرده و در قسمت Action کد های زیر را وارد کنید

همانند قسمت قبل در برای تغیرات تنها اعداد ثابت را تغییر دهید و  برای درک اثر هر عدد در کد بالا به شکل زیر توجه کنید

+ نوشته شده در  چهارشنبه بیست و هشتم شهریور 1386ساعت 12:1  توسط سهیل  |