با سلام.
انجین Quick2D یک موتور بازی سازی دو بعدی هست . زبان اسکریپت نویسی انجین نیز Javascript هست. ساده ولی توانمند. ترجیح دادم بجای Lua از JS استفاده کنم چون افراد بیشتری هستند که با سینتکس JS آشنایی دارند.
version 1.1.0
اوووف ! خیلی کار برد ولی بالاخره آماده شد.
نسخه 1.1.0 با ساختار کمی متفاوت، کلی باگ فیکس شده و یک ادیتور قشنگ به همراه امکانات جدید در کد نویسی و انجین صدا و امکان انیمیت کردن تصاویر Strip .
[ برای مشاهده لینک ، با نام کاربری خود وارد شوید یا ثبت نام کنید ]
یا
[ برای مشاهده لینک ، با نام کاربری خود وارد شوید یا ثبت نام کنید ]
توابع اضافه شده در این نسخه
کد:
برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
این پکیج شامل فایل نصب انجین و یک پروژه نمونه هست که توش سعی کردم تا جایی که امکان داره انواع شیوه های کد نویسی در این انجین رو بصورت گسترده بنویسم که با مطالعش بتونید سر از زیر و بمش در بیارید.
برای شروع انجین رو باز کنید و روی اون پوشه ی زرد کلیک کنید و پروژه Sample رو باز کنید. با کلیک روی هر آبجکت می تونید کدهاش رو ببینید.


=========================
rev 1.0.3
[ برای مشاهده لینک ، با نام کاربری خود وارد شوید یا ثبت نام کنید ]
توابع اضافه شده در این نسخه:
کد:
برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
یک مینی گیم به همراه سورس کنار انجین هست.


======================
rev 1.0.2
البته همچنان بدون ادیتور. شاید اصلاً ادیتور نذاشتم ! Notepad++ خیلی راحت تره .gif)
در حال حاظر مشغول کار روی بخش instance creating هستم. گرچه با یک آرایه ساده قابل پیاده سازی هست ولی می خوام ساده تر باشه.
توابعی که در این نسخه قابل استفاده هستند:
کد:
برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
یک مثال همراه انجین هست که می تونید با Drag کردن فایل main.js روی Quick2D.exe اجراش کنید.
با بررسی فایل main.js میتونید با نحوه کد نویسی آشنا بشید.
تابع Project_Settings قبل از هر تابع دیگری فراخوانی میشه و فقط برای تنظیمات پروژه هست. نظیر تمام صفحه بودن، اندازه صفحه و تیتر.
تابع Start این تابع در ابتدای بازی و بعد از Project_Settings اجرا می شود. این تابع بهترین مکان برای تنظیمات ابتدایی بازی است.
تابع Update حلقه اصلی بازی هست.
به هیچ وجه از توابع نا مربوط به تنظیمات پروژه در تابع Project_Settings استفاده نکنید.
رویداد هایی که در این نسخه قابل استفاده هستند:
کد:
برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
در رویداد های mouse pressed و mouse released اشاره گر e شامل Button ، X, Y هست. به بزرگی و کوچکی حروف دقت کنید. برای گرفتن مقدار Button باید به این شکل عمل کنید:
کد:
برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
در رویداد mouse move فقط مقادیر X, Y در دسترس هستند.
در رویداد mouse wheel مقدار e برابر با delta هست و نیازی به تبدیل نداره.
در رویداد های کیبورد، e نام کلید فشرده شده یا رها شده است.
دقت کنید، برای ایجاد حرکت با استفاده از کیبورد، باید به نحوی که در مثال هست عمل کنید. اگر مستقیم در رویداد بنویسید مثلاً x+=2 با هر بار فشردن کلید، با کمی delay مواجه خواهید شد. با روش مورد استفاده از مثال شما حرکت بسیار نرمی را خواهید داشت.
در مورد اسپرایت ها، انجین بطور خودکار اندازه تصویر را تشخیص داده و ترسیم می کند. امکان تغییر اندازه تصاویر بوسیله کد وجود ندارد.
ضمناً توابع get_width و get_height اندازه تصویر مشخص شده را بر می گردانند.
توجه داشته باشید، همیشه از load_texture در تابع Start استفاده کنید.
و در آخر، توابع اصلی Project_Settings ، Start ، Update را پاک نکنید.
قالب خالی برای فایل main.js ( می توانید فایل اصلی را با هر نامی که مایلید بسازید )
کد:
برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
اگر سوالی بود همینجا مطرح کنید 
با تشکر
[ برای مشاهده لینک ، با نام کاربری خود وارد شوید یا ثبت نام کنید ]