I am evaluating products for web deployment in both 2d / 3d. I started looking through the forums / unity3d site and I ended up with a few questions…
Assuming I skip shaders and other fancy stuff, and stick to basic animation and textured models how does the web player hold up on low end hardware? Primarily Intel Extreme Graphics/GMA series of chips?
These next three seem to be in “the land of plugins” but I am not sure
I want to DL and store assets client side and have the web player access them from the client. Only updating over the net when changes occur. Relying on browser caching/cookies is not a good option here.
XML parsing/manipulation?
Database access via, well… any method, preferably ODBC, but maybe ODBC
is more a PC thing?
Presumably these plugins (if needed) will transfer over with the application when using the web client?
Other stuff
It seems like its build you own GUI system yet again. It would be really nice to have things like text boxes with wrap/scroll, tabbed panes, buttons, menus, radio/checkboxes, and there associated events all ready to go. . .
video to texture? Synced with audio?
Ataching / unatching objects to bones. And, while we are at it, vertex morphing to sync lips with audio
I see that Networking is pretty much roll your own right now via sockets.
I am pretty much clueles about mono/macs at this point, but will web users need to have it installed on there Macs if I am adding code in C#?
Yes. If you don’t use pixel lights or at least don’t use them a lot. Running on a intel extreme is no problem.
Browser caching and cookies is the only to store data on the client through the web player at the moment. We might look at the local storage functionality smilar to Flash in the future, but right now you have to stick with cookies and browser caching. http://www.unifycommunity.com/wiki/index.php?title=CookieCutter
Yes, builtin through .NET System.XML classes.
Yes. Unity includes an entire .NET runtime. There are SQL libraries for .NET. I am sure ODBC libraries are also available somewhere.
External .NET libraries are automatically packaged distributed with the content.
Yes, at the moment there are only basic buttons in the
We are very aware of the need for a complete gui system.
Not yet.
Very easy. When importing a boned character, all nodes show up in the hierarchy and you can attach components/scripts etc at will.
Currently bone based animation only. We have several companies doing facial animation using bones. We still see the use of supporting both though.
Yes at the moment we provide a cross platform socket library. It gives you a huge amount of flexibility, but is not a drop in networking suport library.
With Unity 2.0 we will add a drag&drop style networking library.
Unity is a completely seamless install. We don’t have and will never have any external dependencies. The player is completely self contained. The C# and JS compiler is also completely integrated into Unity, so you will never notice that we are using mono, except in the about box.
Good, I will see what I can find to test on to see how it goes.
Ouch. That is rather problematical, we almost need the ability to store a large number of local assets and update from the net periodically. I presume this is no problem for published apps using client / server though. Of course, then web functionality and app are visibly seperate to the user, which is not ideal for us.
I notice on the FPS demo that the web player on PC/IE7 seems to keep reading the mouse, even if the mouse is outside the browser window, and even if the browser no longer has focus. This does not appear to occur for keyboard input. Is that just a “did not care, its a demo” thing, or just the way the web player is.
Which verison of the .NET Framework are you supporting via mono 1.1 or 2.0?
Unfortunately, 1.1. Looks like the new mono 1.2 has a “complete 2.0 language coverage”, but I don’t think that this means 2.0 is now the official “stable” compiler. At the moment, for me, this is a “problem”, because I’ll need to “downgrade” a framework or create a socket interface for it
EDIT: Looks like 2.0 is coming on the second quarter of 2007. I hope that it will be adopted by Unity not very far from that date.