လက်ရှိတည်နေရာ: ပင်မစာမျက်နှာ> နောက်ဆုံးရဆောင်းပါးများစာရင်း> Multiplayer Online Stategy ဂိမ်းကိုရယူရန် PHP နှင့် Unity3D ကိုမည်သို့အသုံးပြုရမည်နည်း

Multiplayer Online Stategy ဂိမ်းကိုရယူရန် PHP နှင့် Unity3D ကိုမည်သို့အသုံးပြုရမည်နည်း

M66 2025-06-16

workerman ကိုသုံးပြီးဆာဗာတစ်ခုတည်ဆောက်ခြင်း

ခေတ်သစ်အင်တာနက်ဝန်းကျင်တွင် Multiplayer Online Strategy ဂိမ်းများသည်ကစားသမားများစွာအတွက်ရွေးချယ်စရာနည်းလမ်းများဖြစ်လာသည်။ PHP နှင့် Unity3D ကိုမည်သို့အသုံးပြုရမည်နည်း။ trackerman framework နှင့် Collecerer Interformation Multiplayer Game Game ကိုဖန်တီးရန်ဤဆောင်းပါး၏အဓိကအကြောင်းအရာများဖြစ်လာသည်။

Workerman သည်စွမ်းဆောင်ရည်မြင့်မားသော PHP Socket Framework ဖြစ်သည်။ ပထမ ဦး စွာကျွန်ုပ်တို့သည်ကစားသမားဆက်သွယ်မှုများနှင့်အချိန်မှန်ဒေတာအပြန်အလှန်ဆက်သွယ်မှုများကိုကိုင်တွယ်ရန် workerman server တစ်ခုတည်ဆောက်ရန်လိုအပ်သည်။

Code Page: Workerman Server Side

<?php
require_once '/Workerman/Autoloader.php'; // မိတ်ဆက်ခဲ့သည်Workermanဖိုင်များကိုအလိုအလျောက်တင်နေသည်
use Workerman\Worker;

// aWebSocket Worker,စောင့်ရေှာက်2345သငေ်္ဘာဆိပ်ကမ်း
$ws_worker = new Worker("websocket://0.0.0.0:2345");

// လုပ်ငန်းစဉ်အရေအတွက်ကိုသတ်မှတ်ပါ
$ws_worker-> ရေတွက် = 4;

// client ကိုဆက်သွယ်သည့်အခါ connection id ကိုဆက်သွယ်ပါ
$ ws_wlowerker -> onConnect = function ကို ($ ဆက်သွယ်မှု) {
    $ ဆက်သွယ်မှု -> Send (JSONS_CENDODED ([
        &#39;Type&#39; => &#39;Connect&#39;,
        &#39;ID&#39; => $ ဆက်သွယ်မှု -> ID
    ))))))
};

// client သည်မက်ဆေ့ခ်ျတစ်ခုပေးသည့်အခါဆက်သွယ်ထားသော client များအားလုံးကိုဆက်သွယ်ထားသောဖောက်သည်များအားလုံးကိုထုတ်လွှင့်သည်။ $ WS_WAWEER -> onmessage = function ($ ဆက်သွယ်မှု, $ ဒေတာ)
    Foreach ($ ဆက်သွယ်မှု -> 0 န်ထမ်းများ> ဆက်သွယ်မှု $ client_conn အဖြစ်)
        $ client_conn-> Send ($ ဒေတာ);
    }
};

// client ကို client ကိုအဆက်ပြတ်သောအခါချိတ်ဆက်ထားသောဖောက်သည်များအားလုံးကိုဒေါ်လာ WS_WAWEER -> Onclose = onclose = function ($ ဆက်သွယ်မှု)
    Foreach ($ ဆက်သွယ်မှု -> 0 န်ထမ်းများ> ဆက်သွယ်မှု $ client_conn အဖြစ်)
        $ client_conn-> Send (JSONS_CENDODED ([
            &#39;Type&#39; => &#39;disconnect&#39;,
            &#39;ID&#39; => $ ဆက်သွယ်မှု -> ID
        ))))))
    }
};

// အလုပ်သမားလုပ်ငန်းစဉ်ဝန်ထမ်း --: Runle ();
>

အထက်ဖော်ပြပါကုဒ်သည် Port 2345 ကိုဖော်ပြသော websocket server တစ်ခုဖန်တီးသည်။ လုပ်ဆောင်ချက်များတွင် - client clunonnection တွင်ချိတ်ဆက်ခြင်း, မက်ဆေ့ခ်ျပို့ခြင်းနှင့်အသံလွှင့်ခြင်းနှင့်အသံလွှင့်ခြင်းနှင့်အသံလွှင့်ခြင်းနှင့်အသံလွှင့်ခြင်းသတိပေးချက်များ။

Unity3D client certican connection server

နောက်တဖန်ကျွန်ုပ်တို့သည် UNITITE3D မှတစ်ဆင့်ဂိမ်း client ကိုတီထွင်ပါ။ ဆာဗာနှင့်ချိတ်ဆက်ရန်နှင့်ဒေတာနှင့်အပြန်အလှန်ဆက်သွယ်ရန် WebSocket protocol ကိုသုံးပါ။

Code Perment: Unity3D client certion

unityengine ကိုအသုံးပြုခြင်း;
websocksarp ကိုအသုံးပြုခြင်း,

Public Class GameClient: Monobehaviour
{
    သီးသန့် websces websock,

    // ဆာဗာပျက်ပြယ် start ကိုဆက်သွယ်ပါ ()
    {
        websocket = waids: "ws: //127.0.0.0.0.1 :11: 2345), // ဆာဗာ၏ IP နှင့် port websonopen + = (Sender, E) = >>
            Debug.Log ("ဆာဗာနှင့်ချိတ်ဆက်ထားသည်!");
        };
        websonmess.Onmessage + = (Sender, E) = >>
            Debug.Log ("+ e.data):
        };
        websect.onclose + = (ပေးပို့သူ, E) => {
            Debug.Log ("ဆာဗာမှအဆက်ပြတ်!););
        };
        websconnect.Connect ();
    }

    // ဆာဗာပျက်ပြယ်အပ်ပုံစံကိုမက်ဆေ့ခ်ျပို့ပါ ()
    {
        လျှင် (input.get.ygetkeydown (keycode.space))
            websect.send ("မင်္ဂလာပါဆာဗာ!");
        }
    }

    // connection ကိုပိတ်ပစ်ပိတ်ဆို့ခြင်း ondestroy ()
    {
        websocket.close.Close ();
    }
}

အထက်ပါကုဒ်သည် Websoint Server နှင့်ချိတ်ဆက်ထားသည့် server address သည် 127.0.0.1 ဖြစ်သည်။ 0 န်ဆောင်မှုခံယူသူသည် 2345 ဖြစ်သည်။

Multiplayer Online Stategy ဂိမ်းကိုအကောင်အထည်ဖော်ပါ

PHP နှင့် Unity3D မှတစ်ဆင့် Photerman နှင့်ပေါင်းစပ်ပြီး Multiplayer Online Interaction သည်အွန်လိုင်းအပြန်အလှန်ဆက်သွယ်မှုလုပ်ဆောင်မှုများကိုနားလည်ပြီးအချိန်နှင့်တပြေးညီတိုက်ခိုက်ရေး, developer များသည်ဂိမ်းယုတ္တိဗေဒကိုဤ အခြေခံ. ထပ်မံချဲ့ထွင်နိုင်ပြီးပိုမိုအပြန်အလှန်ဆက်သွယ်မှုနှင့်စိန်ခေါ်မှုများကိုထပ်ထည့်နိုင်သည်။

အကျဉ်းချုပ်

ဤဆောင်းပါးသည် PHP နှင့် Unity3D မှတဆင့် Multiplayer အွန်လိုင်းမဟာဗျူဟာဂိမ်းများကိုမည်သို့တည်ဆောက်ရမည်ကိုမိတ်ဆက်ပေးသည်။ workerman 0 ည်တ်စက်ဝိုင်းပေါ်တွင် Real-time conferencer မှတစ်ဆင့် client နှင့် ဆက်သွယ်. client နှင့် ဆက်သွယ်. client နှင့်ချိတ်ဆက်ခြင်း, clients နှင့်ဆက်သွယ်ခြင်း, Real-time interaction ပါသော Multiplayer ဂိမ်းစနစ်ကိုအလွယ်တကူတည်ဆောက်နိုင်သည်။ Multiplayer Online Stateady Games ၏ဖွံ့ဖြိုးတိုးတက်မှုအတွက်နည်းပညာဆိုင်ရာဖြေရှင်းနည်းများကိုအထောက်အကူပြုသည်။