online 3D game development

Discussion in 'Indie Basics' started by laxmid, Jul 3, 2008.

  1. laxmid

    laxmid New Member

    Joined:
    Jan 8, 2007
    Messages:
    8
    Likes Received:
    0
    hi all,

    I am currently evaluating what technology should I use to develop online 3D games. I am currently looking at papervision 3D. has anyone here used papervision 3D?? Where can I find some tutorials or documentations n this?

    any other tehnologies you suggest for online 3D game development.

    thanks
    laxmid
     
  2. Spore Man

    Indie Author

    Joined:
    Jun 19, 2007
    Messages:
    843
    Likes Received:
    0
    Papervision 3D is FLASH.
    Don't use that. Too slow and it's not "real 3D" (in the sense of being a fully fleshed out engine, with hardware acceleration, shaders, etc, etc, all the good stuff one wants in a game).
    Flash 3D has not matured to the point where anyone should use it for anything too serious or of large scope.
     
  3. Bad Sector

    Original Member

    Joined:
    May 28, 2005
    Messages:
    2,742
    Likes Received:
    5
    If you're not annoyed by a popup window that will appear at the first time a user visits your site asking her if she trusts the content (saying that its signed by an authorized entity and stuff so its not a "fearful" warning dialog, but its an obtrusion nontheless), then you may want to check JOGL and Java (JOGL=Java bindings for OpenGL). You have full OpenGL 2.1 support and stuff. Check this demo applet by yourself. This is not a full engine of course, you need to write your own code.

    Another solution would be to use some sort of software rendering engine and Java, since for small resolutions that wouldn't be very slow. There are a few engines around doing that.
     
  4. Indiepath

    Indiepath New Member

    Joined:
    Aug 22, 2004
    Messages:
    999
    Likes Received:
    0
    PaperVision now takes advantage of 3d acceleration it's more than good enough for basic 3d games : http://ecodazoo.com/
     
  5. Genimo

    Indie Author

    Joined:
    Dec 23, 2005
    Messages:
    92
    Likes Received:
    0
    Very nice! Almost 0% CPU use on my 4 year old PC.
     
  6. Genimo

    Indie Author

    Joined:
    Dec 23, 2005
    Messages:
    92
    Likes Received:
    0
    Ok, I give up, I could not find any concrete information about PaperVision's use of hardware acceleration.

    Indiepath, do you have any links to share on the subject? Is it a Flash 10 only feature?

    People with older version of Flash player, does this demo work for you? What is your the CPU usage?
     
  7. Backov

    Original Member

    Joined:
    Oct 23, 2005
    Messages:
    812
    Likes Received:
    0
    Wow, nice app.

    Runs great on my box with FP9, about 12-20% of cpu on my C2D.
     
  8. Indiepath

    Indiepath New Member

    Joined:
    Aug 22, 2004
    Messages:
    999
    Likes Received:
    0
    Yes I think it's a flash 10 feature - at least I'm sure that's what I've got installed. If you right click on the movie then you can turn off acceleration.
     
  9. Chris Evans

    Moderator Original Member

    Joined:
    Jul 26, 2004
    Messages:
    1,162
    Likes Received:
    0
    There's also Adobe Shockwave. It's been around a long time (which coincidently is its strongest and weakest attribute).

    Here is a site that has a ton of 3D games, which are done exclusively in Shockwave.
    http://www.shockwave3d.com
     
  10. Genimo

    Indie Author

    Joined:
    Dec 23, 2005
    Messages:
    92
    Likes Received:
    0
  11. Matthew

    Indie Author

    Joined:
    Jul 29, 2004
    Messages:
    493
    Likes Received:
    0
  12. tolik

    Original Member

    Joined:
    Sep 20, 2004
    Messages:
    1,407
    Likes Received:
    0
    It is very important to choose right technology when you start, especially for a browser-based game.

    If you will choose any other technology than Adobe Flash you will lose users/players/customers. (Unless you are an established company with existing userbase having targeted users covered with your ActiveX solution or you are backed up by $-itloads of marketing money to cover lost customers)

    And the "potential clients lost" numbers are here:

    http://www.adobe.com/products/player_census/flashplayer/
    and here
    http://blogs.unity3d.com/2008/03/31/thoughts-on-browser-plugin-penetration/

    Really seriously pay attention to a note about "failed installations" - that happens due to lack of permissions or people who don't want to close their browsers after installation or during installation, broken upgrades, etc.

    By choosing anything else than Flash, you are alienating your potential userbase. All your marketing efforts will be less effective by a significant margin as users do not wish to install something untrusted or unproven.

    Choose Flash, that's the right way to go.

    There are some counter-arguments of course - you won't be able to do what InstantAction.com is doing, but everything has a price. There are certain limitations of the technology, that's why you need to learn the technology first and then design what's appropriate for it instead of designing something uber-ambitious in the beginning and then cutting corners.
    And a few exceptions from the "Flash-only" rule - companies who were slowly creating their userbase over the years with other technologies and losing customers OR existing companies/brands who have high enough level of trust to convince users to TRY installing something else.

    On the in-browser 3D technology - with Flash Player 10 going through final stages - Flash is the way to go. A market of 3D innovative in-browser products is going to explode and flourish with penetration as soon as Flash 10 will reach definite penetration. And the better the products are, the faster people will be convinced to upgrade.

    PS Choosing Papervision 3D or a different middleware is tough, lurk through Flash blogs for the best solution out there that thinks about the future of Flash 10.
     
  13. Matthew

    Indie Author

    Joined:
    Jul 29, 2004
    Messages:
    493
    Likes Received:
    0
    Flash is the undisputed champion of installed base. It's a very good route for developers, especially if you want to take advantage of the large network of Flash gaming websites. We do quite a bit of contract Flash development ourselves. But I wouldn't consider doing anything 3D with Flash.

    I think Unity's numbers are feasible if you want to do your own thing. Our own stats match their public ones--40% of Raptor Safari visitors never actually play. Maybe they just weren't interested in the game, but more than likely they were intimidated by the install process.

    Here's the upside: Unity is a stellar 3D engine. If we're going to lose 40% of our visitors to penetration, can we at least get a 40% traffic increase because our games stand out by doing things that Flash can't? Probably; look at these Unity screenshots:

    Unity Island Demo
    Jetpack Brontosaurus

    I'm looking forward to the 3D features of Flash 10, but from what I've seen it's going to be pretty rudimentary. Unity is the only plugin available for DX9-level projects.
     
  14. tolik

    Original Member

    Joined:
    Sep 20, 2004
    Messages:
    1,407
    Likes Received:
    0
    What's your primary source of the visitors, Matthew? Is it a viral buzz (reviews/communities/etc) or adsense/other ads? If I'm not mistaking, I saw review of Raptor Safari @ 1UP Show.

    If it's ads you are alienating visitors. People who click on ads don't care about 3D and stuff and any plugin increases entry barrier.
    Since I don't see some biz model behind Raptor Safari site, I assume you are talking about viral increase of traffic. People indeed make a thoughtful decision to go to your site after reading opinion/review/recommendation and are more likely to install that plugin.

    In original post I was (for some reason) assuming that someone who makes an online 3D game nowadays would have a monetization model that is NOT ads (e.g. subscription) so he'd care about visitors getting instant access to the product. That's what Chris did with SocioTown - Shockwave was the best option for 3D a year ago, unfortunately there weren't so many robust Flash 3D engines when he started.

    Anyway, as I've mentioned - there will always be exceptions, especially in indie world where we always put ambitions and freedom of making cool stuff over common sense and money ;)
     
  15. Matthew

    Indie Author

    Joined:
    Jul 29, 2004
    Messages:
    493
    Likes Received:
    0
    All of our traffic has been viral (about 400,000 visitors total). We initially posted it in a few forums, but after that we let other sites/blogs/forums take over.

    Yup, exactly! We do have a business model in the wings, but for now we're basically just making fun games and putting them out there for free. It isn't a big deal for us if we lose potential players to plugin barriers. I am curious how much friction we'll see as we push on growth and begin to monetize our games...
     
  16. Chris Evans

    Moderator Original Member

    Joined:
    Jul 26, 2004
    Messages:
    1,162
    Likes Received:
    0
    And I still don't see any robust Flash 3D engines that can handle large 3D environments with dozens of characters on screen at the same time. The above Flash3D demos are very impressive, but not much is going on in them and they have low-polygon counts. They make for good tech demos but not full-scale 3D games. It will be interesting to see what Flash 10 does, but Shockwave 12 is also updating its 3D engine.

    Tolik is spot on though about user install rates. You WILL lose visitors/potential customers if you're using anything other than Flash. So it's important to define your objectives and figure what is the best technology for you. In some cases, 3D might not even be necessary. But if you do decide that 3D is necessary for your project, unless the project is extremely simple you'll need to strike Flash off the list for now.

    I think the only real viable solutions for browser 3D are Java, Shockwave, and Unity.

    Java - This could be a decent option if you're already know Java or your game engine is in Java. I personally didn't use Java because I wanted to go with a RAD tool for faster/easier development and I'm not a big fan of the install process (it freezes a lot of browsers).

    Unity - This definitely has the most advanced 3D engine of the three. But the two main reasons I didn't choose Unity for SocioTown was because of the minute install base and the infant stage of the web player.

    The Unity install base is a big stumbling block if you want to use paid advertising to acquire users. That Unity blog post uses a best case Unity scenario and worst case Shockwave scenario. If 99% of users don't have the plugin installed, you will NOT get a 60% install rate if they just clicked an ad and never heard of your game before. That's nice that a Unity game did well on Shockwave.com but that's because the users already trust Shockwave.com won't carry a game that installs spyware/adware on their computer. It's a completely different story if a user finds your game by clicking an ad. They're much more skeptical. As Tolik mentioned, there's a big difference between a user who purposely goes to your site wanting to play your game and a user which you have to pull to your site and convince them to play. In the latter scenario, plugin penetration makes a huge difference.

    The Unity web player is coming along but it's still in its infant stage. It's good enough for single player static content, but it's not robust enough for multiplayer and dynamic content. For example, it can't stream models or animations on the fly during gameplay. That's pretty much a deal breaker for SocioTown and probably any other web MMO. Without streaming, it would mean every single character model, texture, and animation combo would have to be preloaded on startup, which is just impractical. For now, I think Unity is a great cross-platform 3D engine for standalone/downloadables, but the web player isn't quite there yet. Though I'll be keeping my eye on it.

    Shockwave - It has a solid plugin penetration and is closely associated with Flash and Adobe, which helps a lot with getting sites to carry your game and for people to install the plugin.

    The downside is the 3D engine is seriously aging and lacking many of the "wow" features that Unity has. But many of the Unity "wow" features require the user to have a current 3D graphics card. As many people here know from creating casual games, a large chunk of people have those crappy integrated graphics chips. Designing web games is similar in that you're targeting a wide group of people who most likely won't have the latest 3D graphics card. So while I wish the Shockwave engine would have some basic things like real-time shadow maps, more advanced features like pixel shaders are cool but not really necessary. If the game doesn't run well or look decent on mid-range machines, you're going to have a hard time acquiring customers.

    So I guess the choice of what technology to use for web 3D comes down to the type of game you're making (multiplayer or single player), how complex is it (large game worlds or simple scenes), and how you plan to attract players/customers.
     
  17. Matthew

    Indie Author

    Joined:
    Jul 29, 2004
    Messages:
    493
    Likes Received:
    0
    Great points, especially regarding the source of traffic. We were lucky in that many of the prominent mentions for Raptor Safari also included some positive explanation of the Unity plugin. We still saw a few comments from the super-paranoid crowd, though, about how they would never install anything ever. I can see how that would be a problem without someone vouching for you.

    You can do quite a bit to present your case to the user. This is what the Raptor Safari page looks like without the plugin. As soon as the installer is completed the game begins playing (no browser restart required). We're revising this process a bit with our new website.

    The GMA950 is everywhere. Offhand I think Shockwave.com stats are around 50% GMA950 users. These Mac stats pin it at 31%. And it's crap. It isn't really an engine problem, though, but a production one. Both Jetpack Brontosaurus and Raptor Safari run well on a 950; it's just a pain in the ass to do fallback shaders and remove extraneous visuals (for the record Raptor Safari launched poorly optimized, but we brought it up to speed a few weeks later).

    Streaming content is on Unity's radar...
     
  18. tolik

    Original Member

    Joined:
    Sep 20, 2004
    Messages:
    1,407
    Likes Received:
    0
    Thanks Chris, you've summarized it all!

    One thing that personally worries me is that any investment into web technology is a real hassle that gets outdated quickly. With rapidly evolving web languages, (Lingo vs JavaScript, AS1 vs AS2 vs AS3 vs F10) each "revolution" (such as direct access to framebuffer in Flash 8 through BitmapData or robust VM performance in F9) opens doors to revolving things and developers have to play catch-up to be on the cutting edge by rewriting it all on the client side.

    Still, all these "catch-ups" are just catching up with Java which ate it's own tail with bogus self-updater that annoyed people for years and inability to shrink it's installer or branch into "browser edition".

    As soon as MS will hit a magic button called "Include Silverlight in Windows Update" similar to the button that Apple hit ("Include Safari in iTunes update"), it'll overcome Java penetration rates on Windows and a single killer app, e.g. Hotmail client will make it a recognizable viral thing ("Did you install that new Silverlight thingie from MS?"). Still, there are ways for MS to f*ck it all up with providing no backwards compatibility for just a few year old browsers like IE6. And another huge concern - will it get popular on Macs? We all know that Mac is a "paying audience by default" with a different "paying culture".
     
  19. Bad Sector

    Original Member

    Joined:
    May 28, 2005
    Messages:
    2,742
    Likes Received:
    5
    Indeed Java has the greatest potential of all, from a technological standpoint (really good optimizing VM producing faster code than any of the other mentioned technologies, full OpenGL 2.1 support giving you freedom to choose from shader model 0 to 4, a lot of existing libraries for 3D gfx and other stuff, etc). Yet its the worst from a user friendliness view, needing big installers (although to be honest these days the installer isn't that big anymore - compared to what the available connections are), pausing the browser while the VM loads, etc. And of course not coming installed by default with many Windows PCs.

    Although is not an excuse, they *seem* to try now to fix these ("browser edition" of the VM, no confirmation dialogs for stuff signed by Sun, precache of the VM at OS startup time, etc), but its like trying to catch up a ship two minutes before it leaves.
     
  20. dinochine

    dinochine New Member

    Joined:
    Jul 20, 2007
    Messages:
    8
    Likes Received:
    0
    If you're keen on Flash you could try the Alternativa3D platform at http://alternativaplatform.com/en/. The demos look quite good and they already have a version using the Flash Player 10 beta.

    Another option may be http://www.kalydo.com/. They are looking for beta testers at the moment.
     

Share This Page

  • About Indie Gamer

    When the original Dexterity Forums closed in 2004, Indie Gamer was born and a diverse community has grown out of a passion for creating great games. Here you will find over 10 years of in-depth discussion on game design, the business of game development, and marketing/sales. Indie Gamer also provides a friendly place to meet up with other Developers, Artists, Composers and Writers.
  • Buy us a beer!

    Indie Gamer is delicately held together by a single poor bastard who thankfully gets help from various community volunteers. If you frequent this site or have found value in something you've learned here, help keep the site running by donating a few dollars (for beer of course)!

    Sure, I'll Buy You a Beer