IBM Developer is your one-stop location for getting hands-on training and learning in-demand skills on relevant technologies such as generative AI, data science, AI, and open source.
Canvasでライフゲームを作ってみた。ライフゲームが何かは知っていたし、いくつかの有名なパターンの動きも見たことがあったはずだけど、自分で適宜セルの生死をトグルしたり、パターンをロードしたりできると、思ったよりも面白かった。そして、iPadやAndroidでも、全く同じコードがちゃんと動くというのが改めてすごいなと思ったりした。 JavaScriptにはクラスはないし、オブジェクトはある意味シングルトン。今の場合、クラスもプロトタイプも不要だろうと思って、ゲームのグリッドはWorldオブジェクト、CanvasのグリッドはGridオブジェクトに突っ込んだ。GridはWorldからしか呼ばなくて、Canvas周りの座標変換やらは全部Gridに任せているのだけど、可視性のコントロールはどうやってやればいいんだろう。 動的にサイズが決まる2次元配列を作るのが、どうも良くやり方が分からない。 se
Paintogetherはnode.js+socket.ioによるお絵描きチャットアプリケーションです。 Paintogetherはみんなでお絵描きチャットできるWebアプリケーションです。Canvasタグを使って描画して、データの同期にはnode.jsのsocket.ioを使っています。 ここで絵を描きます。 例えばこんな感じです。なお筆者環境ではなぜか同期処理が失敗しました… socket.ioを使ったサンプルとしてはテキストメッセージ系が多いのですが、座標データさえ送れればこうしたチャットもできるという好例ではないでしょうか。 PaintogetherはJavaScript/node.js製のソフトウェア(ソースコードは公開されていますがライセンスは明記されていません)になります。 MOONGIFTはこう見る 従来、この手のサービスを提供しようと思った場合、Flashを使って行うのが
The Web Games on Facebook and Facebook Gameroom platforms are no longer available for new submissions. This documentation is intended solely for developers with existing games. To learn more, read our blog post. Facebookには、ゲームをデスクトップやノートパソコンのFacebook.comに直接配置できるフレームが用意されています。Facebook.com上にゲームを作成することによって、Facebookのコアサービスに深く統合できます。 フィードやお知らせなど、Facebook.comのあらゆる側面とゲームの統合が可能です。グラフAPI、Facebookログイン、支払いとい
HTML5 Face Builder tutorial. This is another interesting application of HTML5. Today I have developed a little ‘toy’. This little toy can be enhanced into something big. Welcome to test new HTML5 tool – Face Builder (canvas). This tool will allow your members (visitors) to compose their faces, you can select through predefined elements (face, eyes, nose, mouth), and in end – you can ‘export’ resul
はじめましてこんにちは。 KRAYアルバイトの浅海です。 html5のcanvasを使ってお絵かき投稿サイトを作ってみようと思います。 初めてブログ記事を書くということで気合が入りました。 ちょっと長めですがお付き合い下さい。 機能 お絵かき投稿サイトの必要最低限な機能って? ざっと下のような機能を入れてみます。 絵を描ける 絵を消せる 描画を一回分戻れる 線の太さを変えられる 線の色を変える 絵を投稿できる 投稿された画像の一覧を表示できる → 完成見本はこちら完成見本の公開は終了致しました。 絵を描ける HTML5のcanvasにマウスの軌道に線を引いていくわけです。 canvasでのマウス軌道の描き方は、 ・mousemoveイベント発生時に点をプロット という手段が真っ先に思い浮かぶと思いますが、これは、以下の様になります。 これではお話になりません。 なので、点ではなく線を引くこ
Canvas/WebSocketでディアブロクローンなネトゲを作ってみた - mizchi logの解説 ちゃんと勉強して実装したわけじゃないけど、つくってみたい!と思った人が一通り実装できる程度の解説をする。 ゲームプログラミングとウェブプログラミングの初歩を知ってるとなお良い。(というか僕自身どっちも微妙なのだが) ソースコードはこちら GitHub - mizchi-sandbox/ws-netgame: WebSocketを用いたネットゲーム 前提として、CoffeeScript、WebSocketを使う なお、以下のコードは概念を説明するために簡略化したもので、socket.io , coffeescriptの微妙な挙動については検証していない。あくまで擬似コードの一種として読むように。 MVCにわけて解説する。 Model サーバーのセーブデータ。基本的にログイン中はオンメモリ
JS-ImageDiffはJavaScript+Canvasタグを使って二つの画像の差分表示を行うライブラリです。 GitHubでは差分をWebブラウザ上で閲覧できますが、その時に画像の差分表示も行えるのを知っているでしょうか。スライダーで動かしたりして差分を確認できるのですが、その一つの差分表示をオープンソースで再現するのがJS-ImageDiffです。 サンプルです。上が元、中間が変換後そして下が差分となります。どこが違うのか一目で分かります。 左が影無し、右が影ありです。一致している部分だけが表示されています。 サイズが違う場合の差分表示です。 JS-ImageDiffはCanvasタグを使って画像を読み込み、その差分を表示しています。各ピクセル単位で画像を比較して同じであれば黒、違う場合はうまく表示するというやり方でここまで見事に表示できるのが面白いですね。 JS-ImageDif
IntroductionIn the arena of construction and engineering, mechanical estimates play a pivotal role in identifying…
HTML5というわけではないですが、CavasタグとJavaScriptを使って3Dのデモを作ってみました。 デモを見る ソースコード ([右クリック]→[ソースを見る]を選択) こういうのを見れば「HTML5すごい、Flashいらない」と思う人もいるかもですが、冷静にファーストインプレッションを。同じものを以前Flashで実装したことがありますが(Papervision3D演出サンプルNo.01:羽ばたく蝶々)、両者のデモを比較することでメリット・デメリットが見えてきます。 <追記:2013年9月3日> Three.jsの最新版rev 60にアップデートしてみました。3年前に作成したときはrev 17だったのですが、別物のライブラリと言わんばかりにほとんどAPIが変わってしまっています。ちなみにTypeScriptで書きなおしています。 デモを見る ソースコード (TypeScript)
前述のとおり canvas 要素は Web ページ内に空の画像領域を確保します。感覚としては画像ファイルを指定しない img 要素のようなもので、Web ページ上での扱いもほぼ同じです。画像がないので src 属性がなく、代わりに width, height 属性で描画領域のサイズを明示しなければなりません。また、JavaScript で描画対象の canvas を特定するための id 要素を指定するのが普通です。例えば、150x150 ピクセルの描画領域を確保するには、以下のように記述します。 <canvas id="example_canvas" width="150" height="150"></canvas> 閉じタグを忘れると以降の内容が表示されなくなるので注意してください。詳細は後述しますが、canvas 要素内のテキストはブラウザが canvas をサポートしていないときの
Introduction In the ever-evolving landscape of web browsing, staying abreast of the latest technologies is crucial. HTML5, the fifth and current version of the Hypertext Markup Language, has revolutionized the way we experience the web. With its advanced features and enhanced capabilities, HTML5 has become the cornerstone of modern web development, offering a more seamless and interactive user exp
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く