つぶやきProcessingアラカルト
これはProcessing Advent Calendar 2021の… 何日目の記事でもありません!
アドカレの記事を書いてる皆さんがとても楽しそうだったので、私もなにか書く。そんな記事です。
そして今回のテーマはつぶやきProcessing!
私がこれまでにTwitterに投稿したコードから、ネタ的な意味で面白そうなものをピックアップして紹介します。「1ツイートでこんなこともできる!」という色々なネタ要素を詰め込んだ、つぶやきProcessingアラカルトです。
つぶやきProcessingって?
まず、つぶやきProcessingについて簡単に紹介します。
つぶやきProcessingは、プログラミング言語(&実行環境)のProcessingを使って、1ツイートに収まるコードでアートを作るものです。
Twitterでたくさんの方がコードを公開されていて、今ではなんと6,000作品(!!)も投稿されています。
アート的な側面はもちろん、そのプログラムをどうやって1ツイートに収めるか?というパズル的な面白さが魅力です。
以下、私が投稿したつぶやきProcessingから、ネタ的に面白そうなものを紹介します。なお、Processingはpythonモードを使用しています。
色々なネタ
弾幕シューティングゲーム
1ツイートで遊べる弾幕シューティングゲームです。
マウスカーソルで弾を避け、被弾すると画面が点滅します。
立体視
寄り目にすることで立体的な模様が浮かび上がる立体視(ステレオグラム)です。スマホの画面だと、画像が小さくて立体視が難しいかもしれません。
スリットアニメーション
動く隙間(スリット)を通して見ると、静止画が動いて見えるスリットアニメーションをつぶやきに。スリットアニメーションの実装については繭さんの記事を参考にさせていただきました。
プログラム的なネタ
ランダム関数呼び出し
関数にランダムな変数を与えるのはジェネラティブアートではよくある方法ですが、ランダムな関数を選んで実行してみたらどうなるか?という着想で作ったものです。
選んだ関数と与えた引数の数が合わない(rect(1)みたいな)場合は、例外処理で強引に無視しています。
通信
1つめのツイートがサーバー、2つ目のツイートがクライアントになり、つぶやきで通信を行うものです。
ウィンドウ操作
画像を表示するウィンドウに干渉するものです。
音
ステップシーケンサ
ProcessingのSoundライブラリを使用し、入力したボタンに応じて音を鳴らすステップシーケンサを実装。
上のツイートで入力しているパターンはKoji SaitoさんのつぶやきProcessingからお借りしました。
ドラム
こちらもSoundライブラリですが、ノイズを使ってドラムっぽい効果を出したものです。
しゃべるプログラム
ttslibライブラリを使用した、しゃべるつぶやきProcessing!
PixelFlow
流体シミュレーション
Processing標準ライブラリ界に燦然と輝くヤバいやつ(褒め言葉)こと、PixelFlowを使用して流体シミュレーション!
弾性体シミュレーション
PixelFlowなら、二次元、三次元の弾性体シミュレーションもできます。
おわりに
以上、つぶやきProcessingアラカルトでした!
ちなみに、この記事のヘッダ画像もつぶやきProcessingで作ったものです。
この記事が気に入ったらサポートをしてみませんか?