1

This may be the strangest Unity question folks will ever get but bear with me.

I am developing an app (so far in HTML5) that collects a lot of textual and numerical data from users. In HTML, this is all pretty straightforward. However, this data is going to be used as input for a game that another studio is building for our company. So far, the plan was to create the iOS app with PhoneGap and then find some way to integrate our data collection app with the Unity game.

But it occurs to me: maybe I can just build the data collection portion using facilities in Unity? I am a very experienced developer, have mastered eight languages (and tried many more) and am very proficient in C#.

Is this at all reasonable? Or would I be better off sticking with HTML5 or even switching to Swift and integrating the two separately-developed applications?

Any insight on the use of Unity to collect numerical/textual data would be greatly appreciated!

Mark Brittingham
  • 28,545
  • 12
  • 80
  • 110
  • How/what data is being collected currently? Are users just typing in numbers into an HTML input field or something? – Chris McFarland Apr 22 '15 at 00:46
  • It is actually a fitness app. I would, for example, step the user through a workout log: Cardio versus Strength, then Strength Category, then Exercise (optionally), then enter Weight and Reps for one or more sets. There are many more components but this will give you the idea. – Mark Brittingham Apr 22 '15 at 02:12
  • Is there a particular reason that integrating this data would be difficult otherwise, or a particular advantage that Unity offers? It seems to me to be a bit of a waste, especially since Unity isn't anywhere near as energy-efficient as a native Swift-based app can be. Apologies if I'm missing something obvious; I haven't actually used Unity more than once or twice to play with it. – Nic Apr 22 '15 at 12:10
  • The main reason is that this data collection component will serve as a front end for a real, 3D game that requires Unity for its construction. Hope that helps – Mark Brittingham Apr 22 '15 at 23:45

2 Answers2

3

There is one drawback to using Unity3d - it's hard to make the app energy efficient. So if this will run for a considerable time, the difference between an native or even html app and a unity3d one will be noticable (in heat and battery level). See this question: Energy efficiency in unity3d - halting app waiting for user interaction.

Community
  • 1
  • 1
Krzysztof Bociurko
  • 4,575
  • 2
  • 26
  • 44
  • That is a good point Chanibal. I will leave the more sophisticated energy management to the folks writing the bulk of the app (the gaming portion). After following your link, I am thinking that maybe we could take the targetFrameRate way down whenever a UI box is up on the screen collecting data. Maybe then crank it back up to game-appropriate rates when we re-enter the gaming portion. Does that seem reasonable to you? – Mark Brittingham Apr 22 '15 at 23:50
  • Should help , but the UI might be a bit unresponsive. How long are you planning to show these pop-ups? – Krzysztof Bociurko Apr 23 '15 at 07:55
1

A better question would be Why Wouldn't it be good at collecting data??? For instance if you look at the Game Analytics Engine that Unity is pushing, it gathers a tremendous amount of data in real-time and pushes it back to their data servers.

I'm not sure what I am missing on your question but as far as what you expressed...YES you can collect and send data back to a server while the app is running.

Ryan

Ryan Jones
  • 111
  • 1
  • 9
  • Ryan - the data collection that I am referring to would be data directly from the user. That is, a series of "forms" that collect information that is then sent to the server. Does that help? – Mark Brittingham Apr 22 '15 at 23:48