以下是Python代码示例,用于使用Unity中的Socket进行联机:

Unity端:

using UnityEngine;
using System.Net.Sockets;
using System.Text;

public class SocketClient : MonoBehaviour {

    private TcpClient client;
    private NetworkStream stream;

    // 连接服务器
    public void Connect() {
        client = new TcpClient();
        client.Connect("127.0.0.1", 8888);
        stream = client.GetStream();
    }

    // 发送消息
    public void SendMessage(string message) {
        byte[] data = Encoding.UTF8.GetBytes(message);
        stream.Write(data, 0, data.Length);
        Debug.Log("Send message: " + message);
    }

    // 接收消息
    public string ReceiveMessage() {
        byte[] data = new byte[1024];
        int length = stream.Read(data, 0, data.Length);
        string message = Encoding.UTF8.GetString(data, 0, length);
        Debug.Log("Receive message: " + message);
        return message;
    }

    // 关闭连接
    public void Close() {
        stream.Close();
        client.Close();
    }
}

Python端:

import socket

server_address = ('127.0.0.1', 8888)
sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
sock.bind(server_address)
sock.listen(1)

print('Waiting for a connection...')
connection, client_address = sock.accept()

try:
    print('Connection from', client_address)

    while True:
        data = connection.recv(1024)
        if not data:
            break
        message = data.decode('utf-8')
        print('Receive message:', message)

        response = 'Hello, ' + message
        connection.sendall(response.encode('utf-8'))
        print('Send message:', response)

finally:
    connection.close()

这个示例只是一个简单的回声服务器,当接收到Unity客户端发送的消息时,它会将其发送回客户端。你可以根据需要修改这个示例来实现你自己的联机逻辑。

unity socket联机代码用python写

原文地址: https://www.cveoy.top/t/topic/bkpi 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录