メインコンテンツへスキップ

まさかここまで簡単だったとは!あなただけのスペースインベーダーが作れる驚きの方法

·4 分
2025/08 プログラミング Web開発 ジェネラティブアート ドット絵 デザイン

まさかここまで簡単だったとは!あなただけのスペースインベーダーが作れる驚きの方法

引用元:https://news.ycombinator.com/item?id=44956915

abetusk 2025/08/20 06:16:19

俺もSpace Invaderジェネレーターを作ってみたよ!
ライブ版はこちら: https://abetusk.github.io/iao/vadfad_1gen/
ソース: https://github.com/abetusk/iao/tree/main/vadfad_1gen
Jared Tarbellにインスパイアされたんだ。いい結果を出すのが意外と簡単だったよ。主要な構成要素は目、左右対称、そして小さな長方形内のランダムなピクセルだった気がする。

grues-dinner 2025/08/20 08:36:12

Jared Tarbellにインスパイアされたって、すごく共感するな。初期のコンピュータいじりの大部分を占めてたよ。初期のインターネットの宝石だよね。後のhttp://complexification.netもそう。残念ながら、FlashやJavaの終焉でほとんどの例が動かなくなっちゃったけど、ComplexificationならProcessingの.pdeソースをhttps://hello.processing.org/editor/#editorにコピペすれば動かせるよ。

pavel_lishin 2025/08/20 20:09:28

これ、ブロック印刷の漢字やひらがな・カタカナみたいに見えるね。蛍光灯で照らされたビルの側面とかにぶら下がってそうな感じ。めっちゃクールだよ!対称じゃなかったら、もっと文字っぽく見えただろうな。

mickeyp 2025/08/20 06:25:24

UIとランダムなカラーパレットが最高!素晴らしい作品だね。

pachevjoseph 2025/08/19 23:41:56

この記事、モバイルで読んだ体験の中で一番良かったよ。

ChrisKnott 2025/08/20 05:56:04

そうそう、キャンバスが「拾われる」感じ、ちょっとした喜びだったね!

stanko 2025/08/20 07:33:37

お二人ともありがとう、本当に嬉しいよ。クリーンだけど、楽しくてパーソナルなものにしようと心がけてるんだ。

BoostandEthanol 2025/08/20 08:27:38

そこまで設定した努力は報われたって言えるね。ジェネレーターを作ったことと、それをシェアしてくれたこと、両方に拍手!

stevage 2025/08/20 05:53:18

うわー、結果がめっちゃ良いね! https://muffinman.io/invaders/
記事から想像してたよりずっといいね。あと、oklchについても今日知ったよ! https://developer.mozilla.org/en-US/docs/Web/CSS/color_value

stanko 2025/08/20 07:38:50

Thanks, when I started experimenting I was pleasantly surprised with results I was getting. After some polishing and adding UI I think it really came together nicely.As for OKLCH, it is a big upgrade. Working with color from code is hard, and it really makes things easier. I also like HSLuv [1], but unfortunately it is not supported natively in browsers.
[1] https://www.hsluv.org/

stevage 2025/08/20 08:20:34

The uniform lightness looks nice, but it’s a shame that the easily memorable hue values of HSL (0 = red, 120 = green, 240=blue) are lost.

balamatom 2025/08/20 01:35:32

Nice, just the other day I coded up some quick 2d shooter demo and realized I have no idea how to draw interesting sprites for it. What you’re doing here with drawing the generated vector onto different sizes of grid is brilliant. A sort of structured pulsation. Same simple technique can be used for both ”breathing” animation of a critter and for animating it into bigger, badder forms. Bravo.At this point (actually before even writing the comment) If your blog had a RSS feed I’d have subscribed to it… but (at least according to my RSS plugin) it doesn’t, so I fear I will miss out on your next inspiring writeups. Consider adding one, if you feel like it :-)
https://muffinman.io/invaders/#/size:15/main-seed:began-ever… is a favorite so far

stanko 2025/08/20 09:16:30

Thank you! You can also think of the vector shapes as a kind of skeleton. I think that is one of the reasons it works well. Moving the limbs or increasing the size creates the illusion of movement and breathing. But it works well only while the grid is smaller and can hide the underlying shapes. Once the vectors start to emerge, it breaks the illusion. You could definitely improve it to work better at larger sizes, but I think you would need to introduce more constraints, which limits the random factor of the generator.If you end up using something similar in your game, I would love to see it!edit: It seems that I need to make the RSS link more prominent :)

sphars 2025/08/20 02:51:54

There is an RSS feed, the link is in the top hamburger menu, but here it is:
https://muffinman.io/atom.xml

balamatom 2025/08/20 04:32:18

Sick, +1 sub from me. Thanks!

MisterTea 2025/08/20 11:36:52

Apparently someone drew a space invader on this pigeon walking in front of me the other week ;-)
https://files.catbox.moe/pzwgr8.jpg

scotty79 2025/08/20 00:07:27

If you refresh the page the invader that gets generated as you read changes.

plasticeagle 2025/08/20 09:56:47

Stop it.ChecksOh my god. 11/10.

stanko 2025/08/20 11:38:15

Haha I love your comment. I’ll let you in on a little secret - you can add a seed parameter to the URL to get a specific invader. It has to be an integer, otherwise it will be ignored.For example:
https://muffinman.io/blog/invaders/?seed=1234

Martin_Silenus 2025/08/20 01:50:11

いいね。皮肉な話だけど、これは侵略者を作って地球を救うみたいなものだね。ブルートフォースAIを使わない、まさにハッカーらしいやり方!高評価に値するよ。

stanko 2025/08/20 09:07:43

ありがとう!AIって、こういうプロジェクトの楽しさを全部奪っちゃうと思うんだよね。創作過程の魔法がなくなっちゃうじゃん。

mft_ 2025/08/20 09:13:57

せっかくだからさ、rayvenをGitHubに公開しない?(実質的に)魅力的なベクターハッチングに使ったアルゴリズム、すっごく興味あるんだよね。

stanko 2025/08/20 09:18:51

公開する計画はあるんだけどさ、あれって終わらないプロジェクトの一つなんだよね。今年中にはやっとリリースできるといいなと思ってるよ。

Martin_Silenus 2025/08/20 09:13:47

AIのせいで俺たちが消えるって言う人もいるけど、あれはただコーディングが嫌いなだけなんだよ。

plasticeagle 2025/08/20 09:54:52

言わせてもらうとさ、このウェブサイトは今まで見た中で一番素敵で、一番読みやすいサイトの一つだよ。

stanko 2025/08/20 11:33:49

ありがとう、本当に嬉しいよ!

janfoeh 2025/08/20 15:25:05

俺もこれに賛成!これは本当に良くできてて、いじってて楽しいよ。全体的に最高の出来だね!

aa-jv 2025/08/20 08:53:47

すっごく興味深い記事だし、8ビットの美学とかレトロコンピューティング好きな人にはかなり楽しいよ。これを読んでて思ったんだけどさ、これって母なる自然がすべてをカニの形に進化させたいって願望の、人間によるデジタルの表れなんじゃない?スペースインベーダーの付属物の対称性とか機能を見てよ。結局、全部カニみたいに見えるじゃん。これってマトリックスの合流点を見てるのかな?

joemasilotti 2025/08/19 23:12:45

これ、ランダムアバタージェネレーターとしてめちゃくちゃ良さそう!

Perz1val 2025/08/20 12:49:09

GliderっていうアプリでHacker News読んでるんだけど、これほとんどインベーダーみたいなゲームでさ、惜しいんだよね!

もっとコメントを表示(1)
dangond 2025/08/20 16:01:43

楽しいハートのキャラクターがアニメーションするとDittoに変身するんだ、この多様性が最高!URLも見てみてね!https://muffinman.io/invaders/#/size:9/main-seed:officer-clo…

Modified3019 2025/08/20 07:34:56

スクロールすると上部に固定されてる画像やアニメーションが、今話してることを視覚的に教えてくれるのがマジでいいね!普段はスクロール中の派手なページ変更とか嫌いなんだけど、これは良いわ!

pjbk 2025/08/20 15:14:56

80年代にドーキンスの『盲目の時計職人』を読んで、似たようなことやったなあ。Biomorphアプリを再現したくて、Atari Logoのスペースインベーダーをハッキングしてさ、遺伝的プログラミングでインベーダーの形状と動きを進化させたんだ。5レベル目にはもう無理ゲーだったよ!

Biganon 2025/08/20 10:47:17

AI使わないで、こんな楽しい方法でやってくれてありがとう!

Waterluvian 2025/08/19 23:38:50

ベクトルをラスタライズして作ってるってことに驚いたし感動したよ。疑似乱数カーネルウォークをミラーリングして作ったら、どこまでうまくできるか気になるな。

lyr-7d1h 2025/08/20 04:25:46

これって、基本的に俺がやったのと同じ!ランダムウォークを修正してグラデーションカラーのインベーダーを作ったんだ。面白い形がマジでできるよ。URLも見てね!https://tinyurl.com/creagen-invader (デスクトップ推奨)
Creative Coding Amsterdamのコーディングチャレンジの一部なんだ。

stanko 2025/08/20 09:11:56

すごく良いね!ウォーカーも考えたんだけど、結局ベクターシェイプにしたんだ。でも、この二つを組み合わせたらもっとクールな結果が出そうだね!これはCCAのコードチャレンジの一部で、みんなのジェネレーターをまとめたページを作る予定だよ。

h4ny 2025/08/20 03:49:14

いやー、すごく楽しい読み物だったよ。問題解決とか文章とか、プレゼンテーションに込められたいろんなアイデアに感謝しかないね!

albert_e 2025/08/21 03:39:05

よくできてるね!一つ提案なんだけど、たくさんのキャラクターを生成するとき、数学的に制約をつけて、それぞれが似すぎないようにしたらどうかな?偶然同じに見えたり、区別がつかなくなったりするのを防げると思うよ!

gregschlom 2025/08/20 06:04:25

2000’sのWeb伝説levitated.netから、関連するインベーダーフラクタルがあるよ! http://www.levitated.net/daily/levInvaderFractal.html (2003年)

taeric 2025/08/20 18:01:15

めっちゃ楽しい記事だったよ。描画でユーザーの位置を追跡して特定のことをするアイデアが最高!もっと使われてもいいのにって驚いた。ロープのページも見たけど、これはウェブページにとってすごく良い戦略だね。

netfortius 2025/08/20 06:31:54

クール!世界中のインベーダーをここで集めてるよ: https://www.space-invaders.com/flashinvaders/

mock-possum 2025/08/20 14:58:58

これ、マジで最高の記事だよ。作品自体もすごいけど、説明とデモンストレーションへの配慮にもめちゃくちゃ感動した。マフィンマンに大リスペクト!

appstorelottery 2025/08/20 12:20:30

これは素晴らしいね、君のアルゴリズムは本当に良い結果を生み出してるし、記事も最高!これを僕らのゲームで使えるシンプルな関数として提供してくれたら嬉しいな ;-)

CodeWriter23 2025/08/20 16:26:39

へぇ、僕らの時代はね、><と<>みたいな文字の並びでアニメーションさせて、ゲーム全体を80x24のASCIIターミナルで動かしてたんだぜ。

ygritte 2025/08/20 06:13:02

いいスペースインベーダーは、いかにも悪そうで威嚇的じゃないとね。ハサミを振り回して獲物を捕まえるような動きがあれば、さらにポイントアップだよ。

Suppafly 2025/08/23 05:49:16

最初はもっと簡単だと思ってたけど、意外と奥が深かったな。でも、最終的な結果は本当に素晴らしいよ。

forrestthewoods 2025/08/20 06:10:28

これ、最高だった!浮遊するプレビューもすごく良くできてたよ。大拍手!

FridayoLeary 2025/08/20 01:33:47

スペースインベーダーがまさか一人で作られたって、すごくない?

appstorelottery 2025/08/20 12:22:03

インベーダーの動きって、実は1/60秒ごとに1体ずつ動かしてるのがミソなんだよね!あのパックの動きをオリジナルと同じにするには、このオリジナルのプログラマーの天才的な錯覚の技が欠かせないんだ。

egypturnash 2025/08/20 17:50:33

あの特徴的な動きは、2mhzの8080 CPUと少ないビデオサポートの制約から生まれたんだよ。Computer Archeologyの分解コードを見ると、1フレームでプレイヤー、弾、エイリアン1体、エイリアンの弾1つしか再描画できないから、動きをずらすしかなかったんだね。
https://www.computerarcheology.com/Arcade/SpaceInvaders/

appstorelottery 2025/08/20 19:09:20

このテクニックはComputer Archeologyのサイトで知ったんだ!25年間インベーダークローンを作り続けて、やっとこれで完璧にできたよ。このゲームの執着から解放されるわ!
https://datsuco.itch.io/video-invaders

lzyuan1006 2025/08/20 01:26:06

面白いね、これにはすごい想像力が必要だったんだなぁ。

Goldenbowl 2025/08/20 00:39:01

最高!

記事一覧へ

海外テックの反応まとめ
著者
海外テックの反応まとめ
暇つぶしがてらに読むだけで海外のテックニュースに詳しくなれるまとめサイトです。