နိဒါန်း
အွန်လိုင်းဂိမ်းများကသူတို့၏တုန့်ပြန်မှုမြန်နှုန်းနှင့်တည်ငြိမ်မှုလိုအပ်ချက်များကိုဆက်လက်တိုးတက်အောင်ဆက်လက်ပြုလုပ်နေစဉ်ဖြန့်ဖြူးထားသောဆာဗာဗိသုကာလက်ရာများသည်အဓိကဖြေရှင်းချက်ဖြစ်လာသည်။ ဤဆောင်းပါးသည်ကစားနည်းစနစ်၏စွမ်းဆောင်ရည်နှင့်တစ်ပြိုင်နက်တည်းလုပ်ဆောင်မှုများကိုပိုမိုကောင်းမွန်စေရန် Unity3D နှင့်ဆက်သွယ်ရေးဖြေရှင်းနည်းများကိုအကောင်အထည်ဖော်ရန် Workerman Framework နှင့်ပူးပေါင်းရန် Workerman Framework နှင့်ပူးပေါင်းရန်မည်သို့အသုံးပြုရမည်ကိုအသေးစိတ်ဖော်ပြထားသည်။
workerman ကဘာလဲ
Producerer သမားသည် Php Socket Framework ကိုအထူးတစ်ပြိုင်နက်တည်းက 0 န်ဆောင်မှုပေးသည့်ကွန်ယက် 0 န်ဆောင်မှုအစီအစဉ်များဖွံ့ဖြိုးတိုးတက်ရေးအတွက်ဒီဇိုင်းရေးဆွဲထားသည့်စွမ်းဆောင်ရည်မြင့် PHP Socket Framework ဖြစ်သည်။ ပေါ့ပါးသော, ပိတ်ဆို့ခြင်းမဟုတ်သော IO, platform platform features များကြောင့်၎င်းကိုလက်ငင်းဆက်သွယ်ရေး, အင်တာနက်အင်တာနက်ကဲ့သို့သောလယ်ကွင်းများတွင်ကျယ်ကျယ်ပြန့်ပြန့်အသုံးပြုသည်။
သဘာဝပတ်ဝန်းကျင်ပြင်ဆင်မှု
ဖြန့်ဖြူးထားသောဂိမ်းဆာဗာကိုမဖော်ထုတ်မီ, အောက်ပါအခြေခံပတ်ဝန်းကျင်ကိုပြင်ဆင်ရန်လိုအပ်သည်။
- PHP running ပတ်ဝန်းကျင်သည် PHP script များကိုအကောင်အထည်ဖော်နိုင်ကြောင်းသေချာစေသည်။
- composer:
composer require workerman/workerman
ကိုအသုံးပြုပြီး workerman framework ကို install လုပ်ပါ - Unity3D Development ပတ်ဝန်းကျင်ကိုပြုပြင်ပြီးအကြံပြုထားသောဗားရှင်းသည်အသစ်ဖြစ်သည်။
ဆာဗာတစ်ခုတည်ဆောက်ပါ
1 ။ PHP server script ကိုဖန်တီးပါ
ပထမ ဦး စွာ script file အသစ်တစ်ခုကို
server.php
အမည်ရှိ code1 ကို ဖန်တီး. အောက်ပါတို့ကိုရေးပါ။
<?php
require_once __DIR__ . '/vendor/autoload.php';
use Workerman\Worker;
// aWorkerစောင့်ရေှာက်2345သငေ်္ဘာဆိပ်ကမ်း,အသုံးပြုwebsocketတည်ဆောက်မှု
$worker = new Worker('websocket://0.0.0.0:2345');
// စတင်တည်ထောင်သည်4တစ်ခုချင်းစီကိုဖြစ်စဉ်တစ်ခုမှပေးသောဝန်ဆောင်မှုများ
$worker-> ရေတွက် = 4;
// မက်ဆေ့ခ်ျကိုလက်ခံရရှိပြီးနောက် Message ကိုလက်ခံရရှိပြီးနောက်ပြန်လည်ခေါ်ဆိုမှု -> onmessage = function ($ ဆက်သွယ်မှု, $ ဒေတာ) {
// လက်ခံရရှိသည့် client data // client $ connection-> Send ('ဟဲလို, unity3d' ကိုပြန်လည်ဖြေကြားပါ။
};
// စတင်အလုပ်လုပ်
အလုပ်သမား :: Runall ();
>
အထက်ဖော်ပြပါကုဒ်သည် client clients များစွာမှတစ်ချိန်တည်းတွင်ဆက်သွယ်မှုတောင်းဆိုမှုများကိုကိုင်တွယ်နိုင်သော websocket protocol ကိုနားထောင်ပေးသောဆာဗာတစ်ခုကိုဖန်တီးသည်။
2 ။ ဆာဗာကိုစတင်ပါ
Terminal ကိုဖွင့်ပါ,
server.php
တည်ရှိရာလမ်းညွှန်သို့ပြောင်းပါ။ အောက်ပါ command ကို execute လုပ်ပါ။
PHP server.php
အကယ်. configuration သည်မှန်ကန်ပါကအောက်ပါ output ကိုသင်တွေ့လိမ့်မည်။
---------------------------------------------------------------- ----------------------------------------------------------------
Workerman စတင် ...
---------------------------------------------------------------- ----------------------------------------------------------------
workerman ကိုစတင်ခဲ့သည်
Unity3D client ကိုအကောင်အထည်ဖော်မှု
1 ။ စည်းလုံးညီညွတ်ရေးစီမံကိန်းအသစ်တစ်ခုဖန်တီးပါ
ပရောဂျက်အသစ်တစ်ခုကိုစည်းလုံးစွာ ဖန်တီး. PHP ဆာဗာများနှင့်ချိတ်ဆက်ရန်ဝက်ဘ်ဆိုက်ဆက်သွယ်ရေးကိုထောက်ပံ့သော societio plugin ကိုတင်သွင်းပါ။
2 ။ client scripts ရေးပါ
code3 ကိုစည်းလုံးညီညွတ်မှုဖြင့်
SocketClient.cs
အမည်ရှိ script ကိုဖန်တီးပါ။
unityengine ကိုအသုံးပြုခြင်း,
Sockio ကိုအသုံးပြုခြင်း,
Public Class Socketclient: Monobehaviour
{
သီးသန့် socketiOccompent socket;
ပုဂ္ဂလိကပျက်ပြယ် start ()
{
Socket = GetComponent <SocketiOccomponent> ();
// server socket.on ("message", onmessage) မှမက်ဆေ့ခ်ျများကိုနားထောင်ပါ။
// connection socket.connect ကိုဖန်တီးပါ။
// ဆာဗာ Socket.emitt.Mit ("message", "မင်္ဂလာပါဆာဗာ" သို့စာတစ်စောင်ပို့ပါ။ );
}
ပုဂ္ဂလိကဗောငျ့တည် onmessage (societioevent င)
{
// မက်ဆေ့ခ်ျကို debug.log (e.data.tostring ());
}
}
ဇာတ်ညွှန်းသည် 0 န်ဆောင်မှုခံယူသူနှင့်ဆာဗာအကြားစာတိုပေးပို့ရေးလုပ်ငန်းစဉ်ကိုအကောင်အထည်ဖော်ပြီးစည်းလုံးညီညွတ်မှုစသည့်အခါပြန်လာသည့်အကြောင်းအရာများကိုဖြည့်ဆည်းပေးသည်။
ဆက်သွယ်ရေးဆက်သွယ်ရေး
1 ။ စီမံကိန်းတစ်ခုတည်ဆောက်ပါ
စီမံကိန်းကိုဖြည့်စွက်ပြီးစည်းလုံးညီညွတ်မှုကိုတည်ဆောက်ပြီး Societio Plugin ကိုမှန်ကန်စွာမိတ်ဆက်ပေးရန်သေချာစေပါ။
2 ။ client ကိုစတင်ပါ
စည်းလုံးမှု 0 င်ရောက်မှုကို run ပြီး console တွင်အောက်ပါ output ကိုတွေ့ရလိမ့်မည်။
မင်္ဂလာပါ, Unity3D!
ဤအချက်က WebSound connection ကို Unity Client နှင့် PHP server တို့အကြားအောင်မြင်စွာတည်ထောင်ပြီးနှစ်လမ်းသွားဆက်သွယ်မှုပြီးဆုံးကြောင်းဖော်ပြသည်။
ကောက်ချက်
ဤဆောင်းပါး၏သရုပ်ပြမှတစ်ဆင့် Workermaner ကို အခြေခံ. တည်ငြိမ်ပြီးထိရောက်သော PHP backend server ကိုမည်သို့တည်ဆောက်ရမည်ကိုကျွန်ုပ်တို့နားလည်သည်။ ဤဖြန့်ဝေထားသောဗိသုကာလက်ရာများသည်တစ်ပြိုင်နက်တည်းလုပ်ဆောင်နိုင်စွမ်းကိုတိုးတက်စေရုံသာမကဂိမ်း 0 န်ဆောင်မှုများ၏ပမာဏကိုမြှင့်တင်ပေးသည်။ Real-time Online Games ကဲ့သို့သောဖွံ့ဖြိုးရေးအခြေအနေများ, ကစားသမား Multi-player interactive platforms စသည်တို့စသည်တို့ကိုသင့်တော်သည်။