クワマイでもできる

クワマイでもわかる

GitHubでpull request作ってreviewしてもらってmergeする

開発中のコードをお友達に確認してもらいたいときGitHubのpull requestは便利。個人で開発してても追加した機能のまとまりごとにpull request作っておくと後から見たときわかりやすいからみんなにおすすめな機能。今回はpull requestの作成からreview、merge…

Unity projectをVSCodeとGit Graphで簡単にバージョン管理する

VRChatとかをきかっけにUnityを触り始めた人たちにGitをおすすめしたかった。いきなりGitコマンド覚えるのは大変なので多くのUnityユーザーが使っているVSCodeでGitの操作をする流れをメモ。Git Graphという拡張機能を使うと↑みたいに変更履歴が見やすくてお…

メタバースからお蕎麦を食べる

VRChat上にいるお友達にロボットアームを操作してもらい、現実の僕にお蕎麦を食べさせた。作ったものの仕組みとか思い出についてまとめる。 動いている様子 youtu.be クワマイもVtuberになって4年が経ちました今回はVRChatからロボットアームを操作してお蕎…

社会人になって半年経った

4月に入社して半年たった。こういう節目の話を記録に残しておくと後で面白いから書いておく。なんかTwitterの埋め込みばかりになっちゃったけどこういうスタイルのブログ懐かしい気がするね。 生活の話 これは去年からだけどコロナ禍なのでひたすら外出自粛…

Rvizで同一形状のrobot modelを複数台表示する

ROS

マニピュレータをマスタースレーブ制御する際、Rvizでマスターとスレーブの2つのrobot modelを重ね合わせて表示したい。同一モデルを使用すると名前空間が衝突してしまうため、tf_prefixを用いて両方表示する方法を紹介する。 使用した環境 Ubuntu 18.04 ROS…

Windowsのroslibpyが遅いときの対処方法

ROS

Windowsでroslibpyを使うとpublishの実行頻度と比べて実際にpublishされる頻度が異常に遅かった。調べたところ解決策があったのでメモ。 使用した環境 OS: Windows 10 roslibpy 1.2.1 reactor.timeoutの設定 コードに下記の2行を付け足すだけで解決。簡単で…

社会人初仕事はJetson Nano MouseでスマホVR

ささやかなコンテンツですが就職して初めて表に出たお仕事です ブログは先輩に書いていただいて、僕はコード書きました。よかったらみんな見てねー。スマホVRといいつつ頭部運動を反映してないというVR元年の現代において大変素朴な仕上がりです。 https://t…

回転行列の右手系左手系変換

ROSの座標系は右手系、Unityの座標系は左手系と異なるためそれぞれ連携させるためには右手系左手系の変換が必要だった。要は対応する方向の要素を入れ替えればいいわけだけど、調べてもあまり出てこないのでメモ。 座標系について それぞれの座標系はこんな…

ソーシャルVRに点群を持ち込みたい[2] モバイル対応編

VRChatやCluster、Stylyなど、VRやARの空間を簡単に共有できるツールが増えてきた。多くはスクリプトが使用できない制限があるため、点群を表示するにはshaderで頑張る必要がある。最近ではOculus Questやスマホなど、使用できるデバイスが多様になっている…

ソーシャルVRに点群を持ち込みたい

VRChat、Cluster、StylyなどのソーシャルVRに点群を持ち込みたい。なぜなら点群がかわいいから。今回はスマホで点群を撮影、パソコンで編集、ソーシャルVR向けの素材に変換するとこまでご紹介。 本記事はBoze Advent Calendar 2020 - Qiitaに登録されていま…

CloudCompareで点群編集

最近はスマホで気軽に点群が撮れるようになった。撮った点群を共有したいけどその前に切り抜いたりノイズを除去したりしたい。CloudCompareを使って点群のノイズ除去、間引き、切り分け、書き出し等簡単な作業をまとめてみた。 関連記事 CloudCompareのイン…

in3Dでリアルアバターを作ってもらう

in3Dというスマホアプリで体をスキャンし、1220円でVRChatのアバターに変換してもらった。あんまり情報が無かったのでスキャンからアバターの受け取りまでをメモ。結論としてはUnityでアバターのセットアップができる人は課金せずFBX出力して自分でセットア…

モバイルバッテリーからUSBハブに給電したい

RealSense D435iとT265をバスパワーUSBハブ経由で使おうとしたところ、電流が足りないみたいで起動しなかった。セルフパワーUSBハブを使えば解決するが、持ち運びながら使用したいためACアダプタでなくモバイルバッテリーから給電したい。今回USB給電タイプ…

groupタグを使って複数のロボットを同じROSスクリプトで動かす

ROS

以前2台のマニピュレータをそれぞれ右手用、左手用に分担させて動かした。制御自体はほぼ同じだけど手先位置のtopic名だけ違う名前にする必要がある。topic名だけ異なるスクリプトを2つ書いてもいいけど、roslaunch実行時の引数で切り替えができるようにgrou…

AR人形劇もどきをした

前々から一人二役の掛け合い形式のコンテンツを作ってみたいと思っていた。世は新型コロナでステイホームだし、休校で暇なこどもたちに向けて工作番組をつくってみた。初めてシェイプキーとダイナミックボーンに触れた思い出記事。 動いている様子 こんなか…

YouTubeチャンネル登録者数100人になったよ

CGとかゲームが苦手だった私はVtuberブームにかこつけて2018年2月6日からちまちま需要が謎な動画を投稿し、チャンネル登録者数が100人になった。登録者数〇〇人突破記念動画とか、すごくそれっぽいからやってみた。以前触ったZED miniでもうちょっと真面目に…

GitHubでゆるくタスク管理する

学校の課題とかコンテストへの出場とか、お友達と開発する際GitHubは便利。単にコードを管理するだけじゃなくてTo doリストとして使っても便利なのでお友達への紹介用に書いとく。本記事ではProjectの作成、タスクの追加、担当者、ラベル、期限の設定方法に…

Ubuntu PCに入れたUnityのスクリプトエディタにVSCodeを設定する

UnityのスクリプトエディタはVSCodeが人気。Unityの設定でVSCodeを指定すればいいだけだけど、VSCodeどこ?となったのでメモ。僕の場合snapでインストールしたので/snap/bin/codeにあった。 使用した環境 Ubuntu 18.04 Unity 2018.4.19f1 Visual Studio Code …

UbuntuでUnity Hubを使う

ROS#とか使ってるとUbuntuでUnityを起動したくなることがある。以前はフォーラムのリリース情報とか見なきゃいけなかったのだけど、ものすごく普通にインストールできるようになってたのでメモ。特に変わったことしてないので、便利になったなぁという日記の…

joint_state_publisher_guiの使い方

ROS

以前joint_state_publisherのGUI機能(上記スクショの左側のやつ)がjoint_state_publisher_guiとして独立したという話をした。ROS melodic以前の場合はとりあえずjoint_state_publisher_guiをインストールすれば使えるようになるけど、ちゃんとした使い方もメ…

Rviz: Could not find the GUI, install the 'joint_state_publisher_gui' package

ROS

display.launchを実行してRvizでURDFを見ようと思ったら下記エラーが発生し、↑のスクショの通りモデルが真っ白で正常に表示されなくなった。 [ERROR]: Could not find the GUI, install the 'joint_state_publisher_gui' package Rvizの画面ではRobotModelに…

Atomのmarkdown previewで数式を見る

tex形式で数式を書くとき、リアルタイムにプレビューしながら書きたいなって思った。Atomのmarkdown preview機能を使うことにした。下記手順が面倒な人はVisual Studio Code使うといいかも。 必要なパッケージのインストール Atomはデフォルトのmarkdown pre…

VRからロボットを操作する記事を書きました

ちょっと前の話だけど、HMDとコントローラで構成されたVR機器でロボットを操作した。簡単に言えば僕の手の位置と頭の向きをロボットが真似するやつ。その際趣味TECHオンラインというサイトにお誘いいただいたので、記事を書いた。 動いている様子 記事にも載…

VRChatからリアル扇風機を動かす

VRChatからリアル側にアクションを起こせたら面白そう。今回は縁があってタナベさん、いくこさんとVRChat上のボタンからリアルの扇風機を動かすことができた。っていう思い出記事を2018年9月10日に書いたのに下書きのまま放置してたので供養します。 できた…

自分の代わりに判子を押してくれるロボットを作る

クワマイの名の下に勝手に判子を押すロボットをお友達と作った。ハッシュタグ付けてTweetするとロボットが書類っぽく印刷して押印、写真にとってTweetで送り返してくれるもの。この記事はロボットの特徴と思い出の記録。 動いてる様子 珍しく動画内で色々解…

TwitterのCall to action機能でTweetから動画やブログへ誘導する

Tweetは見てもらえても本編の動画やブログを見てもらえない問題を解決すべく、Twitter Media studioのCall to action機能を使ってみる。上記スクショみたいに動画やブログへのリンクが表示されるようになるので、多少はアクセスが増えたりしたらいいな。 ち…

VSCodeでURDFをプレビューしながら書く

以前記事を書いたURDFとxacro(XML macro)はロボットのシミュレーションに必要な形状とか物理特性、センサーやアクチュエータなどを記述できる形式。確認のためにいちいちrvizを起動してたけど、Visual Studio CodeのROS向けExtensionsにURDFをプレビューする…

数値計算で逆運動学を解く

Denavit-Hartenberg parametersでマニピュレータを記述し、数値計算で逆運動学を解いた。パラメータさえ書けば色々なマニピュレータに対応できるので便利そう。運動学はにわかなので違うところあったら教えてください。 Notebook 実装の例と式はJupyter Note…

Reality Composerでお気軽AR作り

iOS13からARKit3になり、Reality ComposerというAppが配信された。ARコンテンツがお気軽に作れてシェアできちゃうし、Xcodeに持って来ればさらに本格的に作り込めるらしい。今回はiPadでクワマイを弾き飛ばすものを作った。正直解説なんていらないほど使いや…

iOS13のSafariでデバイスの傾きを取得する

Web XRとかブラウザゲームとか、デバイスの傾きに応じて動くWebアプリは楽しい。iOS13のSafariは、傾きを取得する際ユーザーの許可が必要になった。ちょっと書き足すだけでできたので、手順をメモ。 使用したデバイス 10.5インチiPad Pro iPadOS13.1 "動作と…