photon.*

类型
修订版 版本 2024.3703
关键字 photon
平台 Android、iOS、macOS、Windows

概述

Photon 是一个快速、精简、灵活的多人游戏开发框架。

Photon 由一个服务器和适用于所有主要平台的客户端 SDK 组成。**Photon Cloud** 是一个完全托管的 Photon 服务器服务。Exit Games 在多个区域运营这些服务器,供立即使用。

此**Corona Photon 插件**提供了一个易于使用的 Lua API,用于查找游戏、通过 Photon Cloud 或 Photon Server 与其他客户端通信,以及更多。

语法

local photon = require "plugin.photon"
local serverAddress = "ns.exitgames.com:5058" -- Photon Cloud Nameserver address
local appId = "<app-id>" -- each application on the Photon Cloud gets an appId
local appVersion = "1.0" -- clients with different versions will be separated (easy to update clients)
local client = photon.loadbalancing.LoadBalancingClient.new(serverAddress, appId, appVersion)
client:connectToRegionMaster("EU") -- connect to Nameserver, get Master server address for "EU" region and connect to it

模块

Photon LoadBalancing

Photon Chat

Photon Server Peer

项目设置

要使用此插件,请在 build.settingsplugins 表中添加一个条目。添加后,构建服务器会在构建阶段集成插件。

settings =
{
    plugins =
    {
        ["plugin.photon"] =
        {
            publisherId = "com.exitgames",
        },
    },
}

Solar2D Native

在 Solar2D Native 项目中使用 Corona Photon 插件可以减少客户端在建立与服务器连接(在认证阶段启用加密)所花费的时间。下载适用于你的平台的插件库,并将其链接到应用程序可执行文件中。

Android

iOS

iOS 模拟器

示例代码

基本示例是一个简单应用程序,用于演示创建房间和在房间内交换事件。

粒子演示 会自动让玩家加入房间,同步玩家在网格上的位置。它还使用一些高级功能,比如属性、事件缓存,并将“世界”网格分成四个兴趣组。

聊天 API 示例是一个聊天客户端示例。

注意:这些示例启用了Photon Cloud - 无需设置任何服务器!注册(免费),检查你的邮件以访问 Photon Cloud 仪表盘,然后将你的 AppId 复制并粘贴到 cloud-app-info.lua 中的 AppId 字段。

支持