Skip to content

Instantly share code, notes, and snippets.

View TakaakiIchijo's full-sized avatar

Takaaki Ichijo TakaakiIchijo

View GitHub Profile
@TakaakiIchijo
TakaakiIchijo / FontTextureFilterModeToPointImportSetting.cs
Last active September 23, 2019 02:44
ピクセルアート系ゲームなどでフォントファイルのテクスチャをパキッとするEditor処理(フィルタモードをBilinearからPointにする)
using UnityEngine;
using UnityEditor;
public class FontTextureFilterModeToPointImportSetting : AssetPostprocessor
{
//このパスに対象のフォントファイルを入れる//
private static readonly string FontAssetPath = "Assets/Fonts";
static void OnPostprocessAllAssets(
string[] importedAssets,
@TakaakiIchijo
TakaakiIchijo / WaveFileCreator.cs
Last active January 27, 2020 15:07
LRに分かれたビットストリームを入れていくとWaveファイルが保存できるスクリプト
using System;
using System.IO;
using System.Text;
public class WaveFileCreator
{
private int numChannels = 2;
private int samplingRate = 44100;
private int numbites = 16;
@TakaakiIchijo
TakaakiIchijo / CriAtomRecoder.cs
Last active January 28, 2020 02:33
ADX2の出力音声をwaveファイルで保存するスクリプト 要 WaveFileCreator.cs
using System;
using System.Collections;
using System.IO;
using UnityEngine;
public class CriAtomRecoder: MonoBehaviour
{
private WaveFileCreator waveFileCreator;
public string fileName = "recordedaudio";
public const string Wavext = ".wav";
@TakaakiIchijo
TakaakiIchijo / ADX2ExtensionsTask.cs
Created November 26, 2019 07:59
ADX2のキューシートロードをasync/awaitで呼ぶやつ
public static class ADX2ExtensionsTask
{
public static Task<CriAtomCueSheet> ToTask(this CriAtomCueSheet cueSheet, CancellationToken ct = default)
{
var tcs = new TaskCompletionSource<CriAtomCueSheet>();
if (ct != CancellationToken.None)
{
ct.Register(() => tcs.TrySetCanceled(ct));
}
@TakaakiIchijo
TakaakiIchijo / CriAtomDotweenExtension.cs
Last active February 13, 2022 09:36
DOTweenでADX2の制御をするための拡張
using System;
using DG.Tweening.Core;
using DG.Tweening.Plugins.Options;
using UnityEngine;
namespace DG.Tweening
{
public static class CriAtomDotweenExtension
{
#region AtomCraft
@TakaakiIchijo
TakaakiIchijo / ADX2ExtensionsTask.cs
Last active March 20, 2020 03:53
UniTaskを使ってADX2のキューシートロードをawaitしてCriAtomCueSheetを戻り値で返してくれるやつ
using UniRx.Async;
public static class ADX2ExtensionsTask
{
public static UniTask<CriAtomCueSheet>.Awaiter GetAwaiter(this CriAtomCueSheet cueSheet)
{
UniTask<CriAtomCueSheet> task = new UniTask<CriAtomCueSheet>(async ()=>
{
await UniTask.WaitWhile(() => cueSheet.IsLoading);
return cueSheet;
@TakaakiIchijo
TakaakiIchijo / CriWareAcbConverter.cs
Created April 7, 2020 06:26
ADX2のACBファイルからキューシート名とキュー名のConstクラスを生成するスクリプト
using System.Collections.Generic;
using System.IO;
using System.Text;
using UnityEngine;
using UnityEditor;
public class CriWareAcbConverter : Editor
{
private static CriAtomWindowInfo projInfo = new CriAtomWindowInfo();
private static string exportPath = Application.dataPath + "/CueDataConstants.cs";
@TakaakiIchijo
TakaakiIchijo / DownloadAcbFromUnityCCD.cs
Created October 7, 2021 09:30
ADX for UnityのacbファイルをUnity Cloud Content Deliveryからダウンロード
public class DownloadAcbFromUnityCCD : MonoBehaviour
{
public CriAtomSource atomSource;
public string cueSheetName = {cuesheet name};
public string cueName = {cue name};
public string addressableRemotePathUrl = {Addressable Remote Path Url};
private IEnumerator Start()
{
var request = UnityWebRequest.Get(addressableRemotePathUrl+cueSheetName+".acb");
@TakaakiIchijo
TakaakiIchijo / UnlockHideFlags.cs
Last active November 13, 2021 14:58
Unity EditorでHideFlagsつけたアセットをアンロックする右クリックメニュー拡張
public class SomeClass
{
[MenuItem("Assets/UnlockHideFlags")]
public static void UnlockHideFlags()
{
var selected = Selection.objects[0];
string targetPath = AssetDatabase.GetAssetPath(selected);
var asset = AssetDatabase.LoadAssetAtPath<Object>(targetPath);
EditorUtility.SetDirty(asset);
@TakaakiIchijo
TakaakiIchijo / CriWareGameViewMuteButton.cs
Last active January 8, 2024 02:43
Enable the mute button on Game View when uses CRI ADX in Unity
using CriWare;
using UnityEditor;
[InitializeOnLoadAttribute]
public class CriWareGameViewMuteButton
{
private static bool isAudioMute = false;
static CriWareGameViewMuteButton()
{