前面的例子,我发包的时候一直使用的是 RakNet::UNASSIGNED_SYSTEM_ADDRESS 。
这样会有一个问题,如果Send 函数的
- bool broadcast
- peer->Send(&bitStream,HIGH_PRIORITY,RELIABLE_ORDERED,0,RakNet::UNASSIGNED_SYSTEM_ADDRESS,false);
其实这也正常。从字面意思来看。
UNASSIGNED_SYSTEM_ADDRESS
一个没有分配的地址。。。
我们怎么能让RakNet把数据发送到一个没有分配的地址呢。
没办法,如果不知道地址的话,就只有 broadcast 广播出去了,谁爱接收谁就接受吧。。
这样肯定不行。所以我们要指定 服务器接收的地址 并且设置 bool broadcast 为false 。
首先需要一个地址:
- RakNet::SystemAddress systemAddress=RakNet::SystemAddress("127.0.0.1",SERVER_PORT);
然后在发送数据的时候设置地址为我们自己的 systemAddr。
- peer->Send(&bitStream,HIGH_PRIORITY,RELIABLE_ORDERED,0,systemAddress,false);