テラシュールブログ

旧テラシュールウェアブログUnity記事。主にUnityのTipsやAR・VR、ニコニコ動画についてのメモを残します。

AssetBundle

【Unity】SpritePackerとAssetBundleについて

今回はSpritePackerとAssetBundleの挙動について少しメモします。 SpritePackerとAssetBundleといふ便利機能 SpritePackerでパックしたテクスチャアトラスはAssetBundleに自動的に組み込まれる SpritePackerでパックしたテクスチャアトラスの部分組込は出来…

【Unity】Unity 5.3からAssetBundleはどう変わるのか…まとめ

この記事は Unity 2 Advent Calendar 2015 の16日目の記事です。14日めはookumaneko_XDさんでUnityで学ぶシーングラフ入門の入門モドキです。 今回はUnity 5でAssetBundle周りがどう変わったのか、Unity 5.3からどう変わったのかについて書いていこうと思い…

【Unity】AssetBundleからMultiple Spriteに含まれるスプライトを取得する方法とその周辺

今回はAssetBundleの中に格納したMultiple Spriteから特定のスプライトを取得する方法と、その挙動についてです。 Multiple Spriteの取得方法について AssetBundle.LoadAllAssetsでは駄目 AssetBundle.LoadAssetWithSubAssets 不要なスプライトの破棄 特定の…

【Unity】AssetBundleManagerで「AssetBundleからSceneをロード」する

今回はAssetBundleにSceneを格納し、ロードする手法について紹介します。 上手く使うと、ステージの読み込みやローカライズしたUIの表示等に使えそうです。 目次 目次 AssetBundleの新しいサンプル、AssetBundleManager AssetBundleManagerを構築はフォルダ…

UNITY5の地味だけど現場で 役に立つ新機能紹介 & 拡充されるクラウドサービス(あとサヨナラ配管工おじさん)

UNITY5の地味だけど現場で 役に立つ新機能紹介 & 拡充されるクラウドサービス from MakotoItoh UNITY5の地味だけど現場で 役に立つ新機能紹介 & 拡充されるクラウドサービス 新しいAssetbundleとか、フレームデバッガについて書かれてます。 あとWebサービス…

ビルド後のiPhone/Androidゲームにステージを追加する簡単な方法

意外と知られていないTips。実はBuildStreamedSceneAssetBundleを使えば、AssetBundleをシーン単位で構築することが出来る。これで構築したAssetBundleを読み込んだ後は、LoadLevelやLoadLevelAditiveでダウンロードしてきたシーンを読み込める。BuildPipeli…

Unityでテクスチャを読む7つの方法 4・5・6について

[Unity]Unityでテクスチャを読む7つの方法 の4,5,6について。1. モデルのマテリアルにTextureを貼っつけてシーンに配置 2. Resourcesにファイルを配置し、Resources.Load 3. AssetBundleにテクスチャを格納し、bundle.Load 4. WWWからテクスチャをダウンロー…

Unityでテクスチャを読む7つの方法

Unityでテクスチャを読む方法は実は複数ある。代表的なのが、モデルにテクスチャを参照しているマテリアルを登録する方法。これで、読むことを意識せず勝手にTexture2Dを読んでくれる。ただ、状況によって(特にGUIゲーム)ランタイムで読み込みたい場合も多…

AssetBundle と TextureCompression のおはなし

基本的な、でも大事な話。 AssetBundle と TextureCompression のおはなし from Tetsuya Mori そういえばNGUIのAtlasって参照があるから、Assetbundleから差し替えようと思えば差替えられるのか。(テクスチャを直接差替えてた) 関係資料 [Unity]iOS/Androi…

AssetBundleとシェーダー、ロードが遅い場合の対策

またまた素晴らしい資料が公開されてた。アセットバンドルとシェーダー内容はAssetBundleを使用した際に非常に大きなローディングがかかる場合の原因と対策。大雑把に言えばこんな感じ。シェーダーのビルドはランタイム。しかも重い。 (シェーダーのビルド…

プラットフォーム切替時にbundleIdentifierを変更する

プラットフォームが切り替わった際にbundleIdentifierを差し替えるサンプル。やってる事は簡単で、[InitializeOnLoad]で自動的にインスタンス化する現在のプラットフォームを確認してbundleIdentifierを変える処理を定義EditorUserBuildSettings.activeBuild…

アプリサイズを減らす その3

アプリサイズを減らす その2で紹介した方法(StreamingAssetsに配置する)だが、どうやらAndroidでは若干安定度に難がある。で、もう少し良い方法を思いついた。[Unity3D]iosアプリサイズを節約する http://tsubakit1.hateblo.jp/entry/20120512/1336773155…

AssetBundleをローカルに保存してロードする

assetbundle_test https://github.com/tsubaki/assetbundle_test/tree/master/Assets AssetBundleのファイルをダウンロードしてきてファイルを更新するデモ。 Load1とLoad2でファイルをダウンロードして更新、Load Textureでファイルをロードするだけ。 Load…

ダウンロードしたAssetbundleが更新されない場合の対処

Web上のAssetBundle(.unity3dファイル)を更新しても、ダウンロード時にAssetBundleが更新されていない場合がある。これはOSもしくはサーバー側にキャッシュが残っている為で、キャッシュがある限り高速化の為キャッシュからファイルを取得しようとしてしま…

同じリソースから作成されるAssetBundleを毎回同じバイナリになるようにする方法

ちょっとリクエストされたので、AssetBundleに関するトピック。同じリソースから作成されるAssetBundleを毎回同じバイナリになるようにする方法について。 ジェンキンス等でAssetBundle作ってる場合は有効かもしれない。大体以下の設定で作ったAssetBundleは…

AssetBundleの管理について

前回の続き tsubakit1.hateblo.jp先日AssetBundleのキャッシュは150日しか維持出来ない事を書いた所、何やら反応があったので少し補足しておこうと思う。ちなみにキャッシュが消される原因はコレ。Caching.expirationDelay http://docs.unity3d.com/Document…

テクスチャの暗号化

テクスチャの暗号化について、面白いアプローチがあったので紹介。これは、適当なテクスチャに難読化処理をかけたもの。左がエンコードした画像、右がデコードした画像になる。単純にカードを隠したい場合にはそれ程有効ではないが、カードの絵柄を隠したい…

Uniteセッション「ネイティブアプリ時代の ローカルデータ管理入門」の補足

先日自分が担当したUniteのセッション「ローカルデータ管理入門」について、上手く説明出来なかったと思うので補足しておこうと思う。「webデータを取得しよう」の補足この部分は、単純にjsonを使うのを止めて欲しかった。 理由は単純で、実行速度・消費メモ…

Basic環境でもDLCしたい(使い方)

この記事は以前紹介したDLCをBasic環境でも使えるようにするための機能について。 tsubakit1.hateblo.jpパッケージ https://dl.dropbox.com/u/56297224/UnitySumple2/download%20assets.unitypackage今回は使い方について。■プレハブの準備まずはダウンロー…

Basic環境でもDLCしたい

これは簡単に言えば、サーバーからダウンロードしたファイルをキャッシュし、以降はそのファイルを使うといった操作を簡単に行えるようにした物。 要するにダウンロードコンテンツ。 一度キャッシュしたものは、以降はオフラインで使用できるパッケージ http…