Upgrade to Pro — share decks privately, control downloads, hide ads and more …

AndroidでARの夢を再び 〜ARCoreの導入から応用まで

AndroidでARの夢を再び 〜ARCoreの導入から応用まで

AndroidにAR体験をもたらすARCoreはGoogle I/O 2018で1.2がリリースされて対応端末の数と機能が増えました。このセッションでは新機能の解説と、ARCoreを使ってどのように現実を拡張することができるのか、JavaでSceneformを使った場合とUnityを使った場合のそれぞれで実際にコードを見ながら、サンプルを越えたその一歩先に進むための話として構成しました。

Kenichi Takahashi

June 09, 2018
Tweet

More Decks by Kenichi Takahashi

Other Decks in Programming

Transcript

  1. ରԠ୺຤ w Ͱ͍ͩͿ૿͑·ͨ͠ w 9QFSJB9; w (BMBYZ" " " /PUF

     4 4 4 w -(( )VBXFJ1౳ IUUQTEFWFMPQFSTHPPHMFDPNBSEJTDPWFSTVQQPSUFEEFWJDFT
  2. ΦϒδΣΫτΛΧϝϥͷํ޲ʹ ޲͚Δࡍͷճస Vector3 GetLookVector () { Vector3 lookVector = Camera.main.transform.position

    - hitTransform.transform.position; lookVector.y = 0.0f; // Y軸の差分は無視する lookVector.Normalize (); return lookVector; } hitTransform.transform.rotation = Quaternion.LookRotation (GetLookVector());
  3. ௥Ճ͢ΔγΣʔμʔͷϓϩύςΟ w @$POTUSVDU: w ΫϦοϐϯά͢Δ:࠲ඪͷ஋ w @$POTUSVDU(BQ w ੵ૚͍ͯ͘͠ࡍʹ৭Λม͑Δڥ քͷߴ͞

    w @$POTUSVDU$PMPS w ੵ૚͍ͯ͘͠ࡍͷڥքͷ৭ ৄࡉ͸IUUQTXXXLBCVLVDPKQEFWFMPQFSTBSE@QSJOU
  4. γΣʔμʔͷίʔυ if(IN.worldPos.y > _ConstructY + _ConstructGap) { discard; } ඳը͞Εͳ͍Α͏ΫϦοϐϯά͢ΔॲཧͰ͢ɻ

    ϐΫηϧͷϫʔϧυҐஔͷ:࠲ඪͷ஋͕ʮΫϦοϐϯά͢Δ:࠲ඪ ڥ քͷߴ͞ʯΑΓେ͖͍ʢΫϦοϐϯά͢ΔҐஔΑΓߴ͍Ґஔʹ͋Δʣ৔ ߹ɺEJTDBSEͯ͠ඳը͠ͳ͍Α͏ʹ͠·͢ɻ
  5. γΣʔμʔͷίʔυ if(IN.worldPos.y < _ConstructY) { fixed4 c = tex2D(_MainTex, IN.uv_MainTex);

    o.Albedo = c.rgb; o.Alpha = c.a; } else { o.Albedo = _ConstructColor.rgb; o.Alpha = _ConstructColor.a; } ϐΫηϧͷϫʔϧυҐஔͷ:࠲ඪͷ஋͕ΫϦοϐϯά͢Δ:࠲ඪΑΓখ͍͞৔ ߹ɺ௨ৗඳըͷର৅ͱͯ͠ςΫενϟ͔Βͷ৭Λ൓ө͠·͢ɻ:࠲ඪͷ஋Ҏ্ ͷ৔߹ɺڥք෦෼ͷඳըର৅ͱͯ͠ڥքͷ৭Λ൓ө͠·͢ɻ