Walls and shackles need to overcome the limit (4032 and more)...
by Olexiy Kravchuk · in Torque 3D Professional · 05/04/2014 (12:40 pm) · 6 replies
I have a question, last night I discovered that it is impossible in the same level, create more (4032) visible objects, the rest which will be created, although they will be is registered in the level, and this can be collision if they are rigid, but they are is invisible!and in the next time, when the level load, the program will crash, I need to overcome this limit (significantly (+ / -) 65536 unit loads, or even more). How to implement it, where there is one lever that affects it? If it is certainly exists somewhere?
#2
You must change the GhostIdBitSize to increase the number of visible ghosts. If you change it to 13 bits, the number of visible ghosts would be 8192, 14 would be 16384, and so on. Of course, this will increase your network traffic. To limit the radius visible around the player, adjust the visibleDistance in your LevelInfo.
05/05/2014 (8:24 am)
In the engine files, look in sim/netConnection.cpp for this line: public:
/// Some configuration values.
enum GhostConstants
{
GhostIdBitSize = 12,//4096
MaxGhostCount = 1 << GhostIdBitSize, //4096,
GhostLookupTableSize = 1 << GhostIdBitSize, //4096
GhostIndexBitSize = 4 // number of bits GhostIdBitSize-3 fits into
};You must change the GhostIdBitSize to increase the number of visible ghosts. If you change it to 13 bits, the number of visible ghosts would be 8192, 14 would be 16384, and so on. Of course, this will increase your network traffic. To limit the radius visible around the player, adjust the visibleDistance in your LevelInfo.
#3
But now I have another new question. I'm in this, is not competent. But it seemed to me that the traffic on the network is sent as a minimal integer 1 byte = 8 bits? I mean that to send (12bit) still need to send two "whole" (8 bits * 2) bytes that is 16-bit? or there is some more sophisticated system?
05/05/2014 (10:36 am)
Thank you, a lot, this information is really useful for me, although I can not right this moment, to use it.But now I have another new question. I'm in this, is not competent. But it seemed to me that the traffic on the network is sent as a minimal integer 1 byte = 8 bits? I mean that to send (12bit) still need to send two "whole" (8 bits * 2) bytes that is 16-bit? or there is some more sophisticated system?
#5
05/06/2014 (12:58 pm)
To add a little here - the network system packs the data before sending and adds any needed padding. This minimizes the bandwidth used because at worst you send an extra 31 bits (might be only 7 - but I believe that data is sent in 32bit format).
#6
Richad this interesting information about sending data, but a little confused by what steps involved Number of (7, 31, 32)??? How are they happening for transformation?
PS just in case I'm sorry for my stupid polls, just when I was translating the text on my language, not in every case, I can understand that someone is trying to explain I need more detailed information, for the assimilation of this. Thanks again for your help.
05/07/2014 (11:35 am)
Joseph thanks for pointing I will reread this section again so grasp the essence, more than once! Richad this interesting information about sending data, but a little confused by what steps involved Number of (7, 31, 32)??? How are they happening for transformation?
PS just in case I'm sorry for my stupid polls, just when I was translating the text on my language, not in every case, I can understand that someone is trying to explain I need more detailed information, for the assimilation of this. Thanks again for your help.
Olexiy Kravchuk