You are viewing content from a past/completed QCon

Presentation: Rendering Large Models in the Browser in Real Time

Track: Developing/Optimizing Clients for Developers

Location: Majestic Complex, 6th fl.

Duration: 5:25pm - 6:15pm

Day of week: Monday

Share this on:

This presentation is now available to view on InfoQ.com

Watch video with transcript

Abstract

Viewing extremely large 2D and 3D models in the browser in real time is a difficult problem because of limited client-side computational resources, limited bandwidth, and the challenges of using JavaScript for high-performance computing. By introducing many heavily optimized techniques and strategies, Autodesk Forge Viewer is able to address these difficulties and render millions of meshes with gigabytes of memory at interactive rates.  

In this session, we will explore in detail some of the most interesting of these techniques, including progressive rendering to reduce time to first pixel, geometry consolidation to reduce draw overhead, the use of flat arrays instead of objects to reduce memory-allocation and copying overhead, data alignment for fast memory access, the use of a cheaper non-photorealistic graphics style for certain effects, and CPU profiling to identify further optimization opportunities.  

Real-time rendering of large models is a complex problem with many interesting facets. We have been developing Forge Viewer for five years and believe that we have found many interesting solutions from which the community can benefit.

Speaker: Shwetha Nagaraja

Software Engineer @Autodesk

Shwetha Nagaraja builds robust and intuitive 3D visualization products and services. Her belief in the importance of visualization stems from her childhood, during which she found she learned more effectively from visual communication than traditional books. After attaining her computer-science bachelor's degree in Bangalore and master's degree in Boston, she moved to her current home, San Francisco, to join Autodesk as a software engineer. At Autodesk, she specializes in building highly scalable web-based software that lets customers visualize and collaboratively edit architecture, engineering, construction, and manufacturing data without the overhead of installing complex specialized software. She is known for her collaborative working style, which she feels contributes to increased efficiency and avoids redundant efforts, while encouraging social interaction and cross-pollination. She strongly believes in the importance and benefits of diversity and inclusivity in the tech industry, and for the last two years has served on the leadership team of Autodesk Women in Leadership, Autodesk's oldest and largest employee resource group, which empowers employees to achieve their full leadership potential. In her free time she enjoys dance, interior design, fashion, and keeping the pulse of popular trends on the web and throughout the world.

Find Shwetha Nagaraja at

Speaker: Federico Rocha

Senior Software Engineer @Autodesk

Federico Rocha - Federico Rocha is a Senior Software Engineer at Autodesk, Inc. he moved to United States from Uruguay to join Autodesk's Forge Viewer team. He is passionate about computer graphics and virtual reality.  In the past, he worked as a university professor at ORT University, Uruguay teaching game development courses while publishing many PC, Facebook and Mobile games. In his free time, he enjoys portrait and street photography, traveling and playing guitar.

Find Federico Rocha at

Tracks

  • Devex & Teams

    Explore how to reduce developer friction between teams and stakeholders.

  • Blameless Culture

    Absorb the lessons learned from failures and outages in a human-centric process.

  • Modern CS in the Real World

    Learn how companies are applying recent CS research to tackle concurrency, distributed data, and coordination.

  • Architectures You’ve Always Wondered About

    Next-gen architectures from the most admired companies in software.

  • Bare Knuckle Performance

    Learn from practitioners on the challenges and benefits of architecting for performance and much more.

  • Java - The Interesting Bits

    Learn the new features in the recent and near-future releases of Java and the JVM and what they offer.

  • Ethical Considerations in Consciously Designed Software

    Design considerations for various contexts, locations, security and privacy requirements.

  • Operating Microservices

    Learn from practitioners operating and evolving systems in performance demanding environments.

  • Security

    Learn how to make security an inherent part of the software development process.

  • Native Compilation Is Back (A Look at Non-Vm Compilation Targets)

    Issues with native compilation for in browser-based and server-side environments

  • Trouble-Shooting in Production

    Learn debugging strategies for complex and high stakes environments where standard debuggers and profilers fail.

  • Predictive Architectures and ML

    Explore the systems and designs covering the full loop from machine learning to inferencing.

  • Data Engineering on the Bleeding Edge

    Explore the latest trends in data engineering that help improve the life of the developer

  • Production Readiness

    Observability, emergency response, capacity planning, release processes, and SLOs for availability and latency.

  • Humane Leadership

    A look at leadership with an emphasis on empathy, taking chances and building other leaders within organizations and teams