みず吉のプログラ日記

開発日記になる予定です。

M1Macで競プロ環境構築の備忘録

参考記事

以前(Intel mac)参考にした記事 qiita.com

今回(M1 mac)参考にした記事 qiita.com

詰まったところ

→sudoをつける

$ sudo ln -s /opt/homebrew/bin/g++-11 /usr/local/bin/g++
$ ln -s /hoge/fuga/watshi/ ./watashi/

とリンクした場合は,

$ unlink ./watashi

で解除可能です。

$ cp ./Celler/gcc/11.2.0/include/c++/11.1.0/aarch64-apple-darwin20/bits/stdc++.h ./include/bits

とやろうとしたらcd: no such file or directory:と怒られる。 →homebrewディレクトリからパスを辿って調べて変更しました。

$ cp ./Cellar/gcc/11.3.0_1/include/c++/11/aarch64-apple-darwin21/bits/stdc++.h  ./include/bits 

結果

VScodeでbits/stdc++.hが動くようになり,#include <bits/stdc++.h>も警告が出なくなりました!みなさんもVScodeで快適なc++生活を送りましょう。

VRセミナー運営参加記

アドカレ18日目の記事になるはずだったものです。完璧にエントリーしたのを忘れていました。すみません。24日なのでセーフと言うことにさせてください。

 

経緯

所属する大学のほうで「女子中高生のためのVR体験セミナー」なるものが開かれるとのことで,そのお手伝いに立候補させていただきました。内容としては他大学の先生を呼んでの講演や,情報科3年による座談会(こちらにも参加しましたが詳しくは割愛します)を行いました。そのVR会場として,第1回は大学のシンボルである徽音堂を作成することになりました。私がBlenderでの大まかなモデリングを担当し,もう一人の優秀な同期がUnityで諸々細かいところまで仕上げてくれたので,完全に私の仕事だったわけではない,というか同期のおかげでなんとかなった部分も多いのですが,今回は少しレポとして紹介させていただきたいと思います。

 

作業内容

1. 資料集め

徽音堂に行き,写真をとにかく撮りまくりました。1年近く見ていなかったため記憶が薄れていたので行ってよかったです。せっかくなので普段は入れない舞台裏や2階にも入れてもらいました。500枚くらい撮ったため,GooglePhotoが圧迫されてしまってるのだけが心残りです。

また,先生から図面の画像をいただき,画像からコツコツ組み立てることにしました。奥行きなどを間違えるとかなり違和感がある作りになってしまうので,再現する時は図面があるのならしっかり図面通りに作るのが一番のポイントかなと思います。

 

2. 簡単に試す

Blenderは使ったことがあったのですが,今回はUnityとcluster(バーチャルSNS)も利用したため,簡単なモデルでまず試してみました。詳しい内容はこちらにまとめてあります。

mizkitten.hatenablog.com

mizkitten.hatenablog.com

 

3. モデリング

資料をもとに少しずつ組み立てます。床に図面を載せ,その上に外壁を置く→内壁を置く→屋根を作る→穴を開ける→装飾をつけるという流れで作成しました。

パーツ数が増えるほど私の3年目のMacBookAirは悲鳴を上げていき,常に移動がもさもさしすぎて大変ストレスでした。すぐ落ちるし。Blender3.0がもっと早く出ていれば...。余談ですが,3.0本当にサクサクですごいです。今度それについての記事も書きたいですね。

https://cdn-ak.f.st-hatena.com/images/fotolife/m/mizkitten/20210924/20210924143444.png

mizkitten.hatenablog.com

詳しい苦労は上にあります。Blenderってカーブの扱いが一番難しいと思うのですが,皆さんはいかがでしょうか。逆にカーブさえ極めればBlenderを8割攻略したと言っても...過言です。

その上の画像は途中経過です。これができたのが9月の終わり頃。7月に作り始めたのに,全然進んでいませんね。自分で作った工程表では,8月には終わっているはずだったのにどういうことなんでしょうか...。PCをなだめすかしつつなんとかそれっぽいものを完成させました。

またまた余談ですが,作るものリストや工程表を今回Notionで作成して共有したところとても快適でした。作成したものをうまく利用できるかは別とします。

 

これ以上私の作業の遅さで迷惑をかける訳にはいかないと思い,まだまだこだわりたいところは多々ありつつもUnityのほうにぶん投げます。そしてclusterでワールドを作成してもらいました。

その結果がこちらです。

f:id:mizkitten:20211224213652p:plain

完成したモデル

すごい...凄すぎる。自分でモデルを作り終わった後はちゃちすぎると思って落ち込んでいたのですが,Unityでマテリアルを貼ってオブジェクトを置いてもらうとこんなにも見栄えが良くなります。ちなみに床の模様などは撮影した実際の床の写真をAdobe Captureでマテリアルに落とし込んで貼っています。Adobeってやっぱりすごいですね。

このモニターには画面共有したものが映るので,講演会の時に大活躍でした。そしてなんと,cluster上できたコメントだけでなく,Youtube配信でのコメントも端のスクリーンに映ります。すごい。そこら辺に関してはどうやっているのか本当にわかりません。天才だ...。

ということで,モデル作成はなんとか間に合いました。

 

3. マニュアル作成

後半の仕事をかなり任せてしまったので,参加者のためのマニュアルは私が作成しました。clusterは使ったことがない人がほとんどだと思うので丁寧に作っていたら,これがかなりのボリュームになってしまい案外大変でした。あと,画像を多めに作ったらファイルサイズがすごいことになって縮小に困りました。

 

本番

本番が一番大変でした。座談会のために話す内容を考え,準備は万端...だったはずなのですが,リハは大丈夫だったのに本番になって急に私のPCのclusterが落ちまくり,他の人のPCから結局ずっと喋っていました。おそらく参加者がかなり多く,60人くらいいらっしゃったので,clusterが重くなってしまったのが原因です。次やる時はいいPCを買うか借りるかしたいと思います...。しかし,参加者も会場や内容を楽しんでくれたようなので,総じてみれば結構よかったのではないかなと思います。私も楽しかったです!

 

終わりに

いろいろ大変でしたが無事終わってよかったです。今回は第1回だったので徽音堂のみの作成でしたが,第2回以降は会場もよりパワーアップすると思います。ぜひUTea-virtualプロジェクトに参加してくれる人は次回一緒にやりましょう!Blender楽しいですよ〜〜〜!

AWSウェブアプリ構築チュートリアル体験記

アドカレ6日目滑り込みです!記事使い回しですみません;;

 

AWS で基本的なウェブアプリケーションを構築する

 

友達と一緒にこれを終わらせました!途中でARNのコピペミスをしており詰まってしまったので30分では終わりませんでしたが、トラブルがなければ1時間はかからずに終わるはずです。

ただ、だいぶ古いドキュメントなのでコンソールのボタンに書かれている文字や位置が異なるのは少しややこしかったです。見える範囲で一番意味が近そうなボタンをクリックしておけば大体合っていると思います。多分...

途中経過のスクショを撮り忘れちゃったので時間があったら今度ちゃんと記事にしたいです!

 

こちらが作った今回作ったWebアプリケーションです。めちゃシンプル。

Hello World

 

今までデプロイはDjangoでやっていたのですが、APIをコールしてデータベースに追加できるようにするところまでとても簡単にできてびっくりしました。

f:id:mizkitten:20210729002858p:plain

APIを呼び出してデータを追加できた!

 

もう少しAPI追加したりして機能増やしたいなと思っております。AWS使いこなせるようになりた〜い!

Adobe勝手に映画化プロジェクト参加記

TEAraアドベントカレンダー2日目の記事です!アドカレ初めてなのでわくわくしてます。


といいつつ2日目にして全然プログラミングっぽくないPhotoshopの話になってしまってすみません。書くことは他にもあったのですが、タイトルのAdobe主催の「勝手に映画化プロジェクト」が12/3までなのでこのタイミングで書かせていただきました。


「勝手に映画化プロジェクト」(以下プロジェクト)とは、指定された小説の中から1つ選んでPhotoshopまたはIllustratorとAdobeStockの素材を1つ以上選んで映画のポスターを作るというものです。優勝するとiPadProとかもらえるみたいです。いいな〜

詳しくは下のリンクを読んでください!まだ応募は間に合います。

https://adobe-katteni-eiga-poster.com/


私は他の人と被らなそうだったのと個人的に一番内容が衝撃的で話を覚えていたという理由で、ジョージ・オーウェル作の1984年を選びました。

余談ですがこれは高校の夏の英語の課題として原書を読まされたのですが、話が暗すぎてなんでこれをわざわざ英語で読まなきゃいけないんだ…という暗鬱とした気持ちになった覚えがあります。しかしこないだ偶然そのサイドリーダーを発見したので読み返したところ、昨今の社会情勢もあってかなり面白かったです。内容が暗くても大丈夫な人は読んでみてください。なんだか読書感想文みたいになってきてしまいました。すみません本題に戻ります。


PhotoshopIllustratorだと私は断然Photoshopが好きなのと、映画のポスターはやはり写真を多用するイメージがあったのでPhotoshopのみで今回作りました。本当はIllustratorのパスの使い方が一生分からず苦手だからなのもあります。

AdobeStockについては有料会員ではなかったのですが、2万点くらいフリー素材もあるのであまり苦労しませんでした。2つの素材を使って30分くらいで出来たのがこちらです。


https://twitter.com/mizkitten142857/status/1466064082084130817?s=21


できた直後は「これ30分で作れるとか私天才か?」と調子に乗っていたのですが、よく見るとフクロウの選択切り抜きなどアラが目立ちまくります。また、キャストなどを書くと一気に映画ポスター感が増すのですが、勝手に俳優の方々の名前を載せていいのか分からず書くことがなくてスカスカになってしまいました。


ですが、このくらいの雑な作業でもなんだかそれっぽく見えるのはPhotoshop様様だなと思います。やったこととしては、

①素材1を埋め込んでレイヤーを複製し、ハイパスフィルターをかける。

②素材2をクイック選択ツールで切り抜き、境界をぼかして①の上にオーバーレイで重ねる。

③素材2を複製し、眼の部分だけ同様に切り抜き、②の上にスクリーンで重ねる。

④文字入れ

という簡単な手順です。全体的に薄暗い色調の中に何かしらの眼が煌々と光ってるイメージにしたかったのですが、フリー素材縛りで偶然にもフクロウと鳩が同居してしまったせいでハトの冒険映画みたいになってしまいました。映画好きの人がいい感じに深読みしてくれることを祈るばかりです。


それはそうと他の方々の作品がすごすぎてびっくりしました。まじで映画でした。気になる方はTwitterで「#勝手に映画化プロジェクト」で検索してみてください。


Photoshopについてですが、チュートリアルも充実しており触ってるだけでもとても楽しいです。今日中ならブラックフライデーでコンプリートプランが半額なので、興味ある人はぜひ買いましょう!Illustratorは全然使っていません。


全然クオリティ高くない上にただの日記ですみません。Photoshopは楽しいぞ!という話でした。あとなんだか最近Adobeが進化しててやばいらしいので、そこら辺の新機能も使ってみたいなと思っております。

図書カードくれないかな〜という淡い期待を最後に込めて、明日は3日目です!





Code Runnerが死んだ

VSCodeのCode Runnerが何の前触れもなく動かなくなってしまいました。

Runボタンをクリックしても、あんなに元気だったのに

command 'code-runner.run' not found

としか言ってくれません。

蘇生させましょう。

VSCode拡張機能からCode-Runnerをアンインストールします。

②ターミナルで

cd  ~/.vscode
cd extensions
ls

を実行すると、このように拡張機能ごとディレクトリが表示されます。

f:id:mizkitten:20211001232712p:plain
formulahendry.code-runner-X.XX.Xを探す

その中からformulahendry.code-runner-X.XX.X というディレクトリを探し、そのディレクトリを削除します。(Xは自身のバージョン)

rm -r formulahendry.code-runner-X.XX.X

③もう一度VSCodeを開き、拡張機能からCode Runnerをインストールします。

これで生き返ったはずです!動かなくなった原因は不明です...

参考記事:

VsCode:command ‘code-runner.run’ not foundが表示されてCode Runnerが実行できないとき | 電脳産物

Blender日記 3日目 進捗

全然更新してなかった!飽き性なのがバレてないことを祈ります。

3日目と書いてありますが本当に3日目なのではなく、わりとコツコツモデリングを進めております。でも序盤にこだわりすぎたのもあって一向に完成しない!!!!助けて〜〜

f:id:mizkitten:20210924143444p:plain

現状

 

個人的にモデリングをする上で便利だった機能でも書いておきます。

・ベベル:これをやっとくだけで凝ってるように見える(気がする)。でも言うことを聞いてくれないことも多く仲良くなりきれてはいない。

・ベジエカーブ:ハンドルタイプ(向きの操作の仕方)を選べる。個人的には整列がオススメ。視点をグルグルグルグル回しつつ手作業で微調整してるんですけど本当にこれで合ってるんですかね...

・モディファイア>ミラー:左右対象にできる。建物には必須。これも物体の回転や位置によっては思ったのと違う挙動をするので注意。

・スナップ:2つのオブジェクトを近づけると自動でくっついてくれるので、手作業でチマチマ調整しなくてすむ。頂点基準か面基準かなど選べて、状況に合わせて使う。

・並行投影:建物など直線状に並べるものが多い時はこっちの方が使いやすい気がします。

・Bool Tool:Difference以外使ったことはないので多分他にもたくさんできるのですが、少なくとも一瞬で物体に穴を開けられます。

・Archipack:特に階段のディティールが神。逆に普通の手すりなどがない階段が欲しい時はArchimeshの方が簡単で楽です。ただArchimeshは編集メニューが一瞬しか出なくて不便なのでできるだけ使いたくはない(一回閉じてしまうともうそのオブジェクトに関しては呼び出せない)。

・Planeに設計図を貼り付ける:設計図が手に入るなら図面を敷いて置いていくととても楽です。

この8種の神器を身につければ怖いものはない!多いね。

kaggle 30 days of ML 体験記 - 1週間目

はじめに

この夏は継続力をつけよう!ということでkaggleの30 days of MLに参加しています。いろいろ手を広げすぎてどれか詰みそうですができる限り頑張っていきたいと思います!

 

基本の進め方

毎日メールが届いて、ミッションのように課題が書いてあるのでそれを進めます。ペース管理してくれるのはありがたい。ちなみに課題やメールはもちろん全て英語です。英語が苦手なので時々DeepLに助けてもらいつつ戦っています。

最初の1週間はpythonの基本文法とkaggle notebookの扱いを学びます。授業でjupyter notebookを使っていたので今のところあまり支障はなさそうです。とはいえ最後の2週間からコンペが始まるらしいので気を抜かずに...

 

ここからは7日目までの記録と感想です。

1日目

1. kaggleのインストラクション

notebookの実行方法やコメントの仕方など、kaggleの基本を学びました。

チュートリアルを終わらせたのでランクがNoviceからContributormになりました。わーい。

2. Discordに入る

とてもびっくりしました。何って人数が想像以上で...

オンラインが常に3000人以上いるのに面食らいました。しかもとても多国籍で、言語ごとのチャンネルだけで30あります。Japaneseチャンネルは割と活発に動いており、10代から70代まで様々な年代の方が参加されています。

今見たら課題の日本語訳などをまとめてくださっている方もいました。あとKernelに日本語訳をかける方法もあるそうです。今回は英語力向上の目的もあるので私は今のところ使っていませんが、皆さん優秀でありがたい...

他のチャンネルも、kaggle運営の方に質問できるチャンネルなどもあり、常に質問やTipsが飛び交っています。

私がお気に入りなのはpetsチャンネルです。大体はかわいい犬や猫なのですが、唐突に馬が出てきた時は笑いました。

一人じゃやる気が出ない!という人はこのDiscordを活用すれば継続しやすくなるのではないでしょうか。

 

2日目

PythonコースのLesson1

基本的な文法や算術などを学びます。演習もついており、実行するとCorrectが表示されるのでわかりやすいです。ヒントと答えもあるので初学者にも優しい!

 

3日目

PythonコースのLesson2

関数の扱い方とヘルプの見方を学びます。ヘルプを制するものは言語を制すと先生が言ってました。嘘ですけど。でも困ったらヘルプを見るのは習慣づけていきたいですね。

 

4日目

PythonコースのLesson3

ブーリアンと条件式を学びます。ここら辺から長い文章題が増えてきて、条件を読み落とすなど英語の解読の方に詰まることもありました笑。問題文は丁寧なので英語さえ読めれば簡単なはずなんですけど...

最後のBlackJackの勝率をあげる問題が面白かったです。そもそもBlackJackが弱いのでなかなか勝率が50%を超えず悩みました...普通に「ブラックジャック コツ」を検索してしまいました。

それでも38.1%→41.4% しか上がりませんでした。なぜ... ブラックジャックが強い人はぜひ教えてください。

 

5日目

PythonコースのLesson4

Listについてでした。最後の"ファッショナブルに遅れる"問題が面白かったです。ゲストの半分より後だが一番最後ではないのがファッショナブルらしいです。私もファッショナブルに遅れることが多いですね...

PythonコースのLesson5

これも最後のスロットマシーンの問題が面白かったです。私の期待値は0.03535くらいになりました。皆さんはどうでしたか?

 

6日目

PythonコースのLesson6

文字列と辞書についてです!急に難しくない?私がpythonのsplitとかに慣れてないからだとは思うんですけど大問2がちょっと詰まりました...でもtutorialを読めば問題ないと思います!

 

 7日目

PythonコースのLesson7

matplotlibなどのライブラリの使い方を学びます。

2.のルイージの問題というか問題文の理解が難しかったです。ルイージそんな理知的だったんですね...

 

これで1週間ならびにPythonの入門コースは終了です!お疲れ様でした!