コガネブログ

平日更新を目標に Unity や C#、Visual Studio、ReSharper などのゲーム開発アレコレを書いていきます

2018-02-26から1日間の記事一覧

【Unity】Texture を Texture2D に変換する拡張メソッド

ソースコード using UnityEngine; public static class TextureExt { public static Texture2D ToTexture2D( this Texture self ) { var sw = self.width; var sh = self.height; var format = TextureFormat.RGBA32; var result = new Texture2D( sw, sh, f…

【Unity】Texture2D を PNG ファイルで保存する方法

ソースコード using UnityEditor; using System.IO; ... Texture2D tex = ...; var png = tex.EncodeToPNG(); File.WriteAllBytes( path, png ); 参考サイト様 http://ft-lab.ne.jp/cgi-bin-unity/wiki.cgi?page=unity_script_texture2d_save_png_file

【Unity】エディタ拡張でウィンドウのタブを右クリックした時に表示されるメニューに項目を追加する方法

はじめに エディタ拡張で、ウィンドウのタブを右クリックした時に表示されるメニューに 項目を追加したい場合は「IHasCustomMenu」インターフェイスを使用して、 「AddItemsToMenu」関数を定義します 使用例 using UnityEditor; using UnityEngine; public c…

【Unity】お題「当てる」の unity1week にて、スコアランキング搭載のシンプルゲーム「カラコリ」を公開しました

はじめに https://unityroom.com/unity1weeks 2/19から2/25に開催された、お題「当てる」の unity1week に参加しました 作ったゲーム 下記のページで公開しています https://unityroom.com/games/caracori/webgl タイトルは「カラコリ」で、 クリックで色を…

【Unity】エディタ拡張でスクリプトのファイルパスを取得する方法

概要 例えば、エディタ拡張において、 上記の「Example.cs」ファイルのパスを取得したい場合 using UnityEditor; public class Example : EditorWindow { [MenuItem( "Window/Example" )] private static void Init() { var window = GetWindow<Example>(); } private</example>…

【Unity】uGUI のオブジェクトの色や透明度をフェードさせる関数「CrossFadeAlpha」「CrossFadeColor」

はじめに 「CrossFadeAlpha」「CrossFadeColor」を使用することで uGUI のオブジェクトの色や透明度をフェードさせることができます 使用例 using UnityEngine; using UnityEngine.UI; public class Example : MonoBehaviour { public Image m_image; privat…

【Unity】Unity のコンポーネントのアイコンを取得できる「EditorGUIUtility.ObjectContent」

はじめに var type = typeof( GameObject ); var content = EditorGUIUtility.ObjectContent( null, type ) var image = content.image; 「EditorGUIUtility.ObjectContent」を使用することで Unity のコンポーネントのアイコンを取得できます 使用例 using …

【Unity】SpriteRenderer の透明度を設定できる拡張メソッド

ソースコード using UnityEngine; public static class SpriteRendererExt { public static void SetAlpha( this SpriteRenderer self, float alpha ) { var color = self.color; color.a = alpha; self.color = color; } } 使用例 var renderer = GetCompon…

【Unity】uGUI の Image や Text の透明度を設定できる拡張メソッド

ソースコード using UnityEngine.UI; public static class GraphicExt { public static void SetAlpha( this Graphic self, float alpha ) { var color = self.color; color.a = alpha; self.color = color; } } 使用例 var image = GetComponent<Image>(); image.S</image>…