Interactive projection mapping done with Unity 3d, Leap Motion and Arduino / Uniduino / Adafruit

Поділитися
Вставка
  • Опубліковано 14 січ 2025

КОМЕНТАРІ • 85

  • @TheRealPostpunker
    @TheRealPostpunker 7 років тому +1

    This is truly inspiring. Working on a different but quite similar project right now. Your approach is really good. Thank you for sharing this information with the world.

    • @pixelasm
      @pixelasm  7 років тому

      Thanks for the feedback :-) Hope you can share what you are working on too.
      Bis dahin viel Erfolg bei deinem Projekt (beruflich oder auch semi privat?)

  • @InsertVFX
    @InsertVFX 8 років тому +50

    why do i feel like im watching a asmr video

    • @pixelasm
      @pixelasm  8 років тому +1

      LOL, seriously? That was not intended. I am using a simple blue yeti to record. Are you wearing headphones?

    • @InsertVFX
      @InsertVFX 8 років тому +2

      lol it just kind of sounds like it

    • @jarkkoaitti287
      @jarkkoaitti287 8 років тому +2

      maybe too close to microphone and too much bass boost. sounds weird and artificial

    • @Change-Maker
      @Change-Maker 7 років тому

      pixelasm same here. thought asmr from first 2 seconds....also why so serious man. smile a little :) also change your tone and pitch a little up and down. your video and I appreciate your effort. so pls take this as constructive criticism

  • @mateuszkowalczyk3254
    @mateuszkowalczyk3254 8 років тому +1

    This is awesome! You've just gained a subscriber. Your projects are very inspiring.

    • @pixelasm
      @pixelasm  8 років тому +1

      thanks for subbing :)

  • @SherifMousa3dcgSherif
    @SherifMousa3dcgSherif 8 років тому +9

    hi, you are the one man, your workflow is amazing ...

    • @pixelasm
      @pixelasm  8 років тому

      Thanks, looks like you are looking into video mapping as well. Nice Idea projecting onto a bride and a wedding cake, although I wonder how many couples got enough cash to contract a motion designer for 1-5 days.

  • @Nahual_11
    @Nahual_11 8 років тому +7

    You're my new role model.

    • @pixelasm
      @pixelasm  8 років тому

      @eliottheowa I am glad to inspire you and hope you will be able to use that inspiration to make your next steps closer to your goals :)

  • @SHrishikeshS
    @SHrishikeshS 7 років тому +7

    yo! some hypnotic voice you got. cool

    • @pixelasm
      @pixelasm  7 років тому

      LOL thanks I guess :D

  • @FeAlmeida76
    @FeAlmeida76 7 років тому +1

    Wow, thanks for share your project. Very nice!!! congrats!!

    • @pixelasm
      @pixelasm  7 років тому

      Thanks for the appreciation :)

  • @zachkrausnick5030
    @zachkrausnick5030 8 років тому +2

    Very nicely done!

  • @omarjuarezortiz5070
    @omarjuarezortiz5070 7 років тому +4

    Can you exmplain a bit more.. how to managed to sync the movement of the cube with the mapped projection and Unity ?

    • @muh2k4
      @muh2k4 6 років тому

      That was the only reason I was watching the video. Sadly he did not mention it

  • @wueijun
    @wueijun 8 років тому +2

    amazing! Will try to create something similar :)

  • @Z2nk41
    @Z2nk41 6 років тому

    I'm new to the whole visual scene recently as I started handling LED screen projection for events. I'm trying to learn more about projection mapping and live interaction to use as a personal art project in my hometown.
    I saw some examples in Singapore where they used an Xbox Kinect to detect motion and have the visual interact with them, I wonder how they did it.

    • @pixelasm
      @pixelasm  6 років тому +1

      There is an asset for kinect in the asset store which gives you access to the data recorded by it. You can then for example attach things to the joints if the detected person. Be aware that you need C# knowledge to use this.

    • @pixelasm
      @pixelasm  6 років тому

      By the way I have used said Unity Asset for this test: ua-cam.com/video/GYXTUf6UBUo/v-deo.html

  • @JoelDittrich
    @JoelDittrich 7 років тому +1

    Very nice work!

  • @YakinZigouram
    @YakinZigouram 8 років тому +2

    Amazing work! This is really great and inspirational!
    Is the portal script available for public? I would love to know how that effect was achieved :)

  • @ketakahashi
    @ketakahashi 7 років тому +1

    It's wonderful challenge! I want to know how did you project the unity 3d model images on to each surface of the white cube? If I do this, I would map the surfaces of the unity model onto the surfaces of the white cube. But the white cube can revolve...It can't do this without a dynamic projection mapping method. But you didn't use any 3d scanner devices...?

    • @pixelasm
      @pixelasm  7 років тому +1

      Honestly finding answers is the most interesting thing to me. This is also what I find interesting about my professional and private work and the reason why I do it in the first place. Therefore I would like to "answer" your question with a hint: What is the difference between a DC motor and a STEPPER motor? The answer to this will give you the answer to how I "tracked" the cubes position.

    • @ketakahashi
      @ketakahashi 7 років тому +1

      Thank you for your consideration. After seeing your video I did a simple experiment goo.gl/photos/dS4zcwqp3yu949j5A. Your hint using a STEPPER motor indicates me everything I want to know.

    • @pixelasm
      @pixelasm  7 років тому +1

      Great to hear, looks like you are almost there too :)
      Looking forward to your final result. Please keep me updated.

  • @ahmedalzadjali5578
    @ahmedalzadjali5578 8 років тому +1

    it is great work.

  • @suprraman7956
    @suprraman7956 7 років тому +2

    thank you very much! I was looking for exactly that: a projection of the inside of the cube. Do you happen to know how this type of projection is called in professional terms?

    • @pixelasm
      @pixelasm  7 років тому +1

      I have not heard about a professional term for this kind of projection maybe also because I have not seen anything like it before :P Although this effect is seen in CGI quiet often due to a "bug" called backface culling but I have never before seen it used in conjunction with an interactive projection mapping.
      Scientifically it is a tesseract or hyper cube as I mentioned but those terms you also can not find much about.

  • @emmanuelhenne
    @emmanuelhenne 8 років тому +1

    Awesome, Ralf !!

    • @pixelasm
      @pixelasm  8 років тому

      Thanks +Emmanuel Henné :)

  • @BenSyzek
    @BenSyzek 5 років тому

    AMAZING!

  • @poloteh6297
    @poloteh6297 7 років тому

    Wow nice work, may I know where you get the shader? Any link to the fie?

  • @MrHn9296
    @MrHn9296 8 років тому +1

    nice project man!! ,
    i am still a noob and i need to know how do you send data from unity or leap motion to the arduino , i am trying to control my 6DOF Stewart platform using leap motion , do you have any tips from your personal experience

    • @pixelasm
      @pixelasm  8 років тому +1

      Thanks! Easiest way is to buy the uniduino asset, it also provides examples on how to comunicate with the pins.
      TIP: You should also buy motorshields because turning the system on and off might have some backlash on the arduino board when used without a motorshield.
      6DOF Stewart platform is a sick piece of hardware. Would be nice to hear / see what you are doing with it. Are you planing something different than a racing simulator?

    • @MrHn9296
      @MrHn9296 8 років тому

      i have no idea whats is uniduino asset,
      is it a new chip like arduino ? or just extra libraries for arduino ?
      i just want to let the stewart platform copy the movements of my hand that is being read by the leap motion sensor , so i just want to extract the XYZ coordinates from the leap motion and send it as serial data to the arduino

    • @pixelasm
      @pixelasm  8 років тому +1

      Oh! I suppose you would like to use the leap mption without Unity, right?
      My data flow is leap motion -> unity -> arduino -> adafruit motorshield -> stepper motor and you would like to leave out unity, right? Thats a workflow I haven´t looked into because I wanted to use Unity for the visuals right from the start, sorry.

    • @MrHn9296
      @MrHn9296 8 років тому

      i am using mini servo motors i dont think i need the motor shields , i really dont know if i need the unity or not , but i read online there is a way to integrate the leap motion with arduino through unity ...

  • @garavakasika
    @garavakasika 6 років тому +1

    Hi! It looks great, u did an awesome job! I was wondering how did u project the unity scene onto the cube? Did u maybe use Spout?

    • @pixelasm
      @pixelasm  6 років тому

      Thanks :) I used the game window of #Unity3D and moved it to the beamer, which I have setup as secondary monitor. So no dedicated mapping software, just a straight forward setup with the tools I have at hand.
      Feel free to like and subscribe if you want further videos and backgroud infos ;-)

  • @pradeeprao2179
    @pradeeprao2179 7 років тому +1

    Hi, Amazing job Sir,
    I want know to Arduino model are use this project.

    • @pixelasm
      @pixelasm  7 років тому +1

      I used an arduino uno with an adafruit motorshield

  • @muhammadurrehman3405
    @muhammadurrehman3405 4 роки тому

    @pixelasm can you please share details with me how it was made source code,requirements etc i want to work and add something in it

  • @masayatodoroki339
    @masayatodoroki339 5 років тому

    Awesome work! how did you go about syncing up the rotation of the motor to the rotation of the gameobject in unity?? I've been able to connect a servo motor to unity but with the uduino asset there is a delay

    • @pixelasm
      @pixelasm  5 років тому

      The trick is to use a stepper motor, an easy to miss detail I mentioned in the video. Steppermotors different to simple servos only move a predefined ammount of degrees per step. Therefore I used the same stepping for the digital model and had a really good match, although I had to tweak a bit. Ideally you would have another system checking the position independantly, for which some servo motors provide possibilities, but when setting everything up and buying the parts I wanted to keep everything a bit simpler and went for the approach shown here.

    • @masayatodoroki339
      @masayatodoroki339 5 років тому

      @@pixelasm Ah thank you! Was it hard to find documentation about controlling stepper motor from unity?

    • @pixelasm
      @pixelasm  5 років тому

      @@masayatodoroki339 I think it was ok.

    • @marcando666
      @marcando666 2 місяці тому

      @@pixelasm Which stepper motor were you referring to here, and which stepper motor would be better for a project like this today?

  • @rishikaraghuvanshi2044
    @rishikaraghuvanshi2044 7 років тому

    Can you provide me with the c# script you used here?

  • @rakdos91
    @rakdos91 7 років тому

    Kind sir, where can we find the shader? Is it on the asset store?

  • @zbalai
    @zbalai 5 років тому +1

    Thank you, nice project! I suppose young girls love it :)

  • @deeveevideos
    @deeveevideos 6 років тому +2

    Now you playing 4d chess!!!!

  • @eleonora7490
    @eleonora7490 3 роки тому

    Hey pixelasm,
    für meine Thesis suche ich eine Möglichkeit UI-Elemente in Unity, per Projektor und LeapMotion auf meine Hand zu projizieren.
    Die LeapMotion liefert die Tiefeninformationen und die Bilder, der Projektor projiziert als Ausgabegerät die Grafiken auf die Positionen der Hand.
    Wissen Sie wie das funktionieren könnte?
    Danke vorab :)

    • @pixelasm
      @pixelasm  3 роки тому +1

      Wenn ich mich recht entsinne dann lädt LeapMotion ein virtuelles Hand Modell mit Bones in die Szene sobald eine Hand erkannt wird. An die Bones könnte man dann andere Objekte tracken und offsetten. Im schlimmsten fall könnte man in der update funktion permanent abfragen ob ein bestimmtes Null in der Szene existiert und dessen Koordination auf ein null mit den gefragten Inhalten übertragen.
      ACHTUNG: Das ist so nicht performant.
      Wenn ich mich recht entsinne liefert Leap Motion verschiedene Hand Modell prefabs mit die man auch editieren kann, ggf. könnte man die gewünschten Inhalte in das Prefab integrieren.
      Könnte aber sein das ich das mit der API der Kinect verwechsle ist schon einpaar Jahre her ...

    • @eleonora7490
      @eleonora7490 3 роки тому

      @@pixelasm Hallo pixelasm,
      danke für die schnelle Antwort.
      Meine Idee war mit OpenCV und der LeapMotion meine Handposition im 3d-Raum zu tracken und davon 2d-bilder zu machen. Die Bilder (die ein eigenes Koordinatensystem aus dem 3d-raum besitzen) transferiere ich in das Unity-Koordinatensystem und füge die UI-Elemente an die Koordinaten an, wo ich sie haben möchte. Anschließend spreche ich (leider weiß ich nicht wie das geht) den Projektor an und sage, projiziere dieses Bild.
      Haben Sie das so ähnlich gemacht oder wissen Sie noch wie Sie den Projektor ansprechen konnten aus Unity raus?

    • @pixelasm
      @pixelasm  3 роки тому +1

      @@eleonora7490 ich hatte den Projektor als zweiten Monitor an den Rechner angeschlossen und über Unity den Stepper Motor angesteuert der den echten Kubus dreht. Im gleichen Verhältnis habe ich dann auch den Kubus in der Unity Szene gedreht, so daß das projezierte Bild mit dem Kubus deckungsgleich bleibt.
      Der Aufwändigere Teil war also eher das Ausrichten der virtuellen Kamera in der Szene, so daß die Projektion mit dem Kubus passte. Das Ausrichten alleine hat mich glaube ich einen Tag gekostet. Ähnlich müsste es aber auch mit der Projektion auf eine Hand klappen.

    • @eleonora7490
      @eleonora7490 3 роки тому

      @@pixelasm danke für die schnelle Hilfe.
      Wissen Sie als Experte wo ich gute Instruktionen zum Mapping finden kann? Meine Recherchen zum Thema projection mapping oder spatial mapping führen mich nur zu Projekten die keinerlei Tutorials beinhalten. Leider bin ich auch kein Mathegenie um solch komplexe Algorithmen zu entwerfen. Ihr Projekt ist das greifbarste Exemplar was ich finden konnte :/

  • @ChopLabalagun
    @ChopLabalagun 7 років тому

    Which projector is that one? could you please share model

    • @pixelasm
      @pixelasm  7 років тому

      Chop Labalagun it is an Epson TW 620 which is able to project 720p at max.

    • @ChopLabalagun
      @ChopLabalagun 7 років тому

      Can you recommend a projector for this type of test on a really low price? Or what should I look on a projector for projection mapping. I am using a LEAD pretty bad. Look at my latest video.

    • @pixelasm
      @pixelasm  7 років тому +1

      Chop Labalagun unfortunately I can not point out a specific one, just get the one with the highest lumen. Keep in mind though that those might also be the loudest. Aside from that I would prefere one with an optical system for trapez and other skewing instead of doing it digitally but that is just a minor thing.

    • @ChopLabalagun
      @ChopLabalagun 7 років тому

      Thanks for inputs.

  • @OliverPietern
    @OliverPietern 7 років тому +1

    cool

    • @pixelasm
      @pixelasm  7 років тому

      danke :)

    • @OliverPietern
      @OliverPietern 7 років тому +1

      Hast Du für das Projectionmapping eine Kamerakalibrierung wie Mapamok (openCV) in Unity genutzt, oder das "von Hand" angepasst ? Habe letzte Woche noch an einer Steppersteuerung über Raspberry Pi und Unity gearbeitet :-) Mit Projectionmappings arbeite ich auch super oft, bin aber bisher nie auf die Idee gekommen Unity dafür zu nutzen. Bisher waren das immer D3, Coolux oder wen es echt schnell gehen muss, mit Aftereffects :-)

    • @pixelasm
      @pixelasm  7 років тому +1

      Ja habs per Hand gemacht :P
      Wollte mir zwar auch immer schon "echte" projectionmapping software anschauen hab mir dann aber gedacht: Warum schlägst du nicht drei Fliegen mit einer Klappe und lernst mehr über Projectionmapping, Unity und C# in einem.

  • @BhavikaShah1
    @BhavikaShah1 7 років тому

    what Unity are you using? I am having trouble using Uniduino with Unity 5. It connects and recognises the firmata protocol but does not display any IO ports nor does it recognise the correct COM ports.

    • @pixelasm
      @pixelasm  7 років тому +1

      If I do recall correctly I used 5.1 or 5.2 to build this. I only followed their tutorials to get everything connected and it worked seamless: www.uniduino.com/tutorials/

  • @Cryptocannnon
    @Cryptocannnon 6 років тому

    bro chill with that low whisper ur making my boy parts tingle hehehehhe

    • @pixelasm
      @pixelasm  6 років тому

      LOL wonder why I get so many comments on my voice as I have not used my deep morning voice :D Aside from that I will do a more freestyle video next time, reading text sounds to stiff :-/

  • @Cryptocannnon
    @Cryptocannnon 6 років тому

    lol jokes but can u leave a lil noe of the software and hardware list so i may purchase and add to this project

    • @pixelasm
      @pixelasm  6 років тому

      Sure, but I need to look for all the receipts, because I bought some of the hardware over the course of several months. This might take some time ...

  • @ichwanrachmaddani4289
    @ichwanrachmaddani4289 4 роки тому

    Kayak orwng indonesia anjir

  • @bobmeme2510
    @bobmeme2510 8 років тому

    set vid speed to 1.5 folks, this guys stuck in reverse!
    gobble gobble gobble blah blah arduino so slow dude!!!
    bob me