title: What is the best way to transport CGPoint between devices?
body: <p>I am developing a turn-based game with swift, where everything has to be converted to NSData. Right now i have been stuck on the "NS-stuff" for many days. Because CGPoint is not an object but a struct, it can't be converted to NSData directly, and so do the CGFloat inside CGPoint. What i am trying to do is: (Just an idea, not sure if it works yet.)</p>
  
  <ol>
  <li>convert CGPoint to 2 different Floats</li>
  <li>create NSNummer with Float</li>
  <li>create NSData with NSNumber</li>
  <li>convert NSData back to NSNumber in another device</li>
  <li>convert NSNumber to Float</li>
  <li>merge them back to CGPoint</li>
  </ol>
  
  <p>This way is too complicated.
  Is there any better way to implement it or any best practices? Thanks in advance!!!</p>
  
  <p>PS: NSKeyedArchiver should NOT be considered because of it's performance. (Not sure!)</p>