この記事はUnity Advent Calendar 2024 12/3の記事です この記事について この記事では最近公開されたUnity6のVFXGraphがWebビルド対応をしたとのことで、VFXGraphのサンプルエフェクトをWebビルドすることを目的としています 先に伝えると、ProjectSettingの「webGLEnableWebGPU」の設定でほとんどの方が躓くと思うので、もしVFXGraphsをWebビルドで出力する予定がある方は確認をおすすめします VFXGraphとは Visual Effect Graph(VFX Graph)はノードベースのビジュアルエフェクトエディターです。 旧来のパーティクルエディタである Particle System と使用すべき用途は似ていますが、大きな違いはシミュレーションにGPUを使っており、大量のパーティクルの複雑な処理を高速で行う
WebGL環境でHLS形式の動画を再生する方法を探しているの。 HLS対応ブラウザならVideoPlayerでそのまま再生できるわ。それ以外ではhls.jsなどのライブラリが必要になるわ。 WebGLのビルド環境でHLS(HTTP Live Streaming)形式の動画を再生する方法の解説記事です。 Safariなどの一部のブラウザではHLS形式が標準でサポートされており、Unity標準のVideoPlayerコンポーネントでそのまま再生可能です。 しかし、執筆時点では非対応ブラウザが多数存在し、再生には別途対策が必要です。 参考:“hls” | Can I use… Support tables for HTML5, CSS3, etc WebGL環境限定となりますが、hls.jsというライブラリを使用することでHLS非対応ブラウザでのHLS動画の再生に対応できます。 GitHub –
Unity 6 では Web プラットフォーム(Web ブラウザ)のサポートが強化されています。この動画では、注目のポイントや、オススメの設定方法などについて解説します。 リファレンスマニュアル:Web プラットフォーム https://docs.unity3d.com/Manual/webgl.html WebGPU についての公式スレッド https://discussions.unity.com/t/early-access-to-the-new-webgpu-backend-in-unity-2023-3/933493 WebGPU サンプルビルド集 https://www.keijiro.tokyo/WebGPU-Test/ 0:00 イントロ 0:14 名前の変更について 0:56 モバイル対応 1:51 WebGPU 対応 5:05 非対応機能について 6:26 最適
var WebNativeDialog = { NativeDialogPrompt: function (title, defaultValue) { defaultValue = UTF8ToString(defaultValue); title = UTF8ToString(title); var result = window.prompt(title, defaultValue); if (!result) { result = defaultValue; } var buffer = _malloc(lengthBytesUTF8(result) + 1); stringToUTF8(result, buffer, lengthBytesUTF8(result) + 1); return buffer; }, SetupOverlayDialogHtml: function (
Unity標準のVideoPlayerを使わずにWebGLで動画再生する処理を自作したいの。 標準のVideoPlayerの内部実装を参考に自作する方法を見ていくね。 WebGL環境において、Unity標準のVideoPlayerのような動画再生機能を自作する方法の解説記事です。 次のような動画再生をjslibプラグインでネイティブ実装して実現するところを目指します。 Unityでは、動画再生機能はVideoPlayerコンポーネントとして提供されており、WebGL含めたあらゆるプラットフォームでの再生が可能です。 参考:Unity – Scripting API: VideoPlayer 通常の動画再生であれば、Unity標準のVideoPlayerコンポーネントで事足りる場面も多いと考えられますが、動画再生をネイティブ実装することで次のようなことが期待できるかもしれません。 ネイティブ
visionOS 1 系だった人は visionOS 2.0 にアップデートが完了したタイミングから自動的に WebXR Device API が有効化されているので、アップデート直後に WebXR Device API が有効化されていなければ動作しない WebXR Samples の Immersive VR Session にアクセスしたとしても、正常に動作します。 visionOS 1 系の Safari on Vision Pro で WebXR Device API が動作するだけでも “待ちに待った” 状況でしたが、ユーザー自身による変更が必要である以上はまだ “当たり前” とは言い切れませんでした。しかし visionOS 2.0 で有効化されていることが標準的な状態となったため、Safari on Vision Pro にとっての WebXR は “当たり前” と言っても
Introducing Niantic Studio: The Future of Web-Based XR and 3D Content CreationBuild immersive XR, 3D experiences, and casual web games with the public beta of our new visual editor and powerful web gaming engine—now available for free. Today, we’re excited to announce Niantic Studio, a new visual editor and web gaming engine for Niantic 8th Wall developers that offers an entirely new way to build
こんにちは、ミラティブ菅谷です。MirrativのWebGL製ライブゲームにて、アセットのロード方法をインスペクタでの直接参照からAddressable Asset System(以下Addressable)に変更したことで、クラッシュ率が大幅に改善し、クラッシュせずにプレイが終了した「正常プレイ率」は98%まで改善しました。本記事では、その具体的な手順と効果について紹介します。 課題背景 MirrativのライブゲームはWebGLで動いていますが、特にモバイルのWebGLではパフォーマンスに気をつける必要があります。今回改善を行ったプロジェクトではもともとAddressableを使用していませんでした。プロジェクトの初期リリース時点では大きな問題もなく運用できていましたが、アセットやリソースを追加していくにつれてクラッシュが多く見られるようになりました。ただし、WebGLではクラッシュし
Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article? はじめに モバイルは正式対応してないWebGLですが、やらなきゃならないときが来たので、無理やり対応する所存です ちなみに、正式対応は次のUnity6バージョンからだそうです WebGLでの日本語入力 日本語が表示されない問題 Unityのデフォルトのフォントだと表示されないので、商用利用可能な日本語対応フォントを適用する必要があります WebGLInputというプラグインを導入する モバイル端末であれば、デフォルトの状態でも日本語入力できますが、PC端末だと日本語入力ができません そこで、以下のプラグインを利用して対応します ですが、
Webブラウザで3Dモデルを高速に描画する「Babylon.js 7.0」正式リリース。MMD(MikuMikuDance)やApple Vision Proサポート Webブラウザで3Dモデルを高速に描画する「Babylon.js 7.0」正式リリース。MMD(MikuMikuDance)やApple Vision Pro、WebXRなどをサポートし、よりリアルなレンダリングを実現する機能追加も行われた。 マイクロソフトは、Webブラウザ上で2Dや3Dモデルの高速なレンダリングなどを可能にするオープンソースのJavaScriptライブラリ「Babylon.js」の最新版「Babylon.js 7.0」正式版をリリースしました。 We are proud to announce that Babylon.js 7.0 has officially been released! The ne
こんにちは、エンジニアのちぎら(@_naru_jpn)です。ミラティブでは、配信中のゲームに視聴者が介入できるゲームとライブ配信が融合した次世代のゲーム体験を提供しており、この体験を ライブゲーミング と呼んでいます。 ライブゲーミングは、Unity から WebGL 向けにビルドされた WebAssembly 製のゲームを、アプリに配置したウェブブラウザ上で動作させることによって実現しています。*1 今回は UnityでモバイルWebGLゲーム開発を頑張る話 の「メモリリークによって発生するクラッシュ」にも書かれているような、捕捉は難しいがユーザー影響があるような例外の発生を捕捉して、計測をするための仕組み作りについて解説をします。 ライブゲームが動作する仕組み 例外を捕捉することを考える前に、ライブゲームがどのように動作しているのかを知る必要があります。 Unity の WebGL 向
はじめに GitHub Pages を使ってサイトを公開する方法を共著で記事を書いた。 この記事を作るためにいろいろ調べていたとき「Unity で作ったちょっとしたものをどうやってデプロイするのか」という話が出てきたので、やってみた。 イメージがわかるように以下に成果物としてページリンクを貼っておく。 なお、GitHub Pages を使って公開する方法は冒頭に載せた二つの記事を参考にするか、調べてみてほしい。 Unity で作った WebGL のアプリをどうやって React で扱うか ありがたいことに React Unity WebGL という神ツールがすでにあるのでこれを使う。 package.jsonと同じ階層にpublicディレクトリを作り、そこに Unity からビルドしたファイル群を入れる。あとはpublicディレクトリ以降のパスを React Unity WebGL 側に渡
この記事は「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つのゲームを作り上げます。 限られた作業時間
この記事は Unity Advent Calendar 2023 シリーズ 2 14日目の記事です。 はじめに ちょっとした小ネタです。 Unity では、ご存じの通り Web ブラウザ向けにアプリケーションをビルドすることが可能ですが、実際に開発するとなると色々と気を付けなければいけないことが出てきます。 今回はその中でも WebSocket を使う場合どうすれば良いか紹介します。 何が問題か 通常、 Web ブラウザ上では、生のソケットの API を直接利用することはできません。 つまり、ブラウザが提供している API から利用可能な通信プロトコルのみ使用することができます。 Unity の WebGL ビルドでは、 Emscripten を使用して WebAssembly の実行ファイルを生成します。 このとき、 Unity でサポートされている通信ライブラリは UnityWebRe
はじめに この記事はHIKKYアドベントカレンダー2023の10日目の記事です。 こんにちは、 @emadurandal と申します。HIKKYのエンジン開発部でメタバースエンジンの開発に従事しています。 今回は、WebGLからWebGPUへのステップアップについての記事を書いてみようと思います。 なぜWebGPUが登場したのか WebGLはOpenGL ESのAPI体系をブラウザに移植したものです。 そのOpenGLですが、歴史的経緯により、GPUやCPUの性能を完全に引き出しきれないレガシーな部分を引きずっていました。 詳しくはこちらの記事をご覧ください。 そのため、WebGL2の次はWebGL3というわけにはいかなかったようです。 よりGPUの性能を引き出せる、よりモダンなAPI体系が必要でした。ネイティブにはVulkan APIがありますが、それをそのままブラウザに持ってくるには、
目次 目次 はじめに 変換の流れ HLSL→SPIR-V SPIR-V→WGSL 環境構築 DirectX Shader Compiler(DXC) Tint depot-toolsのインストール Tintのビルド Tintのインストール 変換をする HLSL→SPIR-V(DXCを使用) SPIR-V→WGSL(Tintを使用) おわりに 参考にしたもの はじめに DirectX向けにHLSL言語で書かれたシェーダプログラムを、WebGPUで使えるWGSLへと変換してみる記事です。 いわゆるトランスパイルというやつです。 実験してみたものの、すぐに忘れそうなので備忘録を兼ねて記事にしておきます。 SPIR-VとTintを使います。(詳細は後述) 余談ですが、WebGPUについて、C++でブラウザ向けに使う入門記事を先日書いたので、試してみたい方はぜひご参照ください。 zenn.dev ま
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く