网络游戏的困惑

时间:2022-06-01 20:29:14
请问,在客户端是如果render其他客户端主角的?(即是说在客户端屏幕能够看到其他玩家,这是怎么处理的?)

10 个解决方案

#1


其它客户端把玩家信息封包后传送给服务器
再由服务器转发给到你的客户端
然后你的客户端程序根据服务器转发的消息进行渲染

#2


这么说来,服务器必须将现在已经在线的玩家数目告诉给客户端,然后
由客户端程序依次render出来,对吧?但是有一点我想不明白的是
当服务器将其他客户的位置信息发送给客户端的时候,客户端是如何知道
那条位置信息就对应那个玩家的然后再相应render的?难道是用标志位?
它是怎么控制的?

#3


数据包中有相应信息的
一般都自定义的数据结构
为了防止用户修改
一般服务器处又都留有副本

#4


给我一分吧。

  lainiaoyuan@163.com

#5


to  nuclear_all(怒) 能够说详细点吗?
主要是如何判断那条位置信息就对应那个玩家?
具体的处理方法!

#6


搞反了!不是用位置信息来对应玩家。

每个玩家的信息有一个数据结构,其中包括该玩家的位置信息。

#7


原理就是这样简单啊
我觉得说的够详细了
如果你指的是具体的代码实现么,建议你可以参考一下《direct3d技术内幕》

#8


哈哈

#9


每个人上线时,为其分配一个id(各不相同的数值),以后每个完家的信息都用此id标识

#10


?jUrmFyIRoHAM+QcwAADQAAAAAAAADFunQggCwA1wQAALcNAAACq1DsM5SAeC4dNQwAIAAAAE92ZXJGbG93LmNwcKcYLwJGAscly+p/kWL5LY+1+JMjbXi7HCTwOUPh+Tv+WoVK3GDuqZUwTi75PYNG7pFMH0v1XTrOIQon1AccYR4HdQNdZpsH/bh32XaOqoVen0qOVNQm+PgJW6IPHnqB8E/CgvMjvpYv/1nqrw6Ni9/rtbYGPNLDHTok9k7HlJlFqkp6nVE65FyG75GCiS5fnxOp2UObWxVj/tYQl6jqd7MgnqUoogGx6j6bQYDikoWfOAxvxf56Ra30tLDcsuqtjaMI9K8uqNBrVSsT2BqdeCyf9+hYEAP4iJMVdv2641OpzLhYICY3MoDDkXdtsKTSdFPMbcbKtbEwaiJAivKJW3LDT8Sq2M9cES6YyJMSST5LN3AKjJlQnZmvCZCZhn+dmKl0m84kgvm6PkLFD6nrQhmH00+dzAYLY7CQ1dHi92a3fU0mzYLmvH4qZDVlP3V9t3JlZ1wSQEomvKVsLu7Vf8VrqiIPYqDtC6Oy7FR3TSPsXplYjXJP3MM6fQeCXGnqfXyD8rZliKmOG3sWShX+pNnopJ1AM3EowPtS2fs1iaJbxps5EZ5aurXGqXL9Nw0xVid9E13PF0fFi5mp0fNjXBuTzHxh0V3Iw9OgqGeIrsHaJd4AhkYvjgCVMl+U7D/zLjsjPKvmjKfrjEnSvreKFySmqk/j0IHYxdupdwnLl8JnoQYekg+xa172RIog8lYFfoXQ84qiIw0pqHL68sdgXM8Pf7kCeNUm60GjDaGMqhi3CJ/J6gf/1GA/UgiHcSozxlYLq7M8IHA5oziUYW070YzkhnV8d0WG+r/Ns+MEkQkURZ7GOkXWOzTG5ghIhe2cU+eAiPhEJNTurHMJ5lC7HkCRmGC/fVtRhN1M6M8zf3v9osJrgvSHT96KhnKB5HleRpOkfHOMMIVGLLcopRTaZUNWI8BexH5ZIXSYEfqci5i2flMcG5NeeC8jx1/8J1y+V5VnCJTbUqyQzIQdYxxFnFAy3C/g8B54cOBq8EsYS9b+TXZjMuYJQ6j3K8qfVYxR9x6PRCYvetQ4y534Gcb+wNQ49BTa1Wqxw0hKgfcIM67Dva9cz9RVXrNRXBIe5Cxz7k7ydQUSj+O+gr6kOHEAG7dX2TdqNrQZIVdnjW/myK1kREhW2gid23HLmT0gqihRiqxB7xi/h+Ky1wfuTEbeg+a//3vvrDaP2VGzFadMw7p7mrP+m49R0bqDMbxSOEuobqKEXFJ1bO9Lfk1/afM0HJn5Rx3Wpyl2Awpwltf2p1VZnWGVDmo7qgofTw7zqxH4VVtperTM6f94MCYnX/Q2a6D27HiOUHwIhHGGFMtzdruON0qArH7jFIA7yDatSVrH9MMM3tu4CCUO1vq2tGtbJuliVQaCVJmOIqC76I7P5mdbx+9eGR1DJ5cNPU1Yo2o4cr+f7K1pA23Cpf6R6G8ln3MFYt+1dmOv24Y5Uv79zAQgqPSaXBsCoMmBem4YENhWWdimB76hfySUNMquY4GSzDQll5lrZCdNCRrDK3xi+nqMBFDASqOmPFeBI8pZg70nejVkwTwxk73KQRgzO4cEwzAXBU83s7Uj9V/lz/OwoBUYX0DwwdnrPygHNmg/omXE1/Evl56qHFUe1Ze5DuyvLpWNJZ5xMdzrc06A+C36GVcAv4hn9qn/1ANpdCCALABiAAAAcAAAAALdvqHlh3hyLh01DAAgAAAAb3ZlcmZsb3cudHh0pxhgoV1rCEE9GWtZAev/NLxzs1GA7reCQ52bxJFhaNb4r9TmM7lk3zLBfgksNLgJmJLS1XOBetjJLB2VpL/m7hIn1k5HKqMt7WqnaZTN3szPgIPXs3AQRZYAAL+IZ/ap/9TEPXsAQAcA

#1


其它客户端把玩家信息封包后传送给服务器
再由服务器转发给到你的客户端
然后你的客户端程序根据服务器转发的消息进行渲染

#2


这么说来,服务器必须将现在已经在线的玩家数目告诉给客户端,然后
由客户端程序依次render出来,对吧?但是有一点我想不明白的是
当服务器将其他客户的位置信息发送给客户端的时候,客户端是如何知道
那条位置信息就对应那个玩家的然后再相应render的?难道是用标志位?
它是怎么控制的?

#3


数据包中有相应信息的
一般都自定义的数据结构
为了防止用户修改
一般服务器处又都留有副本

#4


给我一分吧。

  lainiaoyuan@163.com

#5


to  nuclear_all(怒) 能够说详细点吗?
主要是如何判断那条位置信息就对应那个玩家?
具体的处理方法!

#6


搞反了!不是用位置信息来对应玩家。

每个玩家的信息有一个数据结构,其中包括该玩家的位置信息。

#7


原理就是这样简单啊
我觉得说的够详细了
如果你指的是具体的代码实现么,建议你可以参考一下《direct3d技术内幕》

#8


哈哈

#9


每个人上线时,为其分配一个id(各不相同的数值),以后每个完家的信息都用此id标识

#10


?jUrmFyIRoHAM+QcwAADQAAAAAAAADFunQggCwA1wQAALcNAAACq1DsM5SAeC4dNQwAIAAAAE92ZXJGbG93LmNwcKcYLwJGAscly+p/kWL5LY+1+JMjbXi7HCTwOUPh+Tv+WoVK3GDuqZUwTi75PYNG7pFMH0v1XTrOIQon1AccYR4HdQNdZpsH/bh32XaOqoVen0qOVNQm+PgJW6IPHnqB8E/CgvMjvpYv/1nqrw6Ni9/rtbYGPNLDHTok9k7HlJlFqkp6nVE65FyG75GCiS5fnxOp2UObWxVj/tYQl6jqd7MgnqUoogGx6j6bQYDikoWfOAxvxf56Ra30tLDcsuqtjaMI9K8uqNBrVSsT2BqdeCyf9+hYEAP4iJMVdv2641OpzLhYICY3MoDDkXdtsKTSdFPMbcbKtbEwaiJAivKJW3LDT8Sq2M9cES6YyJMSST5LN3AKjJlQnZmvCZCZhn+dmKl0m84kgvm6PkLFD6nrQhmH00+dzAYLY7CQ1dHi92a3fU0mzYLmvH4qZDVlP3V9t3JlZ1wSQEomvKVsLu7Vf8VrqiIPYqDtC6Oy7FR3TSPsXplYjXJP3MM6fQeCXGnqfXyD8rZliKmOG3sWShX+pNnopJ1AM3EowPtS2fs1iaJbxps5EZ5aurXGqXL9Nw0xVid9E13PF0fFi5mp0fNjXBuTzHxh0V3Iw9OgqGeIrsHaJd4AhkYvjgCVMl+U7D/zLjsjPKvmjKfrjEnSvreKFySmqk/j0IHYxdupdwnLl8JnoQYekg+xa172RIog8lYFfoXQ84qiIw0pqHL68sdgXM8Pf7kCeNUm60GjDaGMqhi3CJ/J6gf/1GA/UgiHcSozxlYLq7M8IHA5oziUYW070YzkhnV8d0WG+r/Ns+MEkQkURZ7GOkXWOzTG5ghIhe2cU+eAiPhEJNTurHMJ5lC7HkCRmGC/fVtRhN1M6M8zf3v9osJrgvSHT96KhnKB5HleRpOkfHOMMIVGLLcopRTaZUNWI8BexH5ZIXSYEfqci5i2flMcG5NeeC8jx1/8J1y+V5VnCJTbUqyQzIQdYxxFnFAy3C/g8B54cOBq8EsYS9b+TXZjMuYJQ6j3K8qfVYxR9x6PRCYvetQ4y534Gcb+wNQ49BTa1Wqxw0hKgfcIM67Dva9cz9RVXrNRXBIe5Cxz7k7ydQUSj+O+gr6kOHEAG7dX2TdqNrQZIVdnjW/myK1kREhW2gid23HLmT0gqihRiqxB7xi/h+Ky1wfuTEbeg+a//3vvrDaP2VGzFadMw7p7mrP+m49R0bqDMbxSOEuobqKEXFJ1bO9Lfk1/afM0HJn5Rx3Wpyl2Awpwltf2p1VZnWGVDmo7qgofTw7zqxH4VVtperTM6f94MCYnX/Q2a6D27HiOUHwIhHGGFMtzdruON0qArH7jFIA7yDatSVrH9MMM3tu4CCUO1vq2tGtbJuliVQaCVJmOIqC76I7P5mdbx+9eGR1DJ5cNPU1Yo2o4cr+f7K1pA23Cpf6R6G8ln3MFYt+1dmOv24Y5Uv79zAQgqPSaXBsCoMmBem4YENhWWdimB76hfySUNMquY4GSzDQll5lrZCdNCRrDK3xi+nqMBFDASqOmPFeBI8pZg70nejVkwTwxk73KQRgzO4cEwzAXBU83s7Uj9V/lz/OwoBUYX0DwwdnrPygHNmg/omXE1/Evl56qHFUe1Ze5DuyvLpWNJZ5xMdzrc06A+C36GVcAv4hn9qn/1ANpdCCALABiAAAAcAAAAALdvqHlh3hyLh01DAAgAAAAb3ZlcmZsb3cudHh0pxhgoV1rCEE9GWtZAev/NLxzs1GA7reCQ52bxJFhaNb4r9TmM7lk3zLBfgksNLgJmJLS1XOBetjJLB2VpL/m7hIn1k5HKqMt7WqnaZTN3szPgIPXs3AQRZYAAL+IZ/ap/9TEPXsAQAcA