چگونه توسط دوربین یک object را دنبال کنیم اصلا یعنی چه؟

Game maker یک ویژگی دارد که ما با این ویژگی می توانیم برای دوربینی که room را به نشان می دهد محدوده ای کوچک تر از اندازه room مشخص کنیم. در این حالت، کل room وجود دارد، اما دوربین قسمتی از آن را که ما تعیین کرده ایم را به ما نشان می دهد. حال اگر ما آبجکتی را برای دنبال کردن انتخاب کنیم، زمانی که object از محدوده مشخص شده دوربین دور می شود و به مرز آن می رسد دوربین حرکت می کند و در room دنبال آن می رود.

اما چگونه این کار را انجام دهیم؟

ما برای این کار ابتدا باید به room مورد نظر برویم و سپس به تب یا کشوی views برویم.


اول از هر چیز باید قابلیت استفاده از view ها را فعال کنیم. برای این کار، باید گزینه فعال ردن Enable the use of views برای فعال کردن قابلیت را فعال کنید.

بعد از آن باید مشخص کنید که این تنظیمات برای کدام view است؟برای این کار در قسمت یک view انتخاب کنید(قسمت نارنجی در تصویر)

سپس باید بگوییم که هر وقت room باز شد (بازی اجرا شد) این view را فعال شود (view را نشان دهد) . برای این کار باید گزینهفعال کردن visible when room start را فعال کنیم. (قسمت سبز در تصویر)

حالا باید محدوده ای که دوربین آن را می تواند ببیند را مشخص کنیم. در قسمت view in room مختصات گوشه ها

محض اطلاع اطلاع شما:

ٌعرض=W=Width و ارتفاع=H=Height است.

مقدار X برابر مختصات گوشه اول محدوده دوربین، نسبت به مختصات 0 و 0 در راستای محور مختصاتی x است. مقدار Y برابر مختصات گوشه اول محدوده دوربین ما، نسبت به مختصات 0 و 0 و در راستای محور مختصاتی y است. مقدار W برابر مختصات گوشه دوم محدوده دوربین، نسبت به مختصات گوشه اول و در راستای محور مختصاتی x است. مقدار H برابر مختصات گوشه دوم محدوده دوربین، نسبت به مختصات گوشه اول و در راستای محور مختصاتی y است.

گیج شُدید نه؟!؟!متعجبخنده

به عبارت دیگر اگر ما X و Y را برابر 50 و W و H را برابر 100 دهیم، محدوده دوربینی به مساحت 10000 و طول و عرض 100 در 100 به دست می آوریم که در مختصات 50 , 50 است.

با تصویر بهتر یاد می گیرید؛ اگر ما X , Y را برابر 50 و W , H را برابر 100 دهیم، این گونه می شود:

خب، حالا که محدوده را هم مشخص کردیم، باید به دوربین بگوییم که به دنبال کدام object، با چه سرعتی و چه زمانی برود.

برای این کار در قسمت انتخاب object (object fllowing) باید object مورد نظر را که می خواهید دوربین دنبال آن را برود را انتخاب کنید.

چه زمانی (افقی) در Hbor (اِچ) H مخفف horizontal است و horizontal به معنای افقی است. منظور از horizontal عرض محدوده (ضلع افقی) دوربین است.

اگر شما Hbor را 50 بدهید، آبجکتی که انتخاب کرده اید اگر به 50 پیکسلی Width یا همان عرض محدوده دوربین (که همان horizontal است) برسد، دوربین به دنبال آبجکت می رود. هرچه این مقدار را کمتر بدهید، object به مرز محدوده بیشتر نزدیک می شود و سپس دوربین او را دنبال می کند.

چه زمانی در Vbor (وی) V مخفف vertical است و vertical به معنای عمودی است. منظور از vertical ارتفاع محدوده (ضلع عمودی) دوربین است.

اگر شما Vbor را 50 بدهید، آبجکتی که انتخاب کرده اید اگر به 50 پیکسلی Height یا همان ارتفاع محدوده دوربین برسد، دوربین به دنبال آبجکت می رود. هرچه این مقدار را کمتر بدهید، object به مرز محدوده بیشتر نزدیک می شود و سپس دوربین او را دنبال می کند.

در با چه سرعتیHsp و Vsp شما می توانید سرعت دوربین را انتخاب کنید. مثلا اگر در ابتدای بازی object انتخاب شده در محدوده دوربین نباشد، دوربین باسرعتی که ما در Hsp و Vsp مشخص کرده ایم حرکت می کند. Hsp سرعت افقی است و Vsp سرعت عمودی دوربین است.

اگر شما این دو مقدار را 10 بدهید، حداکثر سرعت دوربین ما 10 می شود. یعنی اگر object با سرعت 2 حرکت کند، سرعت دوربین هم 2 است ولی اگر سرعت آبجکت 11 باشد دوبین با سرعت 10 که حداکثر است حرکت می کند و از object عقب می افتد.

نکته: اگر شما سرعت دوربین را 1- (منفیِ 1) دهید، دیگر حداکثر سرعتی وجود ندارد و هیچ گاه عقب نمی ماند.