Google スプレッドシートでタスク管理/シートの作成1(タスクの記載)
以下の記事の「シートの作成1(タスクの記載)」
yasuaki-ohama.hatenablog.com
準備
以下のデータを複製する
Google スプレッドシートでタスク管理/シートの作成0(基礎知識) - Google スプレッドシート
複製方法は以下の「別のシートに複製」を参考
Google スプレッドシートでタスク管理/シートの作成0(基礎知識) - yasuakiのめげないゲーム開発
目次
「状態」の各セルの色を文字によって自動で変更
- 「完了」を緑色にする
- 「未着手」を赤色にする
- 「完了」と「中断」の行を灰色にする
プルダウンメニューの作成
- セルをクリックすると「完了,作業中,未着手,中断」の中から文字を選択できるようにする
フィルタ
- フィルタを作成
- 「完了」と「中断」を非表示にする
- 行が増えた時の対応
「状態」の各行の色を文字によって自動で変更
状態によって以下のように自動で色分けできるように設定を行う
状態 | 色 |
---|---|
完了 | 緑色 |
作業中 | 黄色 |
未着手 | 赤色 |
中断 | 灰色 |
「完了」を緑色にする
「状態」の列の7行目から一番下まで選択
右クリックして「条件付き書式」を選択
セルの書式設定の条件に「完全に一致するテキスト」を選択し、「完了」と記載する
ボタンを押さないと範囲されないので注意
「完了」が緑色になる
「未着手」を赤色にする
追加した条件付き書式「完了」に完全に一致するテキストをクリック
下にある「条件を追加」をクリック
同じ条件が複製される
完全に一致するテキストを「完了」→「未着手」に変更し、カラーを赤に変更する
以下のように色を選ぶこともできる
完了と中断の行を灰色にする
「範囲に適用」をクリック
データに二つの範囲を追加する
- A7:A16(シートの状態の左側)
- C7:E16(シートの状態の右側)
セルの書式設定の条件から「カスタム数式」を選択
=$B7="中断"
と入力する
色を灰色に設定し完了をクリックする
同様に「完了」の処理も条件を追加し作成する
=$B7="完了"
結果
プルダウンメニューの作成
セルをクリックすると「完了,作業中,未着手,中断」の中から文字を選択できるようにする
「状態」の列の7行目から一番下まで選択「データの検証」をクリック
「リストを直接指定」をクリック
「完了,作業中,未着手,中断」を入れる
セルをクリックするとセルをクリックすると「完了,作業中,未着手,中断」の中から文字を選択できるようになる
フィルタ
特定の担当者の特定の状態のタスクのみを表示したい時フィルタの機能を利用すると簡単に実装することが出来る
- 担当者「田中」
- 状態「未着手」
フィルタを作成
「担当」、「状態」を選択
三角のアイコンをクリック
新しいフィルタ表示を作成をクリック
「担当」、「状態」にフィルタをかけられるようにする
「完了」と「中断」を非表示にする
三角のアイコンをクリック
「完了」と「状態」のチェックを外す
以下のようになる
行が増えた時の対応
範囲:をクリック
右側の数字だけを削除してEnter
範囲が一番下まで移動する
Google スプレッドシートでタスク管理/シートの作成0(基礎知識)
以下の記事の「シートの作成0(基礎知識)」
yasuaki-ohama.hatenablog.com
完成したスプレッドシート
値が何も入っていないと説明しにくいので、適当にデータを入れました(架空の人と架空のタスクです)
Google スプレッドシートでタスク管理/シートの作成0(基礎知識) - Google スプレッドシート
Googleスプレッドシートの作成
Googleドライブを開く
「新規->スプレッドシート」
をクリックするとGoogleスプレッドシートが作成される
以下のような行列の構造になっている
簡単に機能説明
- セルに文字、数値、画像、URLを入力できる
- 演算機能や条件による色分け処理ができる
名前の変更
左上をクリックするとスプレッドシートの名前を変更できる
行列の挿入・削除
挿入・削除したい行(123...)のところを右クリック
挿入・削除したい列(ABC...)のところを右クリック
使わない行列を削除
Googleのスプレッドシートは使わない行列を削除することができる
列F〜Z列までを選択して削除
行17〜行1000までを選択して削除
以下のようにF列以降と17行以降のデータを削除することが出来る
記入・色を塗る
色を塗りたい範囲を選択
バケツマークのアイコンをクリック
塗りたい色をクリック
セルをクリックすると文字を書き込みできる
セルの横幅を自動調節する
変更したい列(ABC...)を選択
「列A - Eのサイズを変更」を選択
データに合わせるを選択
以下のように横幅を文字に合わせて変更できる
行列を固定する
6行目を選択し「表示->固定->現在の行」をクリックする
行の数が増えた場合、または、ウィンドウが小さい場合でも固定した行が常に表示される
シートの複製(別のシートにも可)
左下のシートのタブを右クリック
「コピーを作成」をクリック
複製される
Google スプレッドシートでタスク管理
タスク管理シートの使い方
- 項目の追加
- カレンダー記載
拡大縮小
unity Editor ゲームを再生中にTimeScaleを自由に変更する TimeScaleWindow
概要
Unityでゲームを再生中にTimeScaleを自由に変更するEditorWindow作成した。
使い方
以下のサイトからダウンロード
TimeScaleWindow.cs · GitHub
プロジェクトに入れる
TimeScaleWindowをクリック
適当に配置
機能説明
aaa | 説明 |
---|---|
isActive | 機能を有効にする |
DoNotChangeTimeScale0 | TimeScaleが0の時、値を変更しないようにする |
TimeScale 0 | TimeScaleを0にする |
TimeScale 1 | TimeScaleが1にする |
TimeScale 0〜n | TimeScaleを自由に変更 |
最大値 | TimeScale 0〜nの最大値を決める |
補足「DoNotChangeTimeScale0」について
「DoNotChangeTimeScale0」はこの機能を使いながらゲーム中にポーズを行いたい時など、TimeScaleを0にした後に値を変更されたくない場合に利用する。
参考動画 ザ・ワールド!!
時を止める、ゆっくり動かす、速く動かす
www.youtube.com
動画は作成中のゲームです↓
http://yasuaki-ohama.com/
(続) unity セーブデータの読み込み、書き込みを高速化する。 PreviewLabs.PlayerPrefs
概要
前回書いた記事の追記です。
Unityで利用されるPlayerPrefsの読み込み、書き込み処理を高速化します。
yasuaki-ohama.hatenablog.com
変更点の説明
C#には以下の仕様がある
「ネームスペースを利用したクラスとしていない同名のクラスがある場合、利用しないほうが優先される」
この仕様によって同じクラス名「PlayerPrefs」を宣言すれば自分の作成したクラスが優先して呼ばれます。
using UnityEngine; namespace NamespaceTest { public static class Sample { public static void Call() { //NamespaceTest.Sampleが表示される Debug.Log (typeof(Sample).ToString ()); } } } public static class Sample { public static void Call() { //Sampleが表示される Debug.Log (typeof(Sample).ToString ()); } }
以下のように「using NamespaceTest;」と書いた場合でもネームスペース無しのクラスが優先される
using UnityEngine; using System.Collections; using NamespaceTest; public class Test : MonoBehaviour { void Start () { Sample.Call (); } }
win キーボード us jis ctrl caps 変更
キーボードを変更する時、詰まったところをまとめた。
基本
以下の方法でok
Windows 7 101 英語キーボードに設定を変更する方法|キーボードマニュアル|Windowsマニュアル
Windows 8におけるUSキーボードへの設定方法について - マイクロソフト コミュニティ
適切なのを選ぶ
外付けキーボードの設定
HIDキーボードはUSB接続キーボードなので、それにPS/2接続キーボードのドライバを適用することはできないので注意
ノートPCの場合、ドライバを変更すると外付けのキーボードも同じ設定になる。
HID(外付けキーボード)を選択しないように注意する
「Caps」と「Ctrl」の入れ替え
以下のサイトを利用すると簡単にできる
「Caps」と「Ctrl」の入れ替え
unity Editor コンポーネントをソートする SortComponentsWindow.cs
概要
UnityではGameObjectにアタッチしているコンポーネントの順番を入れ替えたい時
「Move Up」「Move Down」をクリックして移動する。
そのため、好きな順番にソートするのが大変です。
なので今回は、簡単にソートができるエディタウィンドウを作成しました。
使い方
以下のサイトからSortComponentsWindow.csをダウンロード
Applyボタンあり(入れ替え後、ボタンを押して反映)
Applyボタンなし(入れ替えると自動で反映)
Unityにドラック & ドロップするとEditorWindowがでてきます
Sort Components Windowをクリック
適当に配置
ソートしたいオブジェクトをドラック & ドロップ
ドラックしてコンポーネントをドラックして入れ替えできる
プレハブも可能
スクリプト
テストに利用したスクリプト
using UnityEngine; using System.Collections; public class Script_1 : MonoBehaviour { public int value_1; }
using UnityEngine; using System.Collections; public class Script_2 : MonoBehaviour { public int value_2; }
using UnityEngine; using System.Collections; public class Script_3 : MonoBehaviour { public int value_3; }
製作時の問題
「CheckComponentsUpdate ()」を作成した経緯
以下の方法で試したが更新できなかったため手動検知プログラムを作成した
void OnMouseDown() { //更新処理 } void OnValidate() { //更新処理 } private void OnGUI() { EditorGUI.BeginChangeCheck (); ... if (EditorGUI.EndChangeCheck ()){ //更新処理 } }
スクリプトが外れている場合の対処
アタッチしたスクリプト内にある変数の値を表示
m_reorderableList.drawElementCallback = (rect, index, isActive, isFocused) => { EditorGUI.LabelField(rect, SrawElementCallback((Object)m_reorderableList.list[index], index)); };
SrawElementCallbackをSrawElementCallbackCustomに変更する
m_reorderableList.drawElementCallback = (rect, index, isActive, isFocused) => { EditorGUI.LabelField(rect, SrawElementCallbackCustom((Object)m_reorderableList.list[index], index)); };
やってはいけない操作
SortComponentsWindowで同じプレハブを
「プロジェクト」と「ヒエラルキー」の両方で操作を行うと個数が2倍になります。
例
1、プロジェクトにあるプレハブをヒエラルキーに置く
2、ヒエラルキーのプレハブをSortComponentsWindowに入れて操作(コンポーネントの複製と削除)
3、プロジェクトのプレハブをSortComponentsWindowに入れて操作(コンポーネントの複製と削除)
4、(2、3)によりヒエラルキーとプロジェクトのプレハブに差分が発生
5、ヒエラルキーのプレハブにプロジェクトの差分が自動で追加(Unityの機能)
結果ヒエラルキーのコンポーネントの個数が2倍になる
参考
【Unity】SerializedObjectを使用して指定されたオブジェクトのすべてのプロパティのパス名を抽出するエディタ拡張 - コガネブログ
Unity - ReorderableList を使ってインスペクタ上でリストや配列の順番を変更する - Qiita
Unity: make your lists functional with ReorderableList
rotorz / Reorderable List Editor Field for Unity — Bitbucket
Interesting things in Unity 4.5 you probably didn't know about
【エディタ拡張徹底解説】初級編②:いろいろなGUI(GUILayout編)【Unity】 | ケットシーウェア
c# - AddComponent using a variable - Game Development Stack Exchange
様々なEditorWindow① - けいごのなんとか
テックノート – 配列からListへ変換、Listから配列へ変換
Re-orderable object lists in inspector - Unity Answers
=Object.operator
Undo
Undo.AddComponent
MonoBehaviour
[C#]foreach文でループカウンタを取得する方法