1 / 18

Stöd för haptisk hårdvara i en spelmotor

Stöd för haptisk hårdvara i en spelmotor. Henrik Aamisepp Daniel Nilsson. Problem. Är det möjligt att integrera haptik i en spelmotor?. Tillvägagångssätt. Utvärdera haptiska programmeringsgränssnitt Utveckla en lösning baserad på utvärderingen Dra slutsatser från utvecklingsprocessen.

debbie
Télécharger la présentation

Stöd för haptisk hårdvara i en spelmotor

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Stöd för haptisk hårdvara i en spelmotor Henrik Aamisepp Daniel Nilsson

  2. Problem Är det möjligt att integrera haptik i en spelmotor?

  3. Tillvägagångssätt • Utvärdera haptiska programmeringsgränssnitt • Utveckla en lösning baserad på utvärderingen • Dra slutsatser från utvecklingsprocessen

  4. Vad är en spelmotor? • Plattform för att enkelt skapa 3D applikationer och spel • Tillhandahåller funktioner som vanligtvis behövs i spel • Tangentbord, mus, joystick • OpenGL, DirectX • Nätverk

  5. Crystal Space • Öppen källkod • Ständigt under utveckling • Flexibelt pluginsystem • Kollisionsdetektion • Fysikmotor

  6. Vad är haptik? • Hur man använder känselsinnet för att utforska sin omgivning • Inom datorvärlden handlar det om att kunna känna och ta på datorgenererade objekt via ett haptiskt gränssnitt • Force feedback • Haptisk hårdvara

  7. PHANTOM • Rörlig i 6 frihetsgrader • Force feedback i 3 frihetsgrader • Pennfattning med knapp • Interagerar i en punkt • Flera olika modeller

  8. F = kx x Exempel på kraftberäkning • Kraften är proportionell mot penetreringsdjupet • Kraften är i normalens riktning

  9. Haptiska programmeringsgränssnitt • GHOST • e-Touch • Reachin

  10. GHOST • Fördelar • Grafik och haptik uppdelat • Stöd för dynamik • Stöd för friktion • Nackdelar • Dyr licens • Ej öppen källkod • Problem med rörliga objekt

  11. e-Touch • Fördelar • Öppen källkod • Gratis • Snabb algoritm för kraftberäkning • Nackdelar • Dålig dokumentation • Grafik och haptik ihopbyggt till stor del • Inget stöd för friktion och ytstrukturer • Inget stöd för dynamik • Kräver att GHOST finns installerat

  12. Lösningsidé • Plugin till Crystal Space • Haptisk representation av 3D-omgivningen i Crystal Space • Kunna förflytta sig runt i 3D-omgivningen • Stöd för rörliga objekt • Olika egenskaper för objekt

  13. Problem under utvecklingen • Skapa haptiska objekt • Olika uppdateringshastigheter för grafik och haptik • Hantera objekten effektivt • Rörliga objekt • Friktion • Trycka igenom objekt

  14. Demo 1 • Navigera runt i en 3D-värld med tangentbordet • Känna på omgivningen med the PHANTOM • Grafisk representation av pekaren • Olika materialegenskaper • Möjligt att ladda kartor

  15. Demo 2 - Labyrintspel • Interagera med rörliga objekt • Flytta på objekt med the PHANTOM • Använda det dynamiska systemet i Crystal Space

  16. Resultat • Plugin som gör det möjligt att känna på en virtuell 3D-omgivning • Man kan gå omkring i omgivningen som i vanliga 3D-spel • Rörliga objekt uppdateras automatiskt i haptiken • Fungerar bra ihop med det dynamiska systemet i Crystal Space

  17. Resultat • Stödjer friktion och styvhet men det kvarstår några problem med detta • Enkelt att skapa egna typer av objekt • Lyckades ej få bort licenskostnader helt

  18. Slutsatser • Fullt möjligt att integrera haptik i en spelmotor • Goda möjligheter att skapa snygg grafik • Spelmotorn ger mycket extra funktionalitet • Bra med högre uppdateringsfrekvens på grafiken • Olikheter mellan olika programmeringsgränssnitt

More Related