• Share
  • Email
  • Embed
  • Like
  • Save
  • Private Content
3D on the Web in 2011
 

3D on the Web in 2011

on

  • 1,001 views

 

Statistics

Views

Total Views
1,001
Views on SlideShare
1,000
Embed Views
1

Actions

Likes
1
Downloads
9
Comments
0

1 Embed 1

http://a0.twimg.com 1

Accessibility

Upload Details

Uploaded via as Microsoft PowerPoint

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

    3D on the Web in 2011 3D on the Web in 2011 Presentation Transcript

    • 3D on the Web in 2011
      Chad Austin
      Technical Director, IMVU
    • Who is Chad?
      Iowa State, 2005
      M.S. Human Computer Interaction
      Renaissance, a functional shading language
      IMVU, 2005-Present
    • What is IMVU?
      Mass market 3D
      World’s largest virtual catalog: 6 million items
      7000 new items every day
      50 million registered users
      50,000 of which created content in last month
      Downloadable client...
    • IMVU likes 3D, so what?
      Tasteful, responsive UI
      Transitions
      60 Hz animation
      GPGPU
      Harness local processing power from web pages
    • Today’s Agenda
      GPUs
      WebGL
      Flash 11
      Unity3D
      Silverlight 5
      Native Client
      Trends and Unsolved Problems
    • Caveat
      New and changing
      Can you teach me?
    • GPU
    • Graphics Processors
      Vector math accelerators external to CPU
      Often with separate memory
      ~Every computer has a GPU in some form
      Limited API access
      Direct3D & OpenGL
      Starting to see OpenCL, CUDA, DirectCompute…
      Wildly different internal architectures
    • History of Consumer 3D
      <1999: OpenGL, Direct3D, niche APIs
      2000: Direct3D 7 – “fixed function”, multitexturing
      2001:Direct3D 8 – limited programmability
      2003: Direct3D 9 – general programmability
      2011: finally on the web!
    • Modern GPUs
      Buffers of data…
      textures, vertex arrays
      … and code that runs on them
      Vertex shaders, pixel shaders
    • Modern GPUs (con’t)
    • Shaders
      Small programs:
      Input:
      Vertex attributes
      Textures
      Output:
      Pixels on screen
      Syntax varies across platforms
      But same basic functionality
    • Today’s Market
      Unity hardware survey
      Steam hardware survey
      IMVU experiences
    • Today’s Market (con’t)
      shader model 2.0!
      8 textures
      8 vec4f vertex attributes (wish it were 16…)
      decent number of shader instructions
    • What’s missing?
      Vertex texture fetch
      Geometry shaders
      Gamma?
    • Survey
    • WebGL
    • WebGL
      JavaScript access to OpenGL ES 2.0
      Fully programmable
      Composites into HTML on page
    • WebGL Demos
      http://www.nihilogic.dk/labs/worlds_of_webgl/
      http://o3d.googlecode.com/svn/trunk/samples_webgl/o3d-webgl-samples/pool.html
      http://www.ro.me/
    • WebGL, con’t
      Uses ANGLE on Windows
      Hardware and driver blacklist
    • WebGL Unsolved Problems
      No Safari (yet)
      No iOS(yet)
      Device ubiquity?
      Example: GMA 950
      Content storage
      Fullscreen
      Input handling
    • Flash 11
    • Flash 11
      Stage3D
      Exposes GPU capabilities to ActionScript
      Custom shader language: AGAL
    • AGAL example
      http://pixelante.com/index.php?b=ambient_and_color_lighting_molehill_agal_flash_tutorial
    • Flash 11 Demos
      http://alternativaplatform.com/en/demos/maxracer/
      http://molehill.zombietycoon.com/
    • Flash 11, con’t
      Expect widespread deployment
      Automatic software fallback
      Driver blacklist
      GPU not capable of shaders
      Windowless?
    • Flash 11 Downsides
      ActionScript
      Low shader limits
      8 vertex attributes
      8 temporaries
      no vertex texture fetch
      Mobile...?
    • Unity3D
    • Unity3D
      Web plugin, iOS, Wii, PlayStation 3, Xbox 360
      Custom graphics engine
      Built-in visual effects
      Scene graph
      Art pipeline
      Built-in asset store
      Runs on older hardware if necessary
    • Unity3D demo
      http://unity3d.com/gallery/live-demos/tropical-paradise
    • Unity3D downsides
      No windowless mode
      Commercial software
      No Linux
      Requires plug-in (10% installed, 70% install rate)
      Does not fully expose hardware
    • Silverlight
    • Silverlight 5
      Integration with XNA 4
      Limited to “Reach” profile, shader model 2.0
      Demo: http://www.youtube.com/watch?v=RDIeijJkV14
    • Native Client
    • Native Client
      Google’s in-browser, secure native code engine
      Available in Chrome today
      Write programs in C++, run them on the web
      Exposes OpenGL ES 2.0 if supported
      Remember ANGLE?
    • Native Client Downsides
      No cross-browser plans
      Teething pains
    • Trends & Open Questions
    • Betting time!
      Short-term: Flash 11
      Long-term: WebGL
    • Security
      3D drivers suck
      Rarely updated
      Crashes
      Security problems
      3D on the web exposes all of the above
      Driver blacklists
      Important: this is a solvable problem
    • Trends
      3D is here to stay
      I expect a killer app Very Soon Now
    • Thank you! Questions?
      chad@imvu.com
      @chadaustin
      http://engineering.imvu.com
      We’re hiring!
      http://www.imvu.com/jobs