4/11/2016 © 2016 e.solutions gmbhon-demand.gputechconf.com/gtc/2016/presentation/s637… ·...
TRANSCRIPT
4/11/2016 © 2016 e.solutions GmbH
2
Cluster Instrument …just two circles and two lines?
4/11/2016 © 2016 e.solutions GmbH
A graphical Cluster Instrument’s Benchmark
Challenges:
• Start-Up Time
• Reactivity
3
Your analogue cluster instrument
Your every day digital devices
Challenges:
• Materials, Effects and Animations
• Configurability
4/11/2016 © 2016 e.solutions GmbH
System Overview
4 4/11/2016 © 2016 e.solutions GmbH
infotainment main-unit and cluster instrument share one single display in driver-centric cars
Audi TT Audi R8
Audi Q7 Audi A4
• Project start in 2011 • First SOP in the Audi TT in 2014 • Currently available for R8, A4/A5, Q7, Q2 and all sport, racing and hybrid variants • Two general configurations available:
two displays with freedom to move functionality between
the displays
System Architecture
5
FPD-Link3 to CSI-2
Overlay X
CAN
MOST
Overlay Y Cluster Rendered Content
LVDS
Main-Unit Functionality - multimedia - navigation - telephony - connectivity - car - …
Cluster Content
4/11/2016 © 2016 e.solutions GmbH
Infotainment Main-Unit Cluster Instrument
Cluster Instrument‘s capturing connected to Infotainment Main-Unit‘s LVDS output
main-unit display in Q7, A4
Cluster based on nVidia Tegra3 (dual core CPU, 8 fragment units, 4 vertex units);
12.3’’ display at 1440x540, 512MB DDR3, 64MB NOR, 4GB NAND)
Infotainment main-unit (Tegra3 quad core CPU) connected to cluster instrument via
LVDS line
Virtual Cockpit Start-Up
6 4/11/2016 © 2016 e.solutions GmbH
Early Mode Functions critical for driving only
Stage 1: load minimal system in compressed form => decompress, using all cores
Stage 2: start executing OS, initial
set of drivers; in parallel continue
loading compressed resources / decompress
Stage 3: continue loading – non system
critical parts, using DMA, while initializing
all processes
100% CPU load in stages 2 and 3
Stage 4: cluster is already in full
operation => load non-essential modules
Full Function Mode
Virtual Cockpit Start-Up
Virtual Cockpit Reactivity
Benchmark result: fragment limitation
=> do only redraw those parts that have changed
7 4/11/2016 © 2016 e.solutions GmbH
Virtual Cockpit Reactivity
• Standard rendering approach
• Render only elements that have changed basic idea: use early fragment test to prevent unnecessary executions of fragment shader i.e. use stencil test to discard fragments before fragment shader execution/blending
8
Each frame:
Update all objects in scene graph
Clear back buffer
Render all objects to back buffer
Swap back and front buffer
Clear back buffer
Each frame:
Update all objects
Render mask of objects that have changed to stencil buffer
Render only fragments with active stencil
Swap back and front buffer
4/11/2016 © 2016 e.solutions GmbH
Virtual Cockpit Reactivity: Needle Dynamics
• Problem statement: given a display with 60 Hz
Refresh limited to every 1/60 second
revmeter changes with a maximum of 7 degrees per 1/60 second
Needle will jump between frames (stroboscope effect)
• Graphical solution: motion blur i.e. needle is “distributed” over area it moves between frames
• Textbook version: needle intensity is distributed linearly over range covered within 1/60 second effect: needle gets “wide and transparent”
• Target version: needle is drawn direction-dependent at end of range + intensity is distributed non-linearly
9 4/11/2016 © 2016 e.solutions GmbH
Virtual Cockpit Layout
• New challenge: dynamic element layout and positioning • Tend to change late in the project requires a modeling solution: attribute constraints
10 4/11/2016 © 2016 e.solutions GmbH
Classic Skin
Sport Skin
Virtual Cockpit Layout: Attribute Constraints
• Constraints allow objects to automatically update their attributes in response to changing attributes in other objects
• It can be a simple dependency or a complex expression
• A constraint can connect any node to any other node in the scene tree • NodeA.Translation.X -> NodeA.Color.R • NodeA.Translation.X -> NodeB.Translation.X
• A constraint can handle multiple source attributes and one target attribute
with one or multiple components
• Attributes are being referenced by path (aliases can be defined) and can be set by code or by modelling tool
11 4/11/2016 © 2016 e.solutions GmbH
12
Virtual Cockpit layout: Constraints-Tree
4/11/2016 © 2016 e.solutions GmbH
Virtual Cockpit Material
• Material tends to change late in the project requires a modeling solution: attribute constraints + shader programs
13 4/11/2016 © 2016 e.solutions GmbH
Virtual Cockpit View Configuration
14 4/11/2016 © 2016 e.solutions GmbH
Cluster View „Kleine Bühne“
Infotainment View „Große Bühne“
Virtual Cockpit Languages and Units
15 4/11/2016 © 2016 e.solutions GmbH
North America Europe
Arabic (right to left orientation)
Chinese
Russian
on
e sy
stem
Virtual Cockpit Configurable Content
16 4/11/2016 © 2016 e.solutions GmbH
Thank you very much!