Revision Difference
net.WriteVector#510718
<function name="WriteVector" parent="net" type="libraryfunc">⤶
<description>⤶
Appends a vector to the current net message.⤶
Vectors sent by this function are compressed, which may result in precision loss. XYZ components greater than 16384 or less than -16384 are irrecoverably altered (most significant bits are trimmed) and precision after the decimal point is low.⤶
</description>⤶
<realm>Shared</realm>⤶
<args>⤶
<arg name="vector" type="Vector">The vector to be sent.</arg>⤶
</args>⤶
</function>⤶
⤶
<example>⤶
<description>Create a serverside command to send a vector to all clients, and a function to receive the vector on the clientside. This example displays the vector compression discussed above.</description>⤶
<code>⤶
if SERVER then⤶
⤶
util.AddNetworkString("testingvecs")⤶
function testvecs_sv()⤶
net.Start("testingvecs")⤶
net.WriteVector(Vector(10000, 20000, -20000.123456789))⤶
net.Broadcast()⤶
end⤶
concommand.Add("dovectest", testvecs_sv)⤶
⤶
elseif CLIENT then⤶
⤶
function testvecs_cl(len)⤶
print("RECV: vec = " .. tostring(net.ReadVector()) .. "\n")⤶
end⤶
net.Receive("testingvecs", testvecs_cl)⤶
⤶
end⤶
</code>⤶
<output>RECV: vec = 10000.000000 3616.000000 -3616.093750</output>⤶
⤶
</example>