Multiplayer game using unity free version for Android - unity3d

I am going to start my first game on unity which is a real time multiplayer game for android. I want to ask few things.
Do I need to buy pro version or any license for the whole process (from development to submission to play store, I know that splash screen can not be change). My game is almost like 8 pool ball with all multiplayer features (create user profile, play with friends, play with Facebook friends, challenge friends, leader board filters etc etc) like in 8 pool ball. I am planning of using Photon for multiplayer.
I also need the Web and Facebook version as well in future.
I also see few pages about this but I am still confuse.
Thanks in advance.

The Unity3D personal version does NOT support C# sockets on mobile, so no 3rd party realtime plugin, neither Photon nor any other, will work on Android (or on iOS) with the personal version of Unity3D, but they all require Unity3D pro.
There is only one exception to this: PUN+ works even with Unity3D Personal on Android and iOS, because it applies a fallback to use C++ sockets through a native plugin on platforms, on which C# sockets are not available in Unity3D Personal. However, this is only true for PUN+ (Photon Unity Networking Plus), not for PUN (Photon Unity Networking).

Unity in Version 5 has no engine-specific pro-Features anymore. So basically free = pro (besides some services and splash screens). So you can go with Unity 5 free and e.g. Photon.
Regardings costs: It could be that you need some sort of webservice for your game (managing profiles etc.) so the webserver could produce some costs. But for getting started there are many free services out there like https://www.heroku.com/
Furthermore you will need to pay the 25$ fee for Google Play to publish the game.

Related

Unity multiplayer(android and ios) using socket.io

I am trying to achieve multiplayer game for android and IOS, I have multiple options,
Photon
Mirror
MLAPI
Socket.io
option 1,2,3 are not working for me as I found out that I cannot program a dedicated server for my specific needs and access db from them.
I am left with socket.io but I am not sure if it supports android and IOS games, plugins I found are mostly for webGL and standalone. Does anyone know if socket.io works for android and ios games made with unity smoothly ?
Yes. it's working well on android and iOS games.
But it has some problems to make games.
If your game is not big game like 2D, Card Game it's ok for you to develop with socket.io but if it's big game like 3D style(FPS, RPG, RTS...), you should use good multiplayer services like Photon Server.
For database it's not problem for you to do use database.
Of course you have to make backend to use database.
But think about to split multiplayer server and backend server using database.
Then it's same with Photon, Mirror, MLAPI, Socket.IO.
Only you can use Socket.IO on backend server so it's only comfortable for you.
So you can select multiplayer server with your game style.
I hope it will help your project.

Will a mixed-reality application and experience developed for Hololens 2 using Unity work on Oculus Quest as is?

To allow sales people to meet clients in the COVID19 era without travelling, busienss wants to create a virtual meeting room .
The clients will get Oculus Quest as Hololens is hard to procure right now where as business wants to use Hololens on their end.
Will an application /experience created for Hololens using Unity work as is on Oculus Quest or does it make sense to have the same device on both end?
I am new to this area, so not sure if this question makes sense, but is it something like developing 2 versions of code, one for iOS and one or Android and using something like Xamarin to make the process easy ?
Does Unity have features to make applications compatible between Hololens and Oculus Quest ?
MRTK makes it easy to make multiplatform XR applications.
https://microsoft.github.io/MixedRealityToolkit-Unity/Documentation/GettingStartedWithTheMRTK.html
Unity will allow you to run most applications on both Windows on ARM (HoloLens 2) and Android (Quest).
MRTK even has hand tracking support on both platforms.
https://microsoft.github.io/MixedRealityToolkit-Unity/Documentation/CrossPlatform/OculusQuestMRTK.html

Understanding VR ecology

I have background in android and have developed few apps of my own. Now I want to explore VR app development for android. Going through forums etc., first thing I understand is that I need to have basic infrastructure like unity 3d sdk, cardboard sdk, cardboard device etc. I am not able to understand roles these individual components play in overall bigger picture.
Like, why do I need unity 3d sdk if I have android sdk and cardboard sdk, and android studio as dev environment?
Then, if I plan to develop for something like Oculus then what all sdks and devices are needed, and which programming language I can work with?
Your options depend on which device you'll target:
Game engines like Unity: You need Unity and some plug ins and of course the device you will target too:
Google Cardboard / Daydream
Samsung Gear VR
From scratch application: Your language is java and you need to download the sdk for your target device:
Google Cardboard / Daydream SDK
Samsung Gear VR, Oculus Mobile SDK
Regards
I think there is a lot of promise in web-based VR. Of course, the app will not be as high fidelity as a native application built in Unity or Java but you get the benefit of being able to target many platforms out of the box. ReactVR is a cool project coming out of facebook that is making it easier and more performant to build VR apps with web technologies.
Here is a cool starter-kit that can help you get started if you are interested: https://github.com/scaphold-io/react-vr-graphql
P.S. GraphQL is a great tool for enriching your VR apps with data no matter if you're building it with React, Unity, or Java.
You can check out A-Frame (https://aframe.io), a web framework for building VR experiences. It's been out over a year and has a strong community and ecosystem. With web-based VR, you get cross-platform support across Rift, Vive, Cardboard, Daydream, GearVR out of the box. With A-Frame, you get all of the boilerplate with a single line of HTML. You just have to grab a VR-enabled browser.
A-Frame's architecture is similar to Unity's, entity-component, but A-Frame makes it declarative and similar to web development. With effort, the fidelity can rival native (https://blog.mozvr.com/a-painter/).

Unity: how to embed a VR Cardboard game into a website

Right now, I think there is not a way to do it within Unity. This is what I have found so far (please, correct me if I'm wrong):
The most popular VR plugins compatible with Unity for both Android and iPhone are Durovis Dive SDK and Google Cardboard SDK.
I have read that most Android phones are compatible with those VR plugins. My experience is that just a few are compatible. Durovis Dive SDK seems to be the most compatible one nowadays. If the Android phone has not gyroscope and the game has the Google Cardboard SDK plugin, the game won't load or crash. If the Android phone has not gyroscope, the game will load but the image will be still when we move the phone.
Unity 5.3 has been just released. It includes WebGL support. It includes VR support. Samsung Gear and Occulus are supported. However, I have not found out anything about the compatibility with others Android or iPhone devices. Maybe it works (I have not test it. I have not found somebody who has test it yet).
Here there is a list with VR technology for the web.
We can find stuff to Export an Unity scene to Three.js. Scripts and animations don't seem to work though.
I just spoke with an industry leader in VR experiences for media companies a couple weeks ago. And his company was one of the first to attempt VR in a web browser through mobile. He said it didn't work very well. He was partially successful, but if his company had problems, I'm guessing it's still a few years off. He said new additions to HTML are coming that will improve this over the next few years.
Hope that helps!
could you try WEBVR
YouTube Tutorial: Demo WebVR Unity
Although it has some defects, but it can serve you for basic applications. I was testing it with 360 videos, this was very heavy for the platform.
You may try WebXR. But you can't add both SDK at the same time.

2D game development with Unity3D

I tried to find some answers to a few questions I have about Unity3D games development. I want to create 2D mobile games.
The thing I really want to know is if I can create a mobile game for different platforms at one time (as cordova can build Android / iOS / Windows hybrid apps) and if I have to pay a license or something to do that.
I read that it is cross-platform but the official website doesnt give more info about how can you do it or the prerequisites to create them.
You won't need to purchase any licencing for those platforms. You will need to start paying when your annual turnover is high enough but I doubt you have to worry about that now. See here: https://unity3d.com/get-unity. Unless you make $100 000 a year off of Unity then you can deploy to all platforms for free. If you make that large amount you will have to purchase the pro licence and additional platform specific licences.
Unity builds on the Unity Player for mobile games, so as long as ur target platform can handle Unit Player, u can distribute ur game. U can see a current list on their website, but as I know, it supports all current platforms.
The compatibility between those platforms, are independent on development aspect. U create ur game with Unity and then set the target platform to deploy.
As for the licening, first of all Unity itself pro costs about 1024$, and every platform i think another 1024$ so u could first use the free version and after a bit of success easy upgrade to the pro version. On the other hand u can use the free version as long as u stay with ur yearly income under 100 000$
yes you can create cross platform games for Android, windows and IOS etc. You don't necessarily have to buy license. you can use free unity3d but keep in mind there are certain things you are not allowed to change, such as startup splash screen. also if you reach revenue of 100k there is a fee.
here is a link for license info you can find all the details https://unity3d.com/legal/eula