Unity, Torque3D, Google O3D, WebGl....which to choose? [closed]
Asked Answered
A

17

34

for development of interactive 3d web applications, which engine is recommended?

I am aware that WebGL has been anounced to become standarized for all browsers in the near future (1~2 years).

I am afraid that by investing time into a proprietary game engine such as Unity, torque would be not great once plugin-less open source 3d engines appear (webgl, JavaScript for 3D).

Is this a stupid thing to worry about? Should I begin with Unity (its demos and tools were mind blowing).

Alejandrinaalejandro answered 13/11, 2009 at 23:52 Comment(2)
such a shame this question got closed. stack overflow is sometimes really weird. anyways, it seems we are going to finally get some standardization with webgl, as ie11 finally at least partially supports itJuarez
its 2019, Unity allow to export for webGL and it is easy.Gujarati
P
21

WebGL is not a failure in the making. Speaking like it's a failure shows these peoples ignorance.

That said, if you're just starting out, explore your options. If you're looking for more eyes than just windows users, stay away from proprietary solutions. Microsoft's dominance isn't big as people think, anymore. IE is fading in popularity, thanks to their ridiculous coding.

Run on all platforms, use open standards.

Patinous answered 5/2, 2010 at 22:2 Comment(0)
S
19

Unity has three huge problems. The first is that they gratuitously seal classes in their API. This means you cannto override their functionality if you don't want to do things "thier way." Secondly, they dont expose anything but the top most layers of their API. (Example, they expose their physics system, but not the PhysX API on which it is based.) This means you cannot peel off layers of their API to build your own functionality. FInally, if you want source code so you CAN do things in a way other then they tell you to, it costs "well into the 6 figures" according to the Unity sales creature I talked to.

A wise man once said that a tool makes simple things easy and complex things possible. A toy, on the other hand, makes simple things easy and complex things impossible. By this rubric, Unity is a very nice toy, but no more.

Also note that ANY technology that requries the user to install a plug-in cannot be used in schools or libraries or other public Windows system where the user does not have administrator privledges. At GDC this year Unity made noises about a version that will deploy to Flash to get around this problem BUT there are a whole lot of unanswered questiosn about this product including performnance (Flash VM sucks) and physics (there is no PhysX API for Flash.)

WebGL has one HUGE stumbling block, that is Microsoft. MSFT hates OpenGL as it competes with Direct3D. It's likely to be a cold day in hell before they support it in IE which, depending on whose statistics you want to believe, is still 30% - 60% of the browser market. Our best hope there is that MSFT releases a "WebDX" instead and some enterprising Javascript scenegraph maker builds a layer that runn on either.

O3D is dead. It's that simple. Google has no manpower on it according to the Google guys I talked to at GDC this year. Theya re-focusing on WebGL and want others to write the scenegraph. Copperlicht looks pretty nice if thaqts the direction you want to go in.

Torque3D has a reputation for beign really buggy and, again requires a plugin to run in a web browser.

Papervision's peformance up to now has been REALLY low. We're talking a handful of flat shaded ploygons and no more. The new Flash 3D acceleration might help that. Personally I also was underwhelmed by their functionality, but look at their API yourself.

So there really IS no good answer yet to your question, sorry. I'd bet my money on WebGL except for the Microsoft problem, which is a big one.

Edit: I've started looking at Away3D 4 and I am pretty impressed so far. Its a shame that thier Webgl/Javascript version is two versions back, but you could always wrap their Flash engine in a Javascript API. Something I'm actually considering doing...

Storekeeper answered 14/3, 2011 at 4:8 Comment(6)
Excellent Answer....I will buy the Away3d book now and begin....how long until Flash 11 is supported for the masses?Cheadle
Seems like the cold day in hell has arrived ;)Punk
Indeed it has. This was quite a shock to me and indicate just how weak MSFT's internet position has become.Storekeeper
Id also say that Unity has improved a lot i the past year and a half to two years. They still have the issue that they re a sealed box in many ways, but they are better then UDK in terms of what you can do with scripting. They have an export to Flash now and are working on an export WebGL.Storekeeper
UE4 now grants you access to the source for a measly 19$ a month and also supports Webgl.Drachm
I agree. They still seal some classes I wish they wouldnt, but they have responded to a LOT of dev issues over the yearsStorekeeper
B
7

WebGL has a chance because it's not middleware, and many of you should remember that there are performance and security issues that often result from plugins. Since WebGL is native and will be in all the browsers worth using by default, its market penetration is automatic. All it needs is some good content, which many companies will use.

Also, it has backing by nVIDIA, AMD, Intel, Mozilla, Opera and Apple (Safari) to name a few. That's enough to know that it will go somewhere.

Bowne answered 31/1, 2010 at 7:30 Comment(1)
yeah but IE ? definitely gonna come up with their own proprietary solutinos.....considering IE still has large chunk of market share, market penetration will be severely limited with just the "other guys"Involutional
D
4

If your 3D web app is this year or next, go with Unity3D. It provides a rapid high quality development environment, that very few engines can compete with. By choosing Mono for their scripting needs, they have made it basically "choose your own language". Currently supported languages out of the box are Boo, C# and JavaScript.

If you need Linux support, join the forums, and join the people asking for Linux support. Unity seems to actually listen to their users as to what they should add to Unity3D. When i started using Unity 1 year ago, they didn't have a Windows based editor. They listened to their customer and now they do. Unity3.0 is getting Android support for the player, and as you know Android is based on Linux, so it's not a far step to a desktop Linux version of Unity3D. Mostly what Unity is afraid of on Linux is the IDIC of Linux flavors. Binaries on Linux are not guaranteed to run on every distro.

But if your 3D web app is for 5 years down the line.. By then WebGL or Google O3D might be mature enough to fit your needs. But i wouldn't count on it. WebGL is just the next implementation of the long line of failure that is VRML. It was successful 15 years ago, it's not likely to be a success 15 years from now. As for Google O3D, i toyed with it. It can do what needs to be done, but there were unexpected half second lockups. I'm sure Google will, or has already fixed the lockups. But without an IDE targeting it, development will be slow. Add on top of that having to use JavaScript, and your app loses the maximum speed your CPU could provide it. More Complex 3D apps needs a strongly typed language to achieve the maximum speed available from the CPU.

I haven't toyed with Torque3D, so i can offer no educated opinion on that subject.

Dino answered 9/4, 2010 at 13:14 Comment(2)
Why do you think that WebGL is the new VRML? VRML was a static scene description language that lacked not just in implementation but also in vision. WebGL is the web-port of the wildly successful OpenGL spec ("ES", actually). I see no relation, except that both try to bring 3D to the web in a standardized manner.Tiernan
Don't compare VRML with WebGL. They have almost nothing in common.Nursemaid
C
1

To view this post and the respective links, please head over to my forums to read it. Includes 10+ WebGL library links

I would suggest C3DL, which I am currently using to develop a hobbyist game. It is early in development but so is WebGL and is also the leading WebGL library in my opinion. There are a few bugs and such because, well this technology is still considered "beta" and not a standard yet. There is just so much you can do with it and the fact that it cuts your development time WAY down. Also to "pqnb" IE does not hold the market share for browsers. Firefox does, then IE, with chrome a CLOSE third and rising, I expect by next year chrome to surpass both FF and IE. Also note that DirectX is exclusively on Windows. So if you want to hit the most people, and make a browser game I would use WebGL and test it on FF and Chrome. Mainly because by the time you get to finish the game it will be a standard and fully functional. Given development time lines and such of the average game. That is also one thing no one has really looked at. He is asking which engine to go with, being how its a browser based game he should already have some experience in HTML CSS JS and maybe XML. WebGL is about the only language most web developers can pick up and run with because it is Javascript based. Flash you would have a learning curve for Actionscript and of course the others have their languages and I have no experience in them so I wont go into any language discussion on them.

WebGL Pros

  1. Javascript based, Fast learning curve
  2. Not plugin based, and runs natively in browser. Faster over all since a third party plugin is not required
  3. Its OpenGL, there are hundres of tutorials already out there for it that would be simple to convert over like the NeHe tutorials, which already have been
  4. Plenty of Libraries to choose from: C3DL(recommended), Copperlicht, EnergizeGL, GLGE, SceneJS, SpiderGL, and more

WebGL Cons

  1. It is still beta and everything is in early development.
Crinkumcrankum answered 15/12, 2010 at 7:5 Comment(0)
C
1

I am the original question creator.

Update: I am now focused entirely on Unity3d, since they announced they will be adding export option for Flash Player 11. Yes they may not include physics, but everything is murky right now. Nothing's set in stone. Unity just comes with everything that makes things easier to whip up a game or at least they advertise it as. I will find out.

Cheadle answered 16/3, 2011 at 1:7 Comment(0)
T
1

From what I've read, Chrome implementations of WebGL use ANGLE/DirectX on Windows. I think that hiding source code will become an issue for some developers. Those developers can use Flash 11 or Silverlight. I don't think X3D will be left behind because there's X3DOM and XML3D--Not sure if VRML is going to make it or not--perhaps it will be translated to XML.

Triplenerved answered 18/3, 2011 at 22:40 Comment(0)
A
1

http://iewebgl.com/ i think with this one.. there's no doubt to go with WebGL

Abernathy answered 29/8, 2011 at 12:16 Comment(0)
C
1

FINALLY FOUND AN ANSWER.

Since I asked this question almost 2 years ago....I have been waiting and waiting watch every day the growing flash3d.

anyways unity3d just unveiled preview of their flash 11 export function.

even physics, everything that runs on unity3d works on flash apparently....

http://blogs.unity3d.com/2011/09/01/unity-and-flash-a-sneak-peek/

Cheadle answered 15/9, 2011 at 9:58 Comment(1)
Yup, Ive been playing with it myself and it has promise. But its still far from complete Unity functionality. Unity still has the "sealed engine" problem however which can be frustrating. Im in the process of building my own font engine in C# from the ground up just because they don't expose all the font info I need in their font classes :/ I am going to have to write my own nav mesh classes too, for similar reasons.Storekeeper
G
0

WebGL is included in the latest versions of Chrome and Firefox.

If you're not convinced that WebGL is kick-ass yet, enable WebGL in a nightly build of Firefox and visit this webpage: http://www.iquilezles.org/apps/shadertoy/

Here is how to enable WebGL in Firefox: http://blog.vlad1.com/2009/09/18/webgl-in-firefox-nightly-builds/

I would choose WebGL and have a fallback on Flash with Papervision or Sandy 3D.

Gebhart answered 13/1, 2010 at 14:32 Comment(0)
G
0

I say Flash 11

  • Unity3D - Only 70% of users accept the download (According to unity numbers published at MIGS 2010)
  • Google O3D - deprecated by Google (Now a javascript library)
  • WebGL - Not yet available except as beta in Chrome and Firefox.

Flash 11 is not yet out BUT

  • Has a simple API
  • Will have great third party wrappers like Alternativa, Away 3D
  • Will get 90% penetration within a few months of coming out

So if your STARTING your project and are on a slow homemade schedule then yes you can take that bet. I personally am.

Gyromagnetic answered 16/3, 2011 at 19:44 Comment(0)
B
-1

I say, None.

Reasons:

  • Unity3D - does not work on Linux, low market penetration
  • Torque3D - Not yet out
  • Google O3D - While a good start, it does not have a good market penetration
  • WebGL - Not yet available.

My solution:

Papervision3D - Based on Flash - that is 95% market penetration and will ensure that "almost" everyone will be able to play your game.

Flash is also very mature and have a lot of game development libraries such as jiglib for physics, native mp3 playback support, video and more.

Butyraldehyde answered 14/11, 2009 at 0:1 Comment(3)
ah yes. i left out papervision 3d. this brings up my original concern as well. Adobe has so far left the 3d development to the community and has not taken any leadership roles in this area. With the coming of open source solutions such as WebGL, how will Adobe remain competitive ? I have looked at Papervision3d and a few other flash 3d engines, but its just not optimal to churn out something like Unity3D. of course not a fair comparison, but if 3d web app's will resemble something like Unity3d's complexity, the Adobe flash's future doesn't look bright unless they pursue more active role in 3D.Alejandrinaalejandro
I'd say it's a temporary solution until Web3D support will be rolled out.Butyraldehyde
Is performance still an issue with Papervision 3D? How about in Flash 10.1? I don't have any benchmarks, but personal experience shows Unity3D to blow the pants off Papervision when it comes to performance.Akins
C
-1

I would go for Away3D in flash. Obviously, you cannot compare performance between flash and mentioned plugins, but have look to http://www.syerit.com for example to see how much 3d is now possible in flash. Also I agree with previous post. Adobe should start pushing serious 3d in flash otherwise they will loose lot of game developers(in fact, it already started)

Clavicorn answered 21/11, 2009 at 17:43 Comment(0)
P
-1

It depends on what you want to do. Is it games?

I've chosen WebGL. It's in versions of Chrome, Safari, and FF right now. Of course, it won't be turned on for the public at large for a while.

Penelopepeneplain answered 21/11, 2009 at 17:51 Comment(0)
T
-1

WebGL is already working in the nightly builds of all but IE Web Browsers. MS will definitely come up with its own proprietary solution, but someone webgl related will surely provide a plugin for IE. Check what can be already done with WebGL, for example here: http://www.spidergl.org

cheers, RB

Teerell answered 21/4, 2010 at 12:39 Comment(0)
B
-2

I’ve compared Unity3D with Torque3D. Everything about the Unity3D environment is so much better (documentation, scripting (Javascript and C#), tutorials, support, and features). Torque3D is so full of bugs, it’s practically useless. You will definitely need the source code, because you have to fix their bugs. Don’t by the Torque3D binary, because you won’t be able to use it to build a game. Don’t listen to the hype or make your decision based on the pretty pictures you see on their site.

I built a complete game using one of their tutorials in a few hours, and it looks great. I used their assets. In the same period of time, I got nowhere with Torque3D. It kept deleting my terrains, and would not save the changes.

Beguin answered 12/12, 2009 at 10:10 Comment(0)
I
-5

it really doesn't matter what firefox or chrome does because majority of the pc gaming market is ruled by Microsoft and Direct X

unless WebGL has microsoft onboard, it's a failure in the making. I am 100% sure microsoft will push 3d hardware acceleration through Silverlight, not in Microsoft's best culture to give things away openly.

Involutional answered 15/1, 2010 at 4:26 Comment(0)

© 2022 - 2024 — McMap. All rights reserved.