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

PHP နှင့် Unity3D ကို PHP နှင့် Unity3D နှင့်ဖြန့်ဖြူးထားသောဂိမ်းဆာဗာကိုမည်သို့အကောင်အထည်ဖော်ရမည်နည်း

M66 2025-06-03

နိဒါန်း

အွန်လိုင်းဂိမ်းများကသူတို့၏တုန့်ပြန်မှုမြန်နှုန်းနှင့်တည်ငြိမ်မှုလိုအပ်ချက်များကိုဆက်လက်တိုးတက်အောင်ဆက်လက်ပြုလုပ်နေစဉ်ဖြန့်ဖြူးထားသောဆာဗာဗိသုကာလက်ရာများသည်အဓိကဖြေရှင်းချက်ဖြစ်လာသည်။ ဤဆောင်းပါးသည်ကစားနည်းစနစ်၏စွမ်းဆောင်ရည်နှင့်တစ်ပြိုင်နက်တည်းလုပ်ဆောင်မှုများကိုပိုမိုကောင်းမွန်စေရန် Unity3D နှင့်ဆက်သွယ်ရေးဖြေရှင်းနည်းများကိုအကောင်အထည်ဖော်ရန် Workerman Framework နှင့်ပူးပေါင်းရန် Workerman Framework နှင့်ပူးပေါင်းရန်မည်သို့အသုံးပြုရမည်ကိုအသေးစိတ်ဖော်ပြထားသည်။

workerman ကဘာလဲ

Producerer သမားသည် Php Socket Framework ကိုအထူးတစ်ပြိုင်နက်တည်းက 0 န်ဆောင်မှုပေးသည့်ကွန်ယက် 0 န်ဆောင်မှုအစီအစဉ်များဖွံ့ဖြိုးတိုးတက်ရေးအတွက်ဒီဇိုင်းရေးဆွဲထားသည့်စွမ်းဆောင်ရည်မြင့် PHP Socket Framework ဖြစ်သည်။ ပေါ့ပါးသော, ပိတ်ဆို့ခြင်းမဟုတ်သော IO, platform platform features များကြောင့်၎င်းကိုလက်ငင်းဆက်သွယ်ရေး, အင်တာနက်အင်တာနက်ကဲ့သို့သောလယ်ကွင်းများတွင်ကျယ်ကျယ်ပြန့်ပြန့်အသုံးပြုသည်။

သဘာဝပတ်ဝန်းကျင်ပြင်ဆင်မှု

ဖြန့်ဖြူးထားသောဂိမ်းဆာဗာကိုမဖော်ထုတ်မီ, အောက်ပါအခြေခံပတ်ဝန်းကျင်ကိုပြင်ဆင်ရန်လိုအပ်သည်။
  1. PHP running ပတ်ဝန်းကျင်သည် PHP script များကိုအကောင်အထည်ဖော်နိုင်ကြောင်းသေချာစေသည်။
  2. composer: composer require workerman/workerman ကိုအသုံးပြုပြီး workerman framework ကို install လုပ်ပါ
  3. 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 (&#39;ဟဲလို, unity3d&#39; ကိုပြန်လည်ဖြေကြားပါ။
};

// စတင်အလုပ်လုပ်
အလုပ်သမား :: 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 စသည်တို့စသည်တို့ကိုသင့်တော်သည်။