Click to toggle music
Click to toggle music
デモはここで試せる https://posenet-worker.netlify.com/ コードはここ github.com 構成 getUserMedia でカメラ取得 OffscreenCanvas でバックグラウンドの書き込み Tensorflow.js + Posenet Tensorflow.js が Chrome では webgl バックエンドになったとの目撃談があったので、試してみた。 [https://twitter.com/sugyan/status/1156616432248971264:embed#動作を試せるやつ上げた。Chromeだと WebWorkerでMainThreadの動き止めずにwebglで高速に処理してくれてそう https://t.co/GsepIMRSqG https://t.co/je8ceda47L] 今の所、Chrome 以外では tens
最近は、メタバースのブームもあり、Unreal Engineを使ったメタバース関連のコンテンツや、ウェブコンフィギュレーターなどのウェブコンテンツの相談が増えています。 ※ここでいう「ウェブコンテンツ」は、専用のアプリのインストールなしに、ウェブブラウザで体験できるコンテンツを指します。 以前は、Unreal EngineからのHTML出力を実験的な機能としてサポートしていたのですが、現在は公式にはサポートしていません(サードパーティーのプラグインなどがある場合はあります)。 しかし、ウェブコンテンツを制作する方法は、大きく分けて3つの方法が考えられます。 Pixel Streaming WebGL Render on Demand この記事では、それぞれの概要やメリット、デメリットを紹介します。 ウェブコンテンツを作る際のヒントになれば幸いです。 ● Pixel Streaming Pi
同じことの繰り返しにみえるけれど、 平山にはそうではなかった。 すべてはその時にしかないもので だから、すべては新しいことだった。 かすかに朝の気配がする。 落ち葉を竹ぼうきで掃いている 老女の他は誰も そのことにまだ気がついていない。 竹ぼうきの音が古いアパートの2階まで届く。 男がすっと目をあける。 そのまま天井をみつめている。 顔の皺の深さは日焼けのせいか それとも年齢のせいか ずいぶん遠い目をしている。 前触れもなく男が起きる。 薄い布団をたたみ、 階下に降りて身支度をはじめた。 顔を洗い、 使い込まれた電気シェーバーを 左右の頬にあてて 口髭をハサミで器用に整える。 無駄がない動きだ。 ひょっとすると何十年も 男が同じことを してきたのではないかと思わせる。 台所に置いてある スプレーを手に2階へもどる。 急な階段のせいか、 軋む音を最小限にしたいのか、 男はかかとをつけずに登る
360度のパノラマ画像をブラウザ上で表示できる、軽量スクリプトを紹介します。 パノラマ画像を見るだけでなく、パノラマ動画、リンクコンテンツ、物語コンテンツなど、インタラクティブなさまざまなコンテンツを実装できます。 Panolens.js Panolens.js -GitHub Panolens.jsの特徴 Panolens.jsのデモ Panolens.jsの使い方 Panolens.jsの特徴 Panolens.jsはイベント駆動型で、WebGL対応のパノラマビューアーです。 パノラマは水平方向をはじめ、垂直方向・拡大縮小にも対応しています。 Three.JS(3Dフレームワーク)をベースに実装された軽量のスクリプトで、カスタマイズも優れています。 Panolens.jsのデモ デモではPanolens.jsで実装されたさまざまなパノラマを楽しめます。
パーティクルとは粒子のこと。パーティクルを表現に取り入れると、印象的な演出に役立ちます。JavaScriptやWebGLを使うことで、ウェブの技術でもパーティクル表現の制作が可能です。本記事では題材にパーティクル表現の制作に役立つアイデアや着眼点を紹介します。 作例の紹介 本記事のチュートリアルの完成形はこちらになります。 別タブで再生する ソースコードを確認する この記事で学べること 2Dテキストを粒子化して動かす表現 パーリンノイズによる空気感の再現 GSAPによる大量のトゥイーン制御 WebGLの高速化(PixiJSの応用) 制作の技術 本作例を制作するにあたり、利用しているウェブの技術の概要を紹介します。 WebGL 画面表示はWebGLを利用します。ウェブのレンダリング技術において、もっとも高速な描画性能を得られるのがWebGLであるためです。WebGLは3D表現のための技術と思
@potato4d が @spring_raining にフロントエンドにおける Deep Learning の利用について聞いてみました。 ゲスト紹介 @spring_raining UIT室 フロントエンドエンジニア 修士で Deep Learning の研究 未踏プロジェクトの一環 で DeepGlyph 開発中 クライアントにおける DNN の活用 モバイルだと割とすでに普及期の印象 Firebase ML Kit など、クラウドとハイブリッドなものもよくある Web でも段々実装が進んでいる DNN Library for Web Tensorflow.js https://www.tensorflow.org/js 言わずとしれた有名ライブラリの JavaScript 版 Tensorflow との相互運用性が魅力 brain.js https://github.com/Bra
最近、動画から振動パターンを分析したいという案件がありました。具体的には、動画に映っているマーカーの動きをトラッキングして、数値として取り出したい。 Blenderのモーショントラッキング機能を使ったらうまく行ったので、その方法を記録します。 Blenderでモーショントラッキング トラッキングデータをビルトインPythonで書き出す Pythonコード 使い方 まとめ Blenderでモーショントラッキング これは動画で見たほうがわかりやすいので、この辺りのチュートリアルを流し見てみてください。 youtu.be このチュートリアルでは、ノードでコンポジットするところまで触れられていますが、今回の用途で必要なのは〜1:40辺りまで。これで全体の9割は終わりです。ちなみに、トラッカーの名前がCSVファイル名に入るので、わかりやすい名前に変更しておくと良いです。 トラッキングデータをビルトイ
はじめに Rustでグラフィクスプログラムをクロスプラットフォームに書く環境が、wgpuというクレート中心に揃っていて大変素晴らしいので、それについてメモします。 記事の後半では実際にwgpuを使って三角形の描画までを試してみます。 バージョン Rust: 1.62.0 wgpu: 0.13.1 グラフィクスAPI この記事ではグラフィクスプログラミングを、グラフィクスAPIを利用したプログラミングを指すものとします。 まずはグラフィクスAPIについて最初に説明をします。 グラフィクスAPI グラフィクスのAPIとは、具体例をあげるとOpenGLやDirctX的なやつです。 現代においてリアルタイムグラフィクスを利用するプログラムを書く場合、CPUだけで実行される普通のプログラムとは違い、GPUを使うプログラムを書くことになります。 GPUを使うプログラムを書くとはどういうことかというと、
オープンソースで開発されている無料の3DCGソフト「Blender」の開発基金「Blender Development Fund」にAppleが参加したことが発表されました。 Apple joins Blender Development Fund — blender.org https://www.blender.org/press/apple-joins-blender-development-fund/ Blenderはモデリング・レンダリング・リギング・物理シミュレーションなどの3DCG制作に求められる主要な機能を取りそろえた無料ソフトで、世界的なゲーム企業・Ubisoftのアニメーション制作部門にメインツールとして採用されるなど、アマチュアからプロまで多くのユーザーに支持されています。 そんなBlenderには開発を支援するための基金が存在しており、これまでにMicrosoftや
AAATTT111111333---ccciiisssmmmooollllllAAATTT111111222---DDDddduuurrrAAATTT333333---fffiiisssmmmooollllllAAATTT666222---GGGddduuurrrAAATTT333222---cccmmmooollllllAAATTT222777---fffiiisssmmmooollllllAAATTT777777---hhhmmmooollllllAAATTT444444---aaammmooollllllAAATTT222222---fffmmmooollllllAAATTT111111111---bbbmmmooollllll
“AR定規”は引っ越しで活躍する? 試して分かった魅力と課題:遊んで学べる「Experiments with Google」(第32回)(1/2 ページ) 「Experiments with Google」は、Googleが人工知能(AI)や拡張現実(AR)といった最新技術の可能性を示すために、実験的な応用例を紹介するショーケースだ。膨大なコンテンツを公開しており、その多くはスマートフォンやPCで試せる。 この連載では、多種多様な応用例の中から興味深いものをピックアップ。実際に遊んだ体験レポートを通して、裏側にあるテクノロジーや、技術の活用方法とその目的を解説する。 読者の皆さんも、ぜひ自分の手で試しながらその仕組みを学んでもらえたらうれしい。きっと、最新技術の魅力に気付くはずだ。 引っ越しで重宝する? AR定規「Measure Up」の精度はいかに 春は進学や卒業、就職、転勤など生活が大
2022年8月31日紙版発売 2022年8月29日電子版発売 巴山竜来 著 B5変形判/144ページ 定価2,860円(本体2,600円+税10%) ISBN 978-4-297-13034-3 Gihyo Direct Amazon 楽天ブックス ヨドバシ.com 電子版 Gihyo Digital Publishing Amazon Kindle ブックライブ 楽天kobo honto 本書のサポートページサンプルファイルのダウンロードや正誤表など この本の概要 本書はリアルタイムグラフィックスの基本を理解するための解説書です。 リアルタイムグラフィックス,つまり「即時に生成される」グラフィックスはいまやゲームからビデオチャットまで広く利用されており,多くの方が目にするものになっています。 この技術の根本には数学があり,数学的知識を身につけることで,多様なグラフィックスを生み出すコード
こんにちは、年末年始に新しくWindows10の自作PCを組んだ虎の穴ラボのおっくんです。 昨年から、Web audioを取り扱うライブラリとしてTone.jsを使って、 ブラウザで音を鳴らしたりということをしていたのですが、一歩進んで再生する音を可視化したいと思いました。 可視化の方法としては、発生させる音を文字で表示するということもできるのですが、 今回は音楽再生ソフトの視覚エフェクトをイメージして作成することにしました。 Web audioを扱うTone.jsとCanvasを扱うp5.jsの2つライブラリを使用して、円環状に配置した音程に対応したバーが伸び縮みするアニメーションをCanvasに表示させます。 完成したページは以下のようになります。 音楽再生アプリの画面 完成品はこちらアップロードしておりますので、ぜひ見てみてください。 開発環境 OS MacOS Mojave バージ
In the world of modern portable devices, it may be hard to believe that merely a few decades ago the most convenient way to keep track of time was a mechanical watch. Unlike their quartz and smart siblings, mechanical watches can run without using any batteries or other electronic components. Over the course of this article I’ll explain the workings of the mechanism seen in the demonstration below
これはThree.js Advent Calendar 2019の14日目の記事です。 3年前に以下の記事を読んでWebGL Inspectorを使い、デバッグ処理でWebGL Inspectorに凄くお世話になりました。 WebGLの開発やデバッグに便利なブラウザ拡張機能をつかってみよう 「Three.jsにBaylon.jsみたいなDebug modeある?」という議論を見つけて気になったので、現状のWebGLデバッグツール状況を調べてみました。 Three.jsフォーラム - Does three.js has some “scene debug mode” or plugin? (like babylon.js DebugLayer) 消失したデバッグツール WebGL Inspector 最終更新日(github):2017/02/22 去年はまだChromeウェブストアにあった
ブラウザ上で3Dグラフィック機能を利用する時、ほとんどの場合には「WebGL」が利用されています。「WebGPU」は、年々向上していくGPUの性能をより一層引き出すために、「WebGL」の後継としてゼロから設計されているAPI仕様です。現在、WebGPUは仕様の策定と各ブラウザへの実装が同時に進められており、本格的な普及はまだまだ先という状況ですが、一足先にMozillaの技術者であるDzmitry MalyshauさんがWebGLと比較しながら「WebGPUはどのような点が進化しているのか」を解説しています。 A Taste of WebGPU in Firefox - Mozilla Hacks - the Web developer blog https://hacks.mozilla.org/2020/04/experimental-webgpu-in-firefox/ WebGP
GPUプログラミングをブラウザ上で行うことができるAPI「WebGPU」に、Google Chromeのバージョン113から正式に対応するようになりました。このWebGPUを使って、GPTなどの言語モデルをブラウザ上で体験できる「WebGPT」が公開されています。 GitHub - 0hq/WebGPT: Run GPT model on the browser with WebGPU. An implementation of GPT inference in less than ~1500 lines of vanilla Javascript. https://github.com/0hq/WebGPT WebGPTはデモページが公開されており、以下からアクセスできます。 WebGPU GPT Model Demo https://www.kmeans.org/ WebGPTはWeb
1 はじめに スペースリーでエンジニアをしている長谷川です。 最近は3DのWebアプリの開発を担当していて、弊社でリリースしている「パノラマ変換3Dプレイヤー」のコンテンツ作成機能などを開発しています。 3DのWebアプリを開発する際には「React/Vue × WebGL系ライブラリ」という構成が代表的なケースの1つであり、弊社でもその構成を選択しました。 ところが、3D Webアプリはサービスの数としては多くないので保守運用まで考慮した設計ノウハウはまだまだ十分に共有されてはおらず、開発を進めるにあたって以下のような懸念点がありました。(詳細は次章) 「宣言的なReact/VueのWebアプリ」と「命令的なWebGL系ライブラリ」というスタイルの違うコードが混ざることでそれぞれの責任分担が曖昧になりやすい 「WebGL系ライブラリを用いた3Dアプリ」の保守運用を考慮した設計に関するノウ
WebGLウェブ・ジーエルとはブラウザで3D表示するための標準仕様。いまやスマートフォンを含むすべてのブラウザでWebGLが動作します。WebGLを使えばGPUによって描画が高速化されるため高度なグラフィカル表現が可能になります。 WebGLを使えば主に次のようなコンテンツ開発に役立ちます。 3Dモデルの表示 ゲームコンテンツ データビジュアライゼーション プログラミングアート 魅力的で華やかな画面演出(広告系サイトなど) かつてはFlash PlayerやUnity Web Playerのようなブラウザ・プラグインを使わなければ3D表現はできませんでしたが、WebGLの登場によってプラグイン未搭載のスマートフォンのブラウザでも3D表現が実現可能になりました。 本記事ではWebGL入門者にむけ、数秒で試せるオリジナルのWebGLのHTMLデモを多数掲載。どれもスマートフォンのブラウザでも利
この記事は「Happy Elements Advent Calendar 2023」および「AWS for Games Advent Calendar 2023」12月15日の記事です。 はじめに Happy Elements 株式会社でインフラグループのグループリーダーを務めております、長谷川です。 普段は全社横断で AWS, GCP, Azure といったクラウドでのサービス設計・構築・運用を担当するグループのリーダーを担当しています。 Happy Elements カカリアスタジオでは、少人数かつ限られた期間内でゲームを企画から開発まで行うチャレンジプロジェクト「SuperLite アプリ」という取り組みを始めました。 Super Lite アプリでは、新しいチャレンジを希望するメンバーでチームを結成し、およそ1ヶ月程度の作業時間を使って1つのゲームを作り上げます。 限られた作業時間
I've made a JavaScript simulation of driving at night time on the motorway. It's hard to classify what it is. It's not a video, because it's generated dynamically. It's not a game, because you just watch. It's not a screensaver, because it's not the 90s. Maybe it's a "demo"? This is something I've been planning to make for years, but kept forgetting about. I would only remember it when in the pass
Are you using ztext and happy with it? Your kind support keeps open-source JS libraries like this free for others. InitializationThere are multiple ways to use ztext. Pick whichever method is easiest for you. HTML attributesVanilla JavaScriptReact JS NewVue JS New How it worksZtext gives the illusion of volume by creating layers from an HTML element. There's no need to spend hours fiddling with <c
こんにちは。WebGLのお勉強1週間目くらいの絵描き系エンジニア「ゆき」です。最近Qiita界隈でもタピオカが流行っているらしいので、今日は勉強中の技術をフルに活用してタピオカを作ってみました。 ここで試せます(スマホ未対応): https://tapioca-pixi.firebaseapp.com この記事の内容と想定読者 この記事ではJavaScriptの描画エンジンの定番の一つであるPIXI.jsと、物理演算ライブラリのmatter.jsを使って、タピオカを可愛くふわふわさせる表現のアプローチとポイントを解説します。 物理エンジンと描画エンジンの連携方法 シェーダーによるオリジナルの表現 物理演算で表現したいものを作るためのチップスいくつか シェーダー(glsl)周りは結構独特なので別途もうちょっとちゃんとした解説記事を書く予定です。この記事はどちらかというと駆け足のネタ記事になっ
クソが! というわけで、Mapbox GL JSが2.0よりオープンソース・ソフトウェアではなくなりました。 github.com Mapbox SDK for iOSで起きたことがJavascriptでも発生したという感じです。 何が変わるの? mapbox.accessToken にアクセストークン(public access token)を埋め込まないといけなくなります。 以下のようなコードを試してみましょう。 <script> mapboxgl.accessToken = undefined var map = new mapboxgl.Map({ container: 'map', style: 'https://tile.openstreetmap.jp/styles/osm-bright-ja/style.json', center: [140, 35], zoom: 8 }
はじめに Unity には Microphone というクラスがあり、これを通じてマイクの情報や入力を取得できます。しかしながら Microphone は WebGL では利用することが出来ません。 docs.unity3d.com Unity では FMOD をオーディオ周りとして利用しているようで、基本的にスレッド上で動くためスレッドが(部分的にしか)利用できない WebGL とは相性がよくなく、結果的に Web Audio API をベースに自前で実装する、という選択をしたようです。その上で多くのオーディオ系 API は再実装されたものの、幾つか Web Audio API との相性が良くないものは利用不可、となっているようです。そして Microphone はごっそり「不対応」となったようですね。 私は uLipSync というリップシンクのためのライブラリを作っていまして、この中
ChatGPTやBardなど、大規模言語モデルをベースに人間と会話できる対話型AIが登場していますが、これらの対話型AIを動作させるには膨大な演算リソースが求められ、通常はAIが動作するサーバーにアクセスする形で対話を可能にしています。Metaが開発した大規模言語モデルのLLaMAをファインチューニングしたVicuna-7Bをベースにした対話型AI「Web LLM」は、ブラウザ上でのGPU演算を可能にするWebGPUを使うことで、サーバーにアクセスすることなくブラウザ上で対話型AIにアクセスできるのが特徴。日本語にも対応しているとのことなので、実際にWeb LLMと日本語で対話してみました。 GitHub - mlc-ai/web-llm: Bringing large-language models and chat to web browsers. Everything runs in
スマートフォンの普及によって、カメラやマイク、位置情報などを用いたコンテンツに誰もがアクセスできるようになりました。さらに近頃では、ビデオ会議が盛んに行われるようになったり、カメラと同期して動くバーチャルアバターで遊ぶ人も増え、デバイスを介した面白いコンテンツがどんどん増えています。 フロントエンドの開発者としても、時流に乗っておもしろコンテンツを作りたい、そんな思いでいっぱいです。そこで、今回の記事ではカメラを用いたウェブコンテンツを作成してみます。今回作成するのは、次のようなブラウザで動くクリエイティブカメラです。 サンプルを別ウインドウで開く コードを確認する 本記事を読むことで、以下の知識が身につきます。 ブラウザからウェブカメラにアクセスする方法 デバイスから取得したデータをブラウザに表示する方法 映像とCanvasを組み合わせたクリエイティブ表現の作り方 ブラウザはもはや、ブラ
本記事は、2022年5月に開催されたTechFeed Conference 2022のセッション書き起こし記事「クリエイティブ系のウェブサイト制作で役立つCSS技法(池田 泰延) — TechFeed Conference 2022講演より」を転載したものです。オリジナルはTechFeedをご覧ください。 みなさんこんにちは、私のほうでは「クリエイティブ系のWebサイト制作で役立つCSS技法」ということで発表していきます。 簡単に自己紹介します。池田泰延といいます。株式会社ICSの代表をやっています。経歴としてはFlashからCanvas、WebGLと渡り歩いてきました。 今日はWebの演出技法にフォーカスして紹介していきたいと思います。 Color Pallet Visualizer ―マテリアルデザインの”色の定義”をデータビジュアライゼーションで解き明かす まずデモを用意してきた
Introduction Modern web technologies enable developers to create clean, yet visually rich, user experiences which are widely supported as standard by all of the major browsers. So, how do you actually go about writing standards-based visualisations for the web…? And what support is there exactly for 3D graphics? Let’s start by reviewing the two main supported approaches in the HTML standard: SVG a
Googleは2022年第一四半期に登場するChromeにおいて、コンピューターグラフィックをレンダリングするために用いられるJavaScript APIを既存のWebGLから後継のWebGPUにアップデートすると発表しています。新たに登場するWebGPUの最大の特徴であるGPUで計算を行う「コンピュートシェーダー」について、フロントエンド開発に焦点を当てたニュースブログのPixels Commanderが解説しています。 WebGPU computations performance in comparison to WebGL | Pixels Commander https://pixelscommander.com/javascript/webgpu-computations-performance-in-comparison-to-webgl/ これまでのブラウザ上で3Dグラフィ
【Three.js入門】初心者がまず見るべきサイト・書籍まとめ 公開日 : 2021.09.03 最終更新日 : 2022.10.05 コーディング Three.jsを勉強しようと思っても簡単なやり方や概念を説明してくれているサイトはたくさんあるけど、実際案件で使用するためにはどうやって勉強していけばよいのか分からない人は多いと思います。 今回はThree.js初級者が中級者になるために見るべきサイトや書籍をまとめました! これら全てを行えば、初心者を脱出出来るでしょう! 【サイト】Three.js入門サイト WebGLやThree.jsのことを調べるまず最初に出てくる池田 泰延:twitterさんが初心者にも分かりやすくThree.jsのことを説明してくれています。 まずはこちらのサイトから勉強を進めてみるのが良いかと思います。 https://ics.media/tutorial-th
WebGPU is an emerging API that provides access to the graphics and computing capabilities of hardware on the web. It’s designed from the ground up within the W3C GPU for the Web group by all major browser vendors, as well as Intel and a few others, guided by the following principles: We are excited to bring WebGPU support to Firefox because it will allow richer and more complex graphics applicatio
~ このエントリは 【カヤック】面白法人グループ Advent Calendar 2023 の22日目の記事です。~ こんにちは!ハイパーカジュアルゲームチームの深澤です。 WebGL2において GPU Instancing でメッシュを大量に表示しつつ、Transform Feedback を使ってインスタンスごとの情報計算もGPUに任せてみたいと思います。 ↓ デモはこちらになります。画像かURLから飛ぶことができます デモ: https://takumifukasawa.github.io/webgl-transform-feedback-gpu-instancing/ ↓ リポジトリのURL github.com メッシュ1つあたりの頂点数は24です。描画色は、インスタンスごとの色をふまえて平行光源の拡散光だけ計算しています。 GPU Instancing を使っていて、ドローコー
この記事は闇の魔術に対する防衛術 Advent Calendar 20192 日目の記事です。 ある日、会社で寿司打というタイピングの速度や正確さを競うゲームが流行った。 みんなやってるので私も挑戦してみたところ、結果は惨敗。全エンジニアの中でもっともスコアが低かった。もともとタイピングが早くも正確でもないことを自覚していたつもりだったが、現実を突きつけられ大人しく家に返って枕を濡らそうと思った。が、あまりの悔しさにまみれ「JSer ならタイピング速度ではなく JS で勝負すればいいんだ」とダークサイドに堕ち闇の力に手を染めてしまった。 本記事はムキになって寿司打(WebGL 版)のスコアを稼ぐ自動化 JavaScript の話。 なお動作確認には Ubuntu 19.04、Google Chrome 80.0.3955.4 を使用した。 寿司打 WebGL 版 http://typing
ここ数年、Qiita上ではもっぱらポエムを生業としつつあります。@emadurandalです。こんにちは。 本記事ではWebGPUのWeb3Dにもたらす意味や効果について語っていこうと思います。とってもポエミーです。よろしくお願いします。 (なお、現時点でのWebGPUでは未対応で、将来的なサポートが議論されている未来の機能を前提にした話もしています) なぜWebGPUが必要とされているのか そもそもなぜ、WebGPUなのでしょうか。別にWebGLのままではいけないのでしょうか。 OpenGLは4.x世代が引き続きアップデートを続けていますし、OpenGL ESも3.x世代がコンピュートシェーダーを獲得するなど進化を続けています。それをベースにWebGL2とかWebGL3とかで順当にアップデートしていけば良いのではないでしょうか? そう思う方も多いでしょう。 しかし世の中を見渡すと、Web
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く