Suche Netzwerk Programmierer (sockets) für 3D Engine Projekt
-
Hi,
einige kennen vielleicht schon mein aktuelles Projekt: eine 2D/ 3D Engine Namens SoftPixel Engine (http://softpixelengine.sourceforge.net/)
Die Netzwerk Programmierung ist eigentlich schon angefangen, doch das Problem ist, dass ich mich noch zu wenig mit socket Programmierung in C++ auskenne. Und ich habe keine Ahnung wie man das Programmieren kann, dass Funktionen wie "listen" oder "send" das Programm nicht blockieren. Ich will in meine Engine im Grunde eine kleine Netzwerk-'Bibliothek' einbauen.Bis her sieht die Klasse in etwa so aus:
class SP_EXPORT NetworkManager { public: NetworkManager(); ~NetworkManager(); bool createServer(io::stringc ServerIPAddress, u32 Port = 80); bool connectServer(io::stringc ServerIPAddress, u32 Port = 80); std::list<u32> checkNewClients(); bool addClient(u32 NetworkClientID); void removeClient(u32 NetworkClientID); void sendMessage(io::stringc Message, u32 NetworkClientID); std::list<io::stringc> receiveMessages(); void closeConnection(); inline std::list<clientInfo> getClientList() { return ClientList; } private: void init(); bool createSocket(SOCKET &Socket); void createThreads(); void closeThreads(); WSADATA WSA_; HANDLE hThread_Connections_; HANDLE hThread_MessageSend_; HANDLE hThread_MessageRecv_; unsigned long ThreadIDConnections_; unsigned long ThreadIDMessageSend_; unsigned long ThreadIDMessageRecv_; SOCKET MainSocket_; io::stringc ServerIPAddress_; }; // Ich nutze Thread Funktionen weil ich nicht weiß, // wie ich sonst das Blockieren einiger Socket-Funktionen verhindern kann =( DWORD WINAPI Thread_Connections(PVOID pParam); DWORD WINAPI Thread_MessageSend(PVOID pParam); DWORD WINAPI Thread_MessageRecv(PVOID pParam);
Wenn jemand interesse hat meinem Team bei zu treten und diesen Teil erweiter bzw. verbessern möchte, soll sich bitte bei mir melden (EMail ist auf meiner Homepage unter Impressum zu sehen). Ich werde diesen dann natürlich auch auf meiner Homepage unter Credits in das Team eintragen
Gruß Lukas
PS: da sich das Netzwerk System in der Engine seit der ersten Release Version nicht verbessert hat, könnt ihr einfach die derzeitige Version runterladen, der SourceCode ist auch enthalten.
-
Gerade eben habe ich die neuste Version "1.5 beta" veröffentlicht.
Vielleicht ist bei dieser - duetlich besseren - Version, eher jemand daran interessiert dem Team beizutreten.Download Seite:http://softpixelengine.sourceforge.net/sp_downloads.html
-
Dieser Thread wurde von Moderator/in Jochen Kalmbach aus dem Forum WinAPI in das Forum Projekte verschoben.
Im Zweifelsfall bitte auch folgende Hinweise beachten:
C/C++ Forum :: FAQ - Sonstiges :: Wohin mit meiner Frage?Dieses Posting wurde automatisch erzeugt.