بدون توضیح
  • C# 100%
Find a file
koosha72 a533c9c18b fix(openal): correct frequency updates, priority handling, and voice cleanup
- Voice/Voice3D: apply frequency changes correctly
- Sound buffer: forward priority to sound manager as intended
- Sound manager: reset voice source index to -1 on stop to prevent
  stale operations

Fixes issues with frequency not applying, priority being ignored,
and post-stop voice modifications.
2026-07-27 04:28:39 +03:30
Strawberry - Fix: Entities are now actually removed from the scene. 2026-07-27 04:11:54 +03:30
Strawberry.Android FIx: Removed unused fullscreen from IGraphicsContext Initialize method 2026-07-10 18:30:11 +03:30
Strawberry.Common - Removed unnecessary casts. 2026-06-26 10:10:58 +03:30
Strawberry.Desktop Feature: Added a Platform service for controlling cursor visibility. 2026-07-11 01:26:28 +03:30
Strawberry.OpenAL fix(openal): correct frequency updates, priority handling, and voice cleanup 2026-07-27 04:28:39 +03:30
Strawberry.Physics - Made changes for packaging 2026-04-29 02:12:56 +03:30
Strawberry.Sound.Midi - Fixed some bugs in Android 2026-05-29 02:08:24 +03:30
Strawberry.Web FIx: Removed unused fullscreen from IGraphicsContext Initialize method 2026-07-10 18:30:11 +03:30
.gitignore - Added fa language 2026-06-05 23:35:51 +03:30
Directory.Build.props - Added versioning for packages 2026-05-28 21:16:49 +03:30
README.fa.md - Some changes in readme files 2026-06-06 02:25:53 +03:30
README.md - Some changes in readme files 2026-06-06 02:25:53 +03:30
Strawberry.sln - Removed all test projects from the git. 2026-05-28 14:29:19 +03:30

StrawBerry Game Engine

موتر بازی سازی توت فرنگی

شرح

موتور بازی سازی توت فرنگی یک موتور بازی سازی چند سکوی دو بعدی است که به طور کامل بر مبنای .NET ساخته شده است. هستۀ مرکزی این موتور به صورت کاملا باز در اختیار کاربران قرار می گیرد. جهت استفاده از هسته مرکزی موتور باید به زبان برنامه نویسی C# کاملاً مسلط باشید.

محیط بصری و ویرایشگر

البته محیط بصری این موتور در دست ساخت می باشد که شما می توانید در نسخه اولیه خصوصی (Private Alpha Version) ثبت نام نمایید. تایید ثبت نام بر مبنای رزومه ارسالی شما انجام خواهد شد.

راه اندازی اولیه

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

1- پروژه اصلی بازی (به صورت چند سکویی)

در این پروژه تا حد ممکن نباید از کد اختصاصی سکوها استفاده نمود، کد به صورت اشتراکی است وبازی روی تمام سکو ها از یک کد استفاده می نماید.

2- راه انداز سکوها

برای هر سکو باید یک پروژه راه انداز ساخته شود. کد پروژه راه انداز عموماً بسیار ساده است. پروژه راه اندازی به پروژه اصلی بازی وابسته است و آن را اجرا می کند. برای مثال کد راه اندازی سکوی رایانه رومیزی (Desktop) به شرح زیر می باشد:

using MyGame;

namespace MyGame.Desktop
{
    internal static class Program
    {
        /// <summary>
        ///  The main entry point for the application.
        /// </summary>
        [STAThread]
        static void Main()
        {
            MyGameContext gameContext = new MyGameContext();
            Strawberry.Game game = new Strawberry.Game();
            game.Run(gameContext, new Strawberry.Desktop.GameLauncher(true));
        }
    }
}

در کد بالا MyGameContext زمینه اصلی بازی است که از پروژه چند سکویی فراخوانی شده است. بازی با استفاده از یک GameLauncher مخصوص سکوی رومیزی (Desktop) اجرا می شود. راه اندازی و اجرا در سایر سکو ها کمی متفاوت است که می توانید در راهنمای توت فرنگی مشاهده نمایید.

راه اندازی و اجرای بازی

راهنما

راهنمای موتور توت فرنگی دو بخش دارد:

کتابچه راهنما

این راهنما به صورت آموزشی نگاشته شده و شما را قدم به قدم در انجام کار های مختلف با موتور راهنمایی می نماید.

کتابچه راهنما

فهرست مستندات

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

فهرست مستندات

حمایت

گزارش خطا

یکی از کمک های بزرگی که می توانید به ما در امر ساخت این موتور انجام دهید، استفاده از موتور و گزارش خطا ها و یا حتی پیشنهاد تغییرات در ساختار آن می باشد.

با استفاده از لینک زیر ما را در توسعۀ هر چه بهتر توت فرنگی یاری نمایید گزارش خطا و پیشنها