네트워크 계층 라이브러리


12

무료 또는 인디 게임에 대해 공정한 가격으로 게임에 추가 할 수있는 모든 네트워크 계층을 찾고 있습니다.

네트워크 계층이란 인터페이스와 연결할 수있는 일종의 라이브러리를 의미하며 메시지를주고받을 수 있으며 모든 하위 수준 정보를 자체적으로 처리합니다.

나는 특히 찾고 있습니다 :

  • 네트워크 혼잡과 같은 복잡한 것을 이해하고 처리하는 고품질 라이브러리.
  • 확장 가능한 라이브러리 덕분에 많은 플레이어가 함께 연주 할 수 있습니다.
  • 서버 기반 솔루션이 아닌 피어 투 피어 솔루션이 바람직합니다.
  • 바람직하게는 고급 언어 (예 : Java 또는 C #)에 대한 바인딩이있는 라이브러리입니다.

내가 찾고있는 예는 Grapple 이지만 다른 라이브러리가 있음을 알고 있습니다.


매우 유용한 주제이지만이 질문은 다양한 라이브러리의 기능 비교와 개방형 토론을 실제로 요구하기 때문에 stackexchange 형식에 적합하지 않을 수 있습니다.
카메론 프레드 먼

답변:


8

이 목록 에 ENet 을 추가해야한다고 생각합니다 . 물론 다른 언어에 대한 바인딩은 제공되지 않지만 C로 작성되었으므로 바인딩을 만드는 것은 쉽지 않습니다.

저는 ENet이 강력하고 잘 작성되어 있고 확장 가능하며 피어 투 피어 게임을 잘 처리한다는 것을 알았습니다.


5

우리는 잠시 동안 RakNet을 사용하고 있었고 그것을 사용하여 다른 스튜디오에서 긍정적 인 리뷰를 받았습니다. http://www.jenkinssoftware.com/

RakNet의 좋은 점은 대부분 크로스 플랫폼이므로 콘솔 공간에 들어 가려는 경우 좋은 가능성입니다.


인디 게임에 무료 인 방법을 좋아합니다
Oak

나는 또한 RakNet을 사용했는데 꽤 좋습니다. 완벽하지는 않지만 샘플은 훌륭하고 소스에 대한 전체 액세스 권한이 있으며 Indie 라이센스는 매우 관대합니다.
Logan Kincaid

4

Zoidcom (C ++)은 잘 설계되어 있으며 훌륭한 문서 + 예제가 있기 때문에 선택했습니다 .

Zoidcom 네트워크 라이브러리는 높은 수준의 UDP 기반 네트워킹 라이브러리로서 게임 오브젝트의 자동 복제 및 네트워크 연결을 통한 상태의 대역폭을 매우 효율적인 방식으로 동기화하는 기능을 제공합니다. 이는 비트 스트림과 객체 정보를 다중화 및 역 다중화함으로써 이루어 지므로 중복 데이터 전송을 쉽게 피할 수 있습니다. Bool은 하나의 단일 비트 만 사용하며 정수 및 부동 소수점은 필요한만큼 많은 비트로 제거됩니다.

효율적인 네트워크 프로토콜을 개발하려고 할 때 나타나는 지루한 작업은 Zoidcom에 의해 처리됩니다. 잃어버린 훨씬 더.

Zoidcom을 사용하여 만든 일부 오픈 소스 게임 :

특허:

Zoidcom은 비상업적 용도로 무료로 제공되며 계속 사용할 수 있습니다. 상업용 및 쉐어웨어 라이센스는 요청에 따라 제공되며 공식 라이센스 발표는 릴리스 1.0에서 제공됩니다.


2

C #에 문제가 없다면 Lidgren을 확인할 수 있습니다 . 현재 3 세대에는 다음과 같은 기능이 있습니다.

  • MIT 라이센스
  • 피어 투 피어 (NetClient / NetServer는 NetPeer를 기반으로 함)
  • 지연 시뮬레이션
  • 패킷 암호화
  • 매우 효율적 (쓰레기 제로에 재사용되는 버퍼)
  • 적극적이고 반응적인 개발자!

1

Java를 언급 했으므로 JGN (http://forum.captiveimagination.com/index.php/board,4.0.html)을 살펴 보는 것이 좋습니다. 개인적으로 실제로 사용한 적이 없지만 좋은 소식을 들었습니다. JME 포럼에 있습니다. 그래도 문서는 부족한 것 같습니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.