【Unity】インポートした画像にアルファがどうかあるか見て、それぞれフォーマと変えたい場合とかね。
こんにちは。
大坂です。
昨日今日と何となく過ごしやすい気がします。
風が涼しい感じです。
ハクスラは作っていって、「あ、やっぱりこんなのも」っていうのがやっぱり出てくるのでどんどん大変になっていきますね。
色々やばそうっすね。(特に戦闘がやばそうっすね。
何となくドロップアイテムを生成したり、装備したりするところは作れてきたような、そうでもないような(ぇ
とりあえずあーでもないこーでもないという感じで少しずつ進んでます。
今日もネタがないですが、少しだけ。
いつのころかUnityで画像のデフォルト圧縮がETCになってますが、まぁそれぞれのOSで分けたい場合とかね。
画面で1個1個変えられるんですが、毎回変えるのが面倒なのでプログラムでやろうねって話です。
Editorフォルダにこんなのぶっこんでおけば画像入れると勝手にやってくれるようになります。
すでに入ってる画像はReimportしてあげてください。
細かい設定は自分で設定したいものに変更してくださいね。
なんか無駄に長いですが…
まぁこんな感じで設定自体はできますね。
何かに使うのか使わないのか(ぇ
まぁこんな感じで今日も適当ですが終わりです。
またノシ
大坂です。
昨日今日と何となく過ごしやすい気がします。
風が涼しい感じです。
ハクスラは作っていって、「あ、やっぱりこんなのも」っていうのがやっぱり出てくるのでどんどん大変になっていきますね。
色々やばそうっすね。(特に戦闘がやばそうっすね。
何となくドロップアイテムを生成したり、装備したりするところは作れてきたような、そうでもないような(ぇ
とりあえずあーでもないこーでもないという感じで少しずつ進んでます。
今日もネタがないですが、少しだけ。
いつのころかUnityで画像のデフォルト圧縮がETCになってますが、まぁそれぞれのOSで分けたい場合とかね。
画面で1個1個変えられるんですが、毎回変えるのが面倒なのでプログラムでやろうねって話です。
Editorフォルダにこんなのぶっこんでおけば画像入れると勝手にやってくれるようになります。
すでに入ってる画像はReimportしてあげてください。
細かい設定は自分で設定したいものに変更してくださいね。
using UnityEngine;
using UnityEditor;
public class TextureFormatter : AssetPostprocessor {
int maxSize = 2048;
private void OnPreprocessTexture() {
TextureImporter impoter = assetImporter as TextureImporter;
// アルファの取得
bool isAlpha = impoter.DoesSourceTextureHaveAlpha();
// Android_アルファありの設定
TextureImporterPlatformSettings andSettingAlpha = new TextureImporterPlatformSettings();
andSettingAlpha.overridden = true;
andSettingAlpha.name = "Android";
andSettingAlpha.maxTextureSize = maxSize;
andSettingAlpha.format = TextureImporterFormat.DXT5;
// Android_アルファなしの設定
TextureImporterPlatformSettings andSettingNoAlpha = new TextureImporterPlatformSettings();
andSettingNoAlpha.overridden = true;
andSettingNoAlpha.name = "Android";
andSettingNoAlpha.maxTextureSize = maxSize;
andSettingAlpha.format = TextureImporterFormat.DXT1;
// ios_アルファありの設定
TextureImporterPlatformSettings iosSettingAlpha = new TextureImporterPlatformSettings();
iosSettingAlpha.overridden = true;
iosSettingAlpha.name = "iPhone";
iosSettingAlpha.maxTextureSize = maxSize;
iosSettingAlpha.format = TextureImporterFormat.PVRTC_RGBA4;
// ios_アルファなしの設定
TextureImporterPlatformSettings iosSettingNoAlpha = new TextureImporterPlatformSettings();
iosSettingNoAlpha.overridden = true;
iosSettingNoAlpha.name = "iPhone";
iosSettingNoAlpha.maxTextureSize = maxSize;
iosSettingNoAlpha.format = TextureImporterFormat.PVRTC_RGB4;
if(isAlpha) {
// アルファあり
impoter.SetPlatformTextureSettings(andSettingAlpha);
impoter.SetPlatformTextureSettings(iosSettingAlpha);
} else {
// アルファなし
impoter.SetPlatformTextureSettings(andSettingNoAlpha);
impoter.SetPlatformTextureSettings(iosSettingNoAlpha);
}
}
}
なんか無駄に長いですが…
まぁこんな感じで設定自体はできますね。
何かに使うのか使わないのか(ぇ
まぁこんな感じで今日も適当ですが終わりです。
またノシ
Category: Androidアプリ紹介
« 【ハルシオンブログ】今年のアプリ界隈のでかい飲みも終わったし、開発はじめまそ。あswitch文ってありますよね・・・ | 【ハルシオンブログ】アプリ開発者のでっかい飲みがありますねって話と、Unityで簡単に動画がつかえるねって話。 »
コメント
| h o m e |