Skip to content

Instantly share code, notes, and snippets.

@sapphire-al2o3
sapphire-al2o3 / PrintProfilerCpuUsage.cs
Last active February 7, 2024 13:51
UnityでプロファイラーのCPU表示で選択している行以下のデータをコピーする(Unity2022.3)
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEditor;
using UnityEditorInternal;
using UnityEditor.Profiling;
using System.Text;
public class PrintProfilerCpuUsage
{
@sapphire-al2o3
sapphire-al2o3 / charArrayToStr.cs
Created June 28, 2022 02:05
C#でnull文字入りの文字配列を文字列にする
using System;
char[] text = { 'a', 'b', '\0', 'c', 'd' };
int length = 0;
for (int i = 0; i < text.Length; i++)
{
if (text[i] == '\0')
{
length = i;
@sapphire-al2o3
sapphire-al2o3 / DefaultInitCollection.cs
Created September 30, 2021 14:03
Listをデフォルト値で初期化する
using System;
using System.Collections;
using System.Collections.Generic;
List<int> list = new List<int>(new DefaultInitCollection(10));
foreach (var e in list)
{
Console.WriteLine(e);
}
@sapphire-al2o3
sapphire-al2o3 / ProfilerText.cs
Last active January 27, 2024 15:11
UnityでプロファイラーのCPU表示で選択している行をコピーする(Unity2018.4)
using UnityEngine;
using UnityEditor;
using UnityEditorInternal;
using UnityEditorInternal.Profiling;
public class ProfilerText : Editor
{
[MenuItem("Editor/Print Profiler Text")]
static void Print()
{
@sapphire-al2o3
sapphire-al2o3 / ParseCSV.cs
Created January 29, 2021 07:16
カンマ区切りの数字をパースして配列を返す
public static int[] ParseCSV(string t)
{
if (t.IndexOf(',') == -1)
{
return new int[] { int.Parse(t) };
}
int count = 0;
for (int i = 0; i < t.Length; i++)
{
if (t[i] == ',')
@sapphire-al2o3
sapphire-al2o3 / ParseInt.cs
Created January 29, 2021 01:45
部分文字列から数値をパースする
static int ParseInt(string t, int s, int l)
{
if (string.IsNullOrEmpty(t))
{
return 0;
}
if (s + l > t.Length)
{
l = t.Length - s;
@sapphire-al2o3
sapphire-al2o3 / IntToStringUtil.cs
Last active October 22, 2020 02:20
int.ToString("0000")の置き換え
public static class IntToStringUtil
{
public static string Padding0(int n, int d)
{
char[] c = new char[n < 0 ? d + 1 : d];
int s = 0;
if (n < 0)
{
c[0] = '-';
n *= -1;
@sapphire-al2o3
sapphire-al2o3 / StringBuilderUtil.cs
Created October 6, 2020 03:27
StringBuilderでintをAppendしたときにToStringされる環境用
public static class StringBuilderUtil
{
public static void AppendInt(System.Text.StringBuilder sb, int value)
{
int n = value;
if (n < 0)
{
sb.Append('-');
n *= -1;
}
@sapphire-al2o3
sapphire-al2o3 / AnimationEventView.cs
Created September 8, 2020 08:40
UnityでAnimationClipに設定されているAnimationEventの一覧を表示する
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEditor;
public class AnimationEventView : EditorWindow
{
[MenuItem("Editor/Animation Event View")]
public static void Open()
{
@sapphire-al2o3
sapphire-al2o3 / DownloadTextureTest.cs
Last active January 23, 2020 02:14
UnityWebRequestTexture.GetTexture使ったときにテクスチャがリークするパターン
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.Networking;
public class DownloadTextureTest : MonoBehaviour
{
[SerializeField]
string url1 = null;
[SerializeField]