Page 1 of 4 123 ... LastLast
Results 1 to 10 of 33
  1. #1
    Join Date
    Mar 2009
    Location
    Bellevue, WA
    Posts
    803

    Photon-vs-RakNet?

    I am just curious as to why you guys decided to use Photon instead of RakNet which is a really well done networking API and works well with unity already. Not complaining, just curious what your thoughts are on Photon-vs-RakNet.
    " Imagination is the preview of life's coming attractions " - Albert Einstein
    " If you can't explain it simply, you don't understand it well enough." - Albert Einstein

    My Website: http://www.gamedevlounge.com/

    If any post is informative please provide positive feedback by clicking the star below.

  2. #2
    Join Date
    Aug 2008
    Location
    San Diego, CA
    Posts
    205
    One of the major reasons that I know of is so that everything can be in a single language, C#.
    "Choose a job you love and you'll never have to work a day in your life" - Confucius
    "I see and I forget, I hear and I remember, I do and I understand" - Confucius
    "My mom didn't see the irony in calling me a son-of-a-b**ch" -- Jack Nicholson
    "'Con' is the opposite of 'Pro',so that makes congress the opposite of progress"

  3. #3
    Join Date
    Nov 2001
    Location
    Dickson, TN
    Posts
    5,649
    Quote Originally Posted by Kwest View Post
    I am just curious as to why you guys decided to use Photon instead of RakNet which is a really well done networking API and works well with unity already. Not complaining, just curious what your thoughts are on Photon-vs-RakNet.
    Hey Kwest... Personally, I didn't have any issues with Photon and Unity working together. And as T-Gunn points out, the fact that we can stay in one unified language (C#) between client, server and tool development is something that I'm a big fan of.

    Cheers!

  4. #4
    Join Date
    Sep 2003
    Location
    Raleigh, NC
    Posts
    7,272
    Other than the learning curve associated with figuring out how Photon works (which wasn't difficult), I remember the initial setup and getting Photon working in Unity to be extremely simple. The provided documentation wasn't exactly robust (Someone should really do something about that! ) so there was some experimentation to reverse engineer their example and put together something that worked better for our use case. Once you understand the way Photon works under the hood, modifying or extending it is really easy. Getting it working in Unity is pretty much just dropping in the needed files, making a connection, and then sending and receiving events.

  5. #5
    Join Date
    Oct 2008
    Location
    Holy Land
    Posts
    313
    C# as a unified language is something that will cut times seriously.
    If I have to, I'll buy photon with no hesitate..

  6. #6
    Join Date
    Sep 2005
    Location
    Montreal,Canada
    Posts
    1,858
    i believe its been stated in the unity forums that unity networking(they are using raknet) cannot handle mmo size concurrent users (i believe its because of how it was integrated).
    PSN : VenticalLamma (no ps3 at the moment) | Xbox live : Dj Whip It Out | Steam ID : undead_killa

    Sgt.Matt Baker: You really get to know a man if you get to watch him die, that moment right before he realizes its over, that moment his face reflects every decision he's ever made, what kind of life he led and if he regrets it

    (\__/)
    (='.'=) This is Bunny. Copy and paste bunny into
    (")_(") your signature to help him gain world domination.

  7. #7
    Join Date
    Jul 2006
    Location
    San Diego, CA, USA
    Posts
    897
    I've used RakNet but not Photon. For a commercial product the documentation isn't as good as I would have expected but you do get the source code. But sometimes its nice not to have to read source files just to figure out what's going on.

    I've heard that it doesn't fair so well with larger MMO type projects. Performance was an issue. That' second hand info, though. My project was not that big so I didn't experience any problems. RakNet isn't free for commercial projects either I might add.

    Steve

  8. #8
    Join Date
    Mar 2004
    Location
    Manchester, England
    Posts
    319
    Also, as well as what has already been discussed, I believe Raknet only offers UDP and for a server / client scenario where accuracy is important I think TCP/IP was deemed to be more suitable, but I could be wrong on any of those points.

    Your idea is dumb!

    @njl - YEP

  9. #9
    Join Date
    Mar 2009
    Location
    Bellevue, WA
    Posts
    803
    I believe Raknet only offers UDP and for a server / client scenario where accuracy is important I think TCP/IP was deemed to be more suitable, but I could be wrong on any of those points.
    UDP is best in terms of gaming where you need to transfer data fast. You can always order your packets and have dropped packets resent. TCP is better for things where speed is less crucial and accuracy is needed like e-mail, instant messaging etc... If we used TCP for online gaming It would be horrifically slow, especially in fast paced environments it's always better to just check if a packet was dropped, and try to resend it.
    " Imagination is the preview of life's coming attractions " - Albert Einstein
    " If you can't explain it simply, you don't understand it well enough." - Albert Einstein

    My Website: http://www.gamedevlounge.com/

    If any post is informative please provide positive feedback by clicking the star below.

  10. #10
    Join Date
    Nov 2009
    Location
    Dallas, Texas
    Posts
    170
    Honestly TCP is not very good for multiplayer games in general. For realtime game data, player input, etc only the most recent state is required so UDP is fine. For other types of data where reliability and ordering are important, the best choice is to build a layer on top of UDP that has the TCP features you need. I believe Photon does exactly this. Additionally, photon has some tech that can automatically subscribe objects for network events when they are close to each other in the world. This is pretty cool. RakNet is more of an RPC/Object Persistence type framework. Basically, this means it provides an ability to make remote procedure calls to c++ objects on a server and also manages the creation/serialization of these objects. It doesn't really have tech built in like the photon tech I just mentioned. I think RakNet has some lobby type features but that's it as far as I'm aware. This isn't bad or good necessarily, it's just a different approach. However, the big things is that RakNet is in C++ so it makes complete sense to work with a tool that fits your environment the best. Photon seems to have a good history with Unity so I like the idea of trying it out.

    The great thing about iterating on technology is that you can change it if it doesn't work out I haven't been on a project where every tool or tech I picked made it into the final release. I'm pretty sure if a tech or tool falls on it's face, changes will be made but it's definately fun to try new things because if they work out, you get to be the first one to pioneer a new tech for an industry and that's pretty cool.
    Last edited by jjguzzardo; 02-09-2011 at 01:48 AM.

Page 1 of 4 123 ... LastLast

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •