コガネブログ

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

【Unity】光沢のある氷のトゥーンシェーダを実装する

はじめに 上記のサイト様が公開されている 光沢のある氷のトゥーンシェーダの使い方を紹介させていただきます 使い方 上記のスクリプトを「ToonIce.shader」という名前で Unity プロジェクトに追加します そして、このシェーダを適用させたいマテリアルを選…

【Unity】Unity でも使用できる 3D モデルが無料から有料まで数多く配布されている「CGTrader」紹介

はじめに 上記の「cgtrader」では、Unity でも使用できる 3D モデルが 無料から有料まで数多く配布されています 作品一例(引用) 使い方 「3D models」から購入したいモデルのカテゴリを選択します 購入したいモデルを選択します 「Add to cart」や「Buy no…

【Unity】オブジェクトの周りを回転するカメラのスクリプト

ソースコード using UnityEngine; public class CameraAxis : MonoBehaviour { public Transform m_target; public float m_rotateSpeed = 10; private void Update() { transform.RotateAround ( m_target.position, Vector3.up, m_rotateSpeed * Time.delt…

【Unity】CreateAssetMenu attribute on XXXX will be ignored as XXXX is not derived from ScriptableObject.

概要 CreateAssetMenu attribute on XXXX will be ignored as XXXX is not derived from ScriptableObject. UnityEditor.AttributeHelper:ExtractCreateAssetMenuItems(Assembly) ScriptableObject を継承していないクラスに CreateAssetMenu 属性を付与する…

【Unity】Unity エディタを再起動するエディタ拡張

ソースコード 使い方 上記のスクリプトを Unity プロジェクトの「Editor」フォルダに追加すると Unity メニューの「FIle>Restart」から Unity エディタを再起動できるようになります

【Unity】エディタ右下に表示されるプログレスバーをスクリプトから操作する方法

はじめに Unity でライトマップを焼く時などに、右下に表示されるプログレスバーを スクリプトから操作する方法をまとめておきます ソースコード 上記のスクリプトを Unity プロジェクトの「Editor」フォルダに追加します 使い方 // 表示 AsyncProgressBar.D…

【Unity】エディタ拡張でコルーチンが使えるようになる「Editor Coroutines」紹介

概要 2015/1/7 に「Editor Coroutines」がリリースされました 「Editor Coroutines」を導入すると、 エディタ拡張でコルーチンが使えるようになります 検証環境 Unity 2017.1.1f1 Editor Coroutines 1.2 使い方 using EditorCoroutines; using System.Collec…

【Unity】Unity でも使用できるフリーのテクスチャ、モデル、サウンドが配布されている「OpenGameArt.org」紹介

はじめに https://opengameart.org/ 上記の「OpenGameArt.org」では、Unity でも使用できる フリーのテクスチャ、モデル、サウンドが配布されています 使い方 「Browse」を選択して、素材のカテゴリを選びます 一覧の中から好きな素材を選択します 「FILE(s)…

【Unity】Switch、PS4、Vita、Xbox One、Steam、キーボード、マウスの各ボタンやコントローラの PNG・PSD ファイルがセットになった「Controller Button Kits x6」紹介

概要 2016/10/11 に「Controller Button Kits x6」がリリースされました 「Controller Button Kits x6」を導入すると、 Switch、PS4、Vita、Xbox One、Steam、キーボード、マウスの 各ボタンやコントローラの PNG・PSD ファイルが使用できるようになります …

【Unity】Nintendo Switch の Joy-Con のジャイロ・加速度・傾きの値を取得したり、振動させたりすることができる「JoyconLib」紹介

はじめに 以前、Unity で Nintendo Switch の Joy-Con を使用する方法を紹介させていただきました こちらの方法は、特別なプラグインを使用することがないので設定は楽ですが、 ジャイロ・加速度・傾きの値を取得したり、振動させたりすることはできませんで…

【Unity】1日ゲームジャムしたので、作ったゲームと使用した16個のアセットを紹介

はじめに 少し前に「クリック(タップ)だけで遊べるゲーム」をテーマに、1日ゲームジャムをしました この記事では作ったゲームや使用したアセットを紹介していこうと思います 作ったゲーム 下記のページで公開しています https://unityroom.com/games/chick…

【Unity】iOS や MacOS のようなぼかし UI を実装できる「Translucent Image」紹介

概要 2017/3/11 に「Translucent Image」がリリースされました 「Translucent Image」を導入すると、 iOS や MacOS のようなぼかし UI を実装できるようになります 検証環境 Unity 2017.1.1f1 Translucent Image 2.0 デモ 使い方 「Main Camera」に「Translu…

【Unity】Skybox を回転させるコンポーネント

ソースコード using UnityEngine; public class RotateSkyBox : MonoBehaviour { public float m_speed = 0.1f; private float m_rotation; private void Update() { m_rotation += m_speed; if ( 360 <= m_rotation ) { m_rotation -= 360; } var skybox = …

【Unity】クリックされた位置に UI が存在するかどうか判定する方法

ソースコード public bool IsExist() { var current = EventSystem.current; var eventData = new PointerEventData( current ) { position = Input.mousePosition }; var raycastResults = new List<RaycastResult>(); current.RaycastAll( eventData, raycastResults ); v</raycastresult>…

【Unity】Rigidbody を止める方法

rigidbody.velocity = Vector3.zero; rigidbody.angularVelocity = Vector3.zero;

【Unity】ジェットコースターを実装できる「Tracks and Rails」紹介

概要 2015/4/6 に「Tracks and Rails」がリリースされました 「Tracks and Rails」を導入すると、 ジェットコースターを実装できるようになります 検証環境 Unity 2017.1.1f1 Tracks and Rails 13.1.0 デモ http://zenfulcrum.com/track 上記ページの「Play …

【Unity】Inspector で関数を登録してボタンで実行できる「MethodCaller」紹介

はじめに こちらの「Unity Game Framework」に含まれている「MethodCaller」を使用することで Inspector で関数を登録してボタンで実行できるようになります 使い方 ゲームオブジェクトに「MethodCaller」をアタッチして ボタンから実行したい関数を登録して…

【Unity】Inspector の配列やリストの要素は右クリックして複製や削除ができる

GIF アニメ

【Unity】Gmail でメールを送信する

ソースコード 使い方 EmailHandler.SendEmail ( from : "【送信元の gmail アドレス】" , password : "【送信元の gmail パスワード】" , to : "【送信先のメールアドレス】" , subject : "【タイトル】" , body : "【本文】" ); 備考 メールの送信に失敗す…

【Unity】3D テクスチャのプレビューを Inspector に表示できる「Texture3D preview for Unity」紹介

はじめに 「Texture3D preview for Unity」を使用することで 3D テクスチャのプレビューを Inspector に表示できるようになります 導入方法 下記の URL を開きます https://github.com/raphael-ernaelsten/Texture3DPreview-for-Unity/releases 「Texture3DP…

【Unity】シンプルなオブジェクトプールを実現する「Prototype」紹介

はじめに 「Prototype」を使用することで、オブジェクトプールを簡単に実現することができます 使い方 例えば、下記のような自機を管理するクラスと using UnityEngine; public class MyShip : MonoBehaviour { public Prototype m_prototype; private void …

【Unity】単語単位でテキストのフェードインを行う「FadeInTextWordByWord」紹介

はじめに 上記のサイト様で紹介されている「FadeInTextWordByWord」を使用することで 単語単位でテキストのフェードインを行うことができます 使い方 Text に対して「FadeInTextWordByWord」をアタッチして設定することで このように演出を実装できます 単語…

【Unity】コンポーネントを Inspector から Hierarchy にドラッグして別のオブジェクトにアタッチする

概要 コンポーネントを Inspector から Hierarchy にドラッグして 別のオブジェクトにアタッチすることができます 参考ツイート Tired of remove/add components just for reorder the hierarchy?#UnityTips #unity3d #madewithunity pic.twitter.com/K6xzT9…

【Unity】AudioClip の選択ウィンドウでプレビューを再生できる

概要 AudioClip の選択ウィンドウで左下の波形をクリックするとプレビューを再生できます 参考ツイート You can listen to AudioClips when selecting them from inspector! Not the friendliest UI. #unity3d #gamedev #indiedev #unitytips pic.twitter.co…

【Unity】Alt キーを押しながらプレハブをゲームオブジェクトにドラッグすると置き換えることができる

概要 Hierarchy のゲームオブジェクトに向かって Alt キーを押しながらプレハブをドラッグすると、置き換えることができます 参考ツイート Tip: Replace a GameObject in the hierarchy with a prefab by holding Alt while dragging the prefab onto it.Eve…

【Unity】オブジェクトを追従するスクリプト

ソースコード using UnityEngine; public class Example : MonoBehaviour { public Transform m_target = null; public float m_speed = 5; public float m_attenuation = 0.5f; private Vector3 m_velocity; private void Update() { m_velocity += ( m_tar…

【Unity】指定された名前のシーンを読み込むことができる場合 true を返す関数

ソースコード using System.IO; using System.Linq; using UnityEngine.SceneManagement; public static class Utils { public static bool CanLoadScene( string sceneName ) { return Enumerable .Range( 0, SceneManager.sceneCountInBuildSettings ) .Se…

【Unity】Unity 再生中に編集した内容を再生終了後も保持する「Save Play Mode Changes in Unity」紹介

はじめに 「Save Play Mode Changes in Unity」を使用することで Unity 再生中に編集した内容を再生終了後も保持することができます 使い方 編集内容を保持しておきたいゲームオブジェクトに 「SavePlayModeChanges」コンポーネントをアタッチします これで…

【Unity】静的解析を行うツール「UnityEngineAnalyzer」紹介

はじめに 「UnityEngineAnalyzer」を使用することで Unity プロジェクトの静的解析を行うことができます 使い方 下記のページを開きます https://github.com/vad710/UnityEngineAnalyzer/releases 「UnityEngineAnalyzer-Alpha-5.zip」を選択します ダウンロ…

【Unity】プレハブを専用の Scene ビューで編集できるエディタ拡張「EditPrefab.cs」紹介

はじめに Wrote a small editor script for better prefab editing. #unitytips pic.twitter.com/Nqq4a6Fh6c— Ulrik Flænø Damm (@ulrikdamm) 2017年10月18日 「EditPrefab.cs」を Unity プロジェクトに導入することで 上記のツイートの様に、プレハブを専用…