UPD - Byte Grenze ?
Übersicht

MynBetreff: UPD - Byte Grenze ? |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Guten Tag,
ich arbeite ja an einen Netzwerkspiel das über UDP läuft. Nun habe ich ein Problem das Bytes nicht mehr ausgelesen werden. Z.B. alle über 260 ...? Ist das ein Limit von BB oder liegt es an meinem Code ? mfg Myn |
||
![]() |
grafe |
![]() Antworten mit Zitat ![]() |
---|---|---|
ein byte geht nur von 0-255, für höhere werte brauchst du int
mfg grafe |
||
Myn |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Kann man denn auch Interger statt bytes bei UDP als Variablen erkennung versenden und auslesen..?
Weil die meisten variablen die ausgelsenen werden sollen/werden sind ja auch Integer..? //EDIT oder sagen wir mal "Short" ...? |
||
![]() |
grafe |
![]() Antworten mit Zitat ![]() |
---|---|---|
WriteInt und ReadInt ist das was du suchst ![]() |
||
Myn |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Kann ich den über einen UDP Stream erst alles mit bytes auslesen und dann nochmal short auslesen lassen?
//EDIT Also ich bekomm das gerade nicht hin ..? ^^ |
||
![]() |
grafe |
![]() Antworten mit Zitat ![]() |
---|---|---|
Du musst die Daten einfach so auslesen wie du sie geschrieben hast also wenn du es so machst:
BlitzBasic: [AUSKLAPPEN] WriteByte(udp_wr, byte1) must du es so auslesen:BlitzBasic: [AUSKLAPPEN] byte1=ReadByte(udp_wr) ich hoffe das ist verständlich ![]() mfg Grafe |
||
Myn |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Hat sich erledigt... funktioniert bei mir jetzt mit SHORT..
Danke für deine Hilfe ;D |
||
![]() |
ToeB |
![]() Antworten mit Zitat ![]() |
---|---|---|
Also um es dir nochmal klar zu machen :
Ein Byte hat 8 bit und kann somit von 0 bis 2^8 Zahlen beinhalten (0-255). Ein Short besteht aus zwei bytes, also 16bit, also von 0-2^16 (0-65536) Ein Int sowie ein Float besteht aus 4 Byte, also 32bit, wobei ein Bit für das Vorzeichen benutz wird, also zahlen von -2147483648-2147483647 (wobei beim Float noch durch irgendetwas gekennzeichnet wird wo das Komma ist, damit kenn ich mich aber nicht aus) Und immer darauf achten, dass du immer die Datentypen ausliest die du auch sendest, und zwar in der Selbern reihenfolge. Also z.B. Int:Int:Float:String muss auch in der Selben reihenfolge ausgelesen werden. mfg ToeB |
||
Religiöse Kriege sind Streitigkeiten erwachsener Männer darum, wer den besten imaginären Freund hat.
Race-Project - Das Rennspiel der etwas anderen Art SimpleUDP3.0 - Neuste Version der Netzwerk-Bibliothek Vielen Dank an dieser Stelle nochmal an Pummelie, welcher mir einen Teil seines VServers für das Betreiben meines Masterservers zur verfügung stellt! |
![]() |
BladeRunnerModerator |
![]() Antworten mit Zitat ![]() |
---|---|---|
Eine Float hat einen wesentlich größeren Wertebereich als die 4 Milliarden, sie sind aber 'nur' auf sieben Stellen genau, d.h. Du kannst 123456.0 darstellen, 1.2345678 jedoch nicht.
Zudem gibt es da diverse Rundungsungenauigkeiten, das liegt einfach daran dass sich nicht jede Nachkommastelle mit der zur verfügung stehenden Bitmenge darstellen lässt. Dazu auch wikipedia: Gleitkommazahl. |
||
Zu Diensten, Bürger.
Intel T2300, 2.5GB DDR 533, Mobility Radeon X1600 Win XP Home SP3 Intel T8400, 4GB DDR3, Nvidia GF9700M GTS Win 7/64 B3D BMax MaxGUI Stolzer Gewinner des BAC#48, #52 & #92 |
Myn |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Danke euch beiden ;D | ||
Übersicht


Powered by phpBB © 2001 - 2006, phpBB Group