Procedural Haptic Texture Jeremy Shopf Marc Olano University of Maryland, Baltimore County.

Slides:



Advertisements
Similar presentations
Computer graphics & visualization Real-Time Pencil Rendering Marc Treib.
Advertisements

Virtual Reality Design Virtual reality systems are designed to produce in the participant the cognitive effects of feeling immersed in the environment.
1 Coven a Framework for High Performance Problem Solving Environments Nathan A. DeBardeleben Walter B. Ligon III Sourabh Pandit Dan C. Stanzione Jr. Parallel.
VisHap: Guangqi Ye, Jason J. Corso, Gregory D. Hager, Allison M. Okamura Presented By: Adelle C. Knight Augmented Reality Combining Haptics and Vision.
SURGICAL SIMULATIONS: IT’S ALL IN A GAME ! Gaming techniques for medical applications. V. Kotamraju, S. Payandeh, J. Dill Experimental Robotics Laboratory,
RSS 2011 Workshop on RGB-D Cameras
A Framework for Haptic Broadcasting Presented by Cong Ly CMPT-820 March 16, 2009 Jongeun Cha, Ian Oakley, Yo-Sung Ho, Yeongmi Kim, and Jeha Ryu.
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL Haptic Rendering Max Smolens COMP 259 March 26, 2003.
Graphics. Applications  Digital media  Entertainment  Art  Visualization  Science  Modeling  Games  Software  Virtual Reality.
Interactive Mesh Sculpting Using a Haptic Device.
Procedural Shape Synthesis on Subdivision Surfaces
Evaluating Non-Visual Feedback Cues for Touch Input Device Selina Sharmin Project for the course New Interaction Techniques Spring.
Shading Languages By Markus Kummerer. Markus Kummerer 2 / 19 State of the Art Shading.
Virtual Reality Virtual Reality involves the user entering a 3D world generated by the computer. To be immersed in a 3D VR world requires special hardware.
Research & Innovation 1 An Industry Perspective on VVG Research Oliver Grau BBC Research & Innovation VVG SUMMER SCHOOL '07.
Physics and Sound Zhimin & Dave. Motivation Physical simulation Games Movies Special effects.
Under the Hood: 3D Pipeline. Motherboard & Chipset PCI Express x16.
AdvisorStudent Dr. Jia Li Shaojun Liu Dept. of Computer Science and Engineering, Oakland University 3D Shape Classification Using Conformal Mapping In.
Interactive Terrain Synthesis
Procedural terrain on the GPU Chalmers University of Technology Advanced computer graphics – DAT205 David Sundelius Adam Scott.
Introduction to Haptic Rendering JPL - Virtual Environments Laboratory California Institute of Technology ( Cagatay Basdogan,
KINESTHETIC DISPLAYS FOR REMOTE & VIRTUAL ENVIRONMENTS -Blake Hannaford and Steven Venema Presented By Subhashini Ganapathy Sasanka V. Prabhala.
Havok. ©Copyright 2006 Havok.com (or its licensors). All Rights Reserved. HavokFX Next Gen Physics on ATI GPUs Andrew Bowell – Senior Engineer Peter Kipfer.
Shading. What is Shading? Assigning of a color to a pixel in the final image. So, everything in shading is about how to select and combine colors to get.
Computer Graphics. Requirements Prerequisites Prerequisites CS 255 : Data Structures CS 255 : Data Structures Math 253 Math 253 Experience with C Programming.
1 Haptic Systems Mohsen Mahvash Lecture 4 12/1/06.
1 Haptic Systems Mohsen Mahvash Lecture 1 9/1/06.
Biological Tissue Cutting Mechanics and Dynamics.
Alexei SOURIN Nanyang Technological University, Singapore Visual and Haptic Rendering in Co-Space NRF2008IDM-IDM
Efficient Rendering of Local Subsurface Scattering Tom Mertens 1, Jan Kautz 2, Philippe Bekaert 1, Frank Van Reeth 1, Hans-Peter Seidel
GENESIS OF VIRTUAL REALITY  The term ‘Virtual reality’ (VR) was initially coined by Jaron Lanier, founder of VPL Research (1989)..
Stream Processing Main References: “Comparing Reyes and OpenGL on a Stream Architecture”, 2002 “Polygon Rendering on a Stream Architecture”, 2000 Department.
1 The Rendering Pipeline. CS788 Topic of HCI 2 Outline  Introduction  The Graphics Rendering Pipeline  Three functional stages  Example  Bottleneck.
Hapgets, Towards Haptically- enhanced Widgets based on a User Interface Description Language Nikolaos Kaklanis, Juan González Calleros, Jean Vanderdonckt,
Experimental evaluation of two haptic techniques for 3D interaction: constriction polyhedron / magnetic attraction Antonio CAPOBIANCO Caroline ESSERT-VILLARD.
1 Haptic Systems Mohsen Mahvash Lecture 3 11/1/06.
Computer Graphics 2 Lecture 7: Texture Mapping Benjamin Mora 1 University of Wales Swansea Pr. Min Chen Dr. Benjamin Mora.
1 Perception and VR MONT 104S, Fall 2008 Lecture 21 More Graphics for VR.
BUMP-MAPPING SET09115 Intro to Graphics Programming.
Course Introduction to virtual engineering Óbuda University John von Neumann Faculty of Informatics Institute of Applied Mathematics Lecture and laboratory.
Design and Implementation of Geometric and Texture-Based Flow Visualization Techniques Robert S. Laramee Markus Hadwiger Helwig Hauser.
1 1 Spatialized Haptic Rendering: Providing Impact Position Information in 6DOF Haptic Simulations Using Vibrations 9/12/2008 Jean Sreng, Anatole Lécuyer,
Haptic & Direct User Input with DirectInput ® 8 API Graphics Lab. Korea Univ.
Material obtained from Summer workshop in Guildford County, July, 2014 Unit 6.
Cel shading By jared brock.
UV Mapping After a 3D object has been modeled it must be prepared for texturing. 3D surfaces can be “unwrapped” into a 2D representation with. This process.
Havok FX Physics on NVIDIA GPUs. Copyright © NVIDIA Corporation 2004 What is Effects Physics? Physics-based effects on a massive scale 10,000s of objects.
MSIM 842 VISUALIZATION II INSTRUCTOR: JESSICA R. CROUCH 1 A Particle System for Interactive Visualization of 3D Flows Jens Krüger Peter Kipfer.
COMPUTER GRAPHICS CS 482 – FALL 2015 SEPTEMBER 29, 2015 RENDERING RASTERIZATION RAY CASTING PROGRAMMABLE SHADERS.
PhD Defense Emanuele Ruffaldi
Outline ● Introduction – What is the problem ● Generate stochastic textures ● Improve realism ● High level approach - Don't just jump into details – Why.
1. 2 Introduction to Haptics Design of kinesthetic/ force feedback haptic devices Allison M. Okamura Stanford University.
HAPTIC TECHNOLOGY ASHWINI P 1PE06CS017.
3D Animation 1. Introduction Dr. Ashraf Y. Maghari Information Technology Islamic University of Gaza Ref. Book: The Art of Maya.
1 Interactive Volume Isosurface Rendering Using BT Volumes John Kloetzli Marc Olano Penny Rheingans UMBC.
HAPTIC SYSTEMS.
Introduction to Computer Haptics Chris Harding
Advanced Computer Graphics
- Introduction - Graphics Pipeline
Photorealistic Rendering vs. Interactive 3D Graphics
Visualization Shading
Basic Rendering Techniques
Dynamic Texture Mapping of 3D models for Stiffness map Visualization
Human and Computer Óbuda University
Introduction to Graphics Modeling
Joshua Barczak* CMSC 435 UMBC
Haptics – Don’t Lose Touch with Virtual Reality
Tomás Murillo-Morales and Klaus Miesenberger
AN INTRODUCTION TO COMPUTER GRAPHICS Subject: Computer Graphics Lecture No: 01 Batch: 16BS(Information Technology)
Professional Environment
Presentation transcript:

Procedural Haptic Texture Jeremy Shopf Marc Olano University of Maryland, Baltimore County

Introduction  We have designed a system for procedurally defining haptic surface interaction  Background Haptic Rendering Haptic Texture Procedural Shading

Haptics  Creating a sense of touch through the use of force-feedback  Increasing user experience by adding another mode of interaction  Essential to creating an immersive virtual experience SensAble PHANToM

Application Domains  Surgical simulation  Molecular modeling  Teleoperation Telerobotics Telemedicine  Virtual prototyping Image courtesy of Dr. Roger Webster

Haptic Force Models  Generate response forces based on the position of the haptic cursor in the scene  Restorative force based on Hooke’s Law F = kΔx → → k = stiffness of object |Δx| = depth of penetration →

Haptic Texturing  Adding tangential forces creates the sensation of surface friction and texture  Increases realism  Convey information Molecular biology example Changing information requires flexibility

Procedural Shading  Defining the visual appearance of an object with a short procedure or “shader”  Pixar’s RENDERMAN ©Pixar

Stochastic Methods  Use noise to create pseudo- randomness ATI Procedural Wood Demo

Motivation  Describe haptic surface characteristics with short procedures/shaders  Provide familiar shading environment (C++, RENDERMAN)  Compatible with existing force models

Haptic Shading Framework  Features User-defined surface characteristics User-defined shader parameters that can be changed during execution  Adjust size of surface features Apply to arbitrary geometry Change shaders dynamically

Standard Haptic Rendering

Haptic Shading Framework

System Shader Parameters * * * * * * * *

Anatomy of a Haptic Shader HapticTextureOut GetHapticTexture(HapticTextureIn input, DLLparams params) { float ringscale = params.GetValue("ringscale", 5.0); float lightwood_staticF = params.GetValue("lightwood_staticF", 0.02); float lightwood_dynF = params.GetValue("lightwood_dynF", 0.02); float darkwood_staticF = params.GetValue("darkwood_staticF", 0.5); float darkwood_dynF = params.GetValue("darkwood_dynF", 0.5); HapticTextureOut output; vector3 PP; float y, z, r; PP = before.p + noise3(before.p); y = ycomp(PP); z = zcomp(PP); r = sqrt(y*y + z*z); /* map radial distance r into ring position [0, 1] */ r *= ringscale; r += abs(noise1(r,r,r)); r -= floor (r); /* use ring position r to select wood friction */ after.staticF = mix(lightwood_staticF, darkwood_staticF, r); after.dynamicF = mix(lightwood_dynF, darkwood_dynF, r); after.f = before.f; return output; } Fetch user-defined parameters Shader Body Return Results Fetch User-defined Parameters float ringscale = params.GetValue("ringscale", 5.0); float lightwood_staticF = params.GetValue("lightwood_staticF", 0.02); float lightwood_dynF = params.GetValue("lightwood_dynF", 0.02); float darkwood_staticF = params.GetValue("darkwood_staticF", 0.5); float darkwood_dynF = params.GetValue("darkwood_dynF", 0.5); HapticTextureOut output; vector3 PP; float y, z, r; PP = before.p + noise3(before.p); y = ycomp(PP); z = zcomp(PP); r = sqrt(y*y + z*z); /* map radial distance r into ring position [0, 1] */ r *= ringscale; r += abs(noise1(r,r,r)); r -= floor (r); /* use ring position r to select wood friction */ after.staticF = mix(lightwood_staticF, darkwood_staticF, r); after.dynamicF = mix(lightwood_dynF, darkwood_dynF, r); after.f = before.f; Shader Body

Comparison to Visual Shading Interactive Reqs Insufficient Refresh Shader Executions Haptic Rendering 1000 HzInstability1 Graphics Rendering HzFlickering1 million+

Dynamic Surface Characteristics  Model virtual geometry  Change surface properties based on proxy movement  Change surface properties using stochastic methods  Change surface properties based on user-interaction with the object

Dynamic Surface Characteristics  Model virtual geometry  Add small-scale surface features Increase/decrease collision force based on surface displacement

Dynamic Surface Characteristics  Surface properties depend on direction of movement  Anisotropic shader Friction based on proxy direction

Dynamic Surface Characteristics  Using stochastic methods  Wood shader Alter surface friction based on wood grain

Dynamic Surface Characteristics  Modify texture based on interaction Store surface properties in a texture  Plaque shader

Future Directions  Apply to surface-to-surface interaction  Programmable hardware on the device for force modeling would dramatically increase performance  Demonstrate on more haptic devices

Conclusion  We have presented a novel technique that uses user-defined shaders to redefine the haptic experience  Dynamic haptic texture (example: a surface that changes texture as a user interacts with it)  Change of surface shape and contours without additional object geometry  Dynamically loaded haptic shaders can be applied to arbitrary objects in the virtual scene

Acknowledgments  Funded in part by the UMBC SRIS/RAS grant program  Thanks to Dr. Alan Liu, Dr. Roger Webster, Alark Joshi, Kishalay Kundu and the UIST paper reviewers for their assistance

Questions? Jeremy Shopf