خانه » ادوبی ایر » معرفی فریم ورک Starling

معرفی فریم ورک Starling

معرفی فریم ورک Starling

Starling چیست؟

اگر به صورت مختصر بخواهیم توضیح دهیم ، Starling یک فریم ورک متن باز (OpenSource) برای توسعه ۲بعدی توسط متد جدید Stage3D که پردازش را توسط کارت گرافیک (GPU) انجام می دهد ، می باشد. البته این فریم ورک استفاده اصلی آن برای بازی تعریف شده است و امکانات بسیار خوبی هم در این زمینه در اختیار ما قرار می دهد.

کاربردهای Straling چیست؟

شاید به عنوان بهترین کاربرد ، بتوان ساخت بازی های دو بعدی با کارایی و سرعت بسیار بالا ، با خصوصیت استفاده از شتاب سخت افزاری Stage3D که در فلش پلیر ۱۱ به بعد ایجاد شده است. و البته یک موضوع مهم دیگر استفاده آن در برنامه های Air مربوطه به تلفن های هوشمند Android  و IOS Apple می باشد که دست توسعه دهنده را نسبت به قبل بسیار باز تر می کند و می توان محیطی واقعا گرافیکی و جذاب با سرعتی که شاید قبل تر قابل تصور هم نبود در اختیار داشت.

این فریم ورک می تواند برای برنامه های کاربردی که گرافیک بالایی هم نیاز دارند کاربرد خوبی داشته باشد ، یا وب سایت ها و … امکانات بسیار زیاد دیگر هم برای آسان تر شدن کار توسعه دهنده در نظر گرفته شده است که می توانید همه این موارد را در کتابی که در ادامه معرفی می شود مشاهده کنید.

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

هر چند این فریم ورک رایگان و اوپن سورس هست ، ولی پشتیبانی خوبی دارد و هم اکنون نیز یک تحول را در بر داشته است و در نسخه ۱.۰ می باشد

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

فریم ورک Starling برای مالتی تاچ و تست آن فکری کرده است؟

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

تا به حال چه کارهایی با فریم ورک Starling انجام شده است؟

اگر بخواهیم یکی از شاخص ترین کارهای انجام شده را ذکر کنیم می بایست نسخه فلشی بازی پرندگان خشمگین (Angrybirds) که در شبکه اجتماعی فیس بوک است اشاره کنیم ، که واقعا در حد و سرعت و کیفیت یک بازی PC می باشد. و برای ساخت آن نیز از این فریم ورک بهره گرفته شده است.

چگونه فریم ورک Starling را دریافت کنیم؟

آخرین نسخه این فریم ورک را می توانید از این آدرس دریافت نمایید

http://gamua.com/starling/download/

کتاب و مرجعی درباره فریم ورک Starling وجود دارد؟

خوشبختانه جواب این سوال هم بله است ، این کتاب رایگان نیز برای کار با تمامی بخش های این فریم ورک در نظر گرفته شده است که می تواند مرجع بسیار خوبی برای توسعه دهندگان عزیز باشد. شما می توانید این کتاب را هم اکنون دانلود نمایید.

مستندات مربوطه به هسته فریم ورک Starling را می توانید از آدرس http://doc.starling-framework.org/core/ دریافت کنید

دانلود کتاب Introducing Starling

برای شروع به کار با فریم ورک Starling چه کاری انجام دهم؟

ابتدا می توانید دمو مربوطه به یک نمونه از قابلیت های این فریم ورک را مشاهده کنید
http://gamua.com/starling/demo/

برنامه مربوطه که با آن کار می کنید (به طور مثال فلش) را برای کار با خروجی های Flash Player 11 آماده کنید

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

در این مرحله برای تستی ساده ابتدا کتابخانه SWC مربوطه به Straling که دریافت کرده اید را به پروژه بیافزایید ، برای این کار از بخش Edit ActionScript Setting استفاده کنید و کد مربوطه به کلاس اصلی را به این صورت تعریف کنید.

import flash.display.Sprite;
import starling.core.Starling;

[SWF(width="400", height="300", frameRate="60", backgroundColor="#ffffff")]
public class Startup extends Sprite
{
    private var _starling:Starling;

    public function Startup()
    {
        _starling = new Starling(Game, stage);
        _starling.start();
    }
}

و سپس فایلی با نام Game.as بسازید و این کد را درون آن وارد کرده و ذخیره کنید:

import starling.display.Sprite;
import starling.text.TextField;

public class Game extends Sprite
{
    public function Game()
    {
        var textField:TextField = new TextField(400, 300, "Welcome to Starling!");
        addChild(textField);
    }
}

حال می توانید پروژه را تست نمایید ، توجه داشته باشید که برای تست و مشاهده نتیجه می بایست پروژه را توسط فلش پلیر۱۱ یا مرورگری که این فلش پلیر را دارد تست کنید ، اگر قصد دارید این فایل را درون صفحه ای Embed کرده و در وب قرار دهید می بایس توجه داشته باشید که برای تگ Embed و یا Object در اچ تی ام ال می بایست خصوصیت wmode را روی direct تنظیم کنید.

برای مرحله بعد و برای آشنایی بیشتر می توانید این ویدئوی آموزشی را نیز مشاهده کنید

در آخر هم توصیه می کنم به وبسایت این فریم ورک سر بزنید و دیگر اطلاعات مورد نیازتان را به دست بیاورید

http://starling-framework.org/

پی نوشت : نسخه جدید کتاب برای دانلود با لینک مستقیم قرار داده شد ، دانلود کتاب Introducing Starling

دانلود کتاب Introducing Starling

موفق و پیروز باشید

Print Friendly
تگ ها :
پیوند مطلب قبلی
پیوند مطلب بعدی

درباره بهروز پولادرگ

متولد : ۵ مرداد سال ۱۳۶۷ ، حرفه : ادوبی فلش ، برنامه نویسی و طراحی وب ، طراحی گرافیک ، مالتی مدیا ، نرم افزار های تحت وب

23 نظر

  1. سلام، بسیار خوب و عالی بود. ممنون

  2. خیلی مطلب مفید و تازه ای بود
    فقط یه سوال ایا با رایانه های قدیمی که کارت گرافیک ندارند و cpu انها هم پایین هست این تکنولو‍‍ژی کاربرد دارد یا نه؟
    ممنون از شما بهروز جان

    • سلام
      در این امکانی که به فلش پلیر افزوده شده است بار پردازش گرافیکی بر روی کارت گرافیک و پردازنده GPU آن می افتد و همین موضوع دست برنامه نویس را برای استفاده بهینه از حافظه ها بار می گزارد ؛ در حالت عادی تمامی اشاء و موارد گرافیکی توسط CPU پردازش می شود که در برخی موارد بار زبادی به سیستم تحمیل می کند.
      موفق و پیروز باشید

  3. ممنون بهروز جان
    بسیار خوب و عالی. برای توسعه بازهای اندرویدیم حتماً می رم سراغش

    موفق باشی

  4. با سپاس

    من برای اجرا مشکل زیر را دارم لطف می میکنید من را راهنمایی کنید.
    VerifyError: Error #1014: Class flash.display::Stage3D could not be found.
    ارادتمند

    • سلام دوست عزیز
      دو راه دارید
      ۱- فلش پلیر دیباگر جدید را با دیباگر قدیمی فلش جا به جا کنید و با Ctrl + Shift + Enter برنامه خود را تست کنید
      ۲ – برنامه خود را بر روی مرورگری که آخرین نسخه فلش پلیر را دارد تست کنید
      موفق و پیروز باشید

    • سلام
      برای گروه برنامه های ایر می بایست ، به بخش lab مربوطه به ادوبی رفته و ادوبی ایر جدید را دریافت کنید و طبق آموزشی که داده شده است Adobe Air 3 را به گذینه های فلش اضافه کنید
      در ضمن این پیغام نشان می دهد که فایل ایجاد شده ولی امکان پیش نمایش آن نیست و اگر روی دستگاه مربوطه تست کنید احتمالا مساله ای نخواهد بود
      موفق و پیروز باشید

    • برای برنامه های ایر این مورد می بایست به فایل XML پروژه اضافه شود تا خطا دیده نشود

      <renderMode> direct </renderMode>
      

      در واقع عبارت auto را به direct تغییر دهید مساله حل می شود

      موفق و پیروز باشید

  5. سلام
    بهروز جان لینک رپید شیر کتاب آموزشی پاک شده میتونی جای دیگه آپلود کنی؟
    مرسی

  6. یه سوالی دارم
    حتما برا استفاده از این فریم ورک باید حتما از فلش بیلدر استفاده کنیم؟تو خود فلش نمیشه ازش استفاده کرد؟
    چرا اصلا وقتی بازی هایی که با فلش ساخته میشه اون قدرت و کارایی لازم را نداره؟ مگراینکه همچین فریم ورک هایی بر روی ان نصب شه
    یعنی سازندگان فلش خودشون متوجه این خلا در فلش نیستند؟!

    • سلام
      نه کمی دقیق تر توضیح بدهم تا بهتر متوجه موضوع شوید
      این فریم ورک تنها استفاده از امکاناتی که فلش ایجاد کرده را راحت می کند در واقع همه این کارها بدون فریم ورک هم امکان پذیر هست این فریم ورک کاملا با اکشن اسکریپت نوشته شده است ، در نتیجه همه عملکردها از خود فلش گرفته شده است.
      ولی با توجه به پیچیده بود و حرفه ای بودن این موارد با استفاده از این فریم ورک کار خیلی راحت تر می شود
      خوب در مورد بازیی هایی که با فلش ساخته می شود اکثر این بازی ها از امکانی که جدیدا فلش به فلش پلیر برای تحلیل گرافیکی توسط GPU ؛ استفاده نمی کنند و در نتیجه تحلیل گرافیک و پردازش های دیگر همه به گردن CPU می افتد و نتیجه سرعت نا مناسب هست
      بازی های در حد بازی های حرفه ای کامپیوتر هم اکنون با قابلیت جدید فلش بر روی فلش قابل ایجاد و اجرا هست که سرعتی برابر همان بازیهای حرفه ای که روی سیستم خود نصب می کنید خواهد داشت…
      بازیهایی هم هم اکنون از این خصوصیت استفاده می کنند مثل پرندگان خشمگین (نسخه ای که روی فیسبوک هست) که سرعت بالایی دارند و کاملا هم با فلش هستند…
      البته نسخه آخر فلش هم تا حدی کار را برای توسعه راحت تر کرده است ولی هنوز این بخش از تکنولوژی فلش نوپا است و کم کم فلش به صورت خودکار در آینده پردازش های گرافیکی را بر عهده GPU قرار خواهد داد و کار راحت تر خواهد شد…
      فعلا این فریم ورک و فریم ورک های مشابه برای راحت تر کردن کار ایجاد شده است
      موفق و پیروز باشید

  7. سلام
    من هنگام استفاده این پیام رو دریافت میکنم که معنیش رو نمیدونم. چه باید کرد ؟

    TypeError: Error #1009: Cannot access a property or method of a null object reference.
    at Untitled_fla::MainTimeline/frame1()

  8. البته از این کد در تایم لاین استفاده کردم:

    import starling.animation.Tween;
    import starling.core.Starling;

    var tween:Tween = new Tween(object,2.0,Transitions.EASE_IN_OUT);
    tween.animate(“x”, object.x + 200);
    //tween.animate(“rotation”, deg2rad(45));
    tween.fadeTo(0);// equivalent to ‘animate(“alpha”, 0)’
    Starling.juggler.add(tween);

  9. ببخشید یه سوال دیگه البته اون مشکل بالایی رو حل کردم و لی نمیدونم که
    کلا میشه کد های ” استارلینگ” رو داخل تایم لاین قرار داد و با تایم لاین باهاش کار کرد نه با پکیج ها ( تا از شر قلمرو ها آزاد شد) ؟؟

    (من از Flash cs6 استفاده میکنم)

    • سلام بله مشکلی وجود ندارد
      ولی در پروژه های بزرگ استفاده از کلاس ها استاندارد تر هست
      ولی برای main بهتر هست از الگوی نمونه استارلینگ استفاده کنید و توجه داشته باشد کار با کلاس ها در پروژه ها باعث راحت تر شدن شما در انجام پروژه خواهد شد
      موفق و پیروز باشید

  10. سلام
    خیلی ممنون بابت پاسخ شما
    یه سوال کلی دارم که چون ندونستم کدام قسمت بنویسم، اینجا مطرحش میکنم
    من از flash CS6 استفاده میکنم. وقتی از از کد rotarionY = 55 استفاده میکنم کمی موی کلیپ رو تار میکنه که وقی زوم میکنی بیشتر مشخص میشه. میخواستم ببینم ورژن flash CC هم همین مشکل رو داره یا اون هم با این کد کمی لبه ها رو تار نشون میده؟
    ممنون

    • سلام

      استفاده از rotationY , rotationX , rotationZ باعث می شود که فلش آن شی را به صورت Bitmap کش کند و به همین دلیل حالت شبیه به پیکسلی شدن ایجاد می شود
      در نسخه های جدید تر این حالت کمتر مشخص می شود ولی بیشتر به فلش پلیر مربوطه می باشد و نسخه ایجاد فلش خیلی دخیل در این امر نیست

      موفق و پیروز باشید

ارسال جواب

آدرس رایانامه شما منتشر نخواهد شد.فیلد های اجباری علامت گزاری شده اند *

*

رفتن به بالای صفحه