7080 + 1

ゲームプログラミングの記事を書いてます。

【Unity】ImageEffectを使わずにポストプロセス処理をする

始めに ImageEffectを使うと、オリジナルのポストプロセスを書けるのはUnityの機能として以前からありました。私もポストプロセスでステンシルバッファを使った描画処理をやっていたのですが、Unity2017.3にアップデートした途端に挙動がおかしくなってしま…

【Unity】Redoのショートカットを変えた~い【Windows】

※これはWindowsのUnityだけの話です。 事始め UnityのショートカットはUndoがCtrl+Z、RedoがCtrl+Yになっています。この2つは昔からショートカットで定番となっており、ほとんどのソフトウェアで使えるものだということは、皆さんご存知のとおりです。しかし…

【Unity】リッチテキストを使うためのstring型の拡張メソッドを書きました

Unityで表示される文字(ConsoleログやuGUIのテキストなど)はリッチテキストに対応しています。 タグを付けると、色を変えたりサイズを変えたり出来るんですね。ちなみに対応してるのは色・サイズ変更、ボールド、イタリックの4種類みたいです。 いちいちタグ…

【Unity】トランジションするシェーダを作りました

テクスチャ一枚を差し替えるだけでトランジションの仕方を変えられるシェーダを作りました。 動画は汚いですがきれいにでてます。本当です。 何かいいGIFレコーダーないですか...とそれは置いておいて、使い方を。uGUIのImageに適用するシェーダとして作って…

VSCodeがGitを認識しなくなったら

ある日VSCode(1.20)がGitを認識しなくなりました。 ソース管理タブに行っても「有効なソース管理プロバイダーがありません」と表示され何もできなくなります。 (言語が英語だと"There is no active source control providers."と表示される)色々調べると以下…

【Unity】InputManagerを作るエディタ拡張を作りました

Unityで入力を取得しようと思うと、InputManagerをいじる必要があります。 しかし単純にリストで定義されているため、 順番の入れ替えが出来ない 不必要な設定を消す時に後半部分も一緒に消す必要がある また、様々な入力に対応するために設定項目がたくさん…

VisualStudioのビルド時間を簡単に早くする

※この記事は2015年にQiitaで執筆したものです。情報が古い可能性があります。 目的 プログラマにとって一番時間の無駄になっているであろう「ビルド時間」を短縮できないかと考えていました。 調べていると、簡単に短縮出来る方法があったので紹介します。 …

VisualStudioのディレクトリパス設定を少しだけ楽にする

※この記事は2015年にQiitaで執筆したものです。情報が古い可能性があります。VisualStudioを使ってプログラミングしていると、プロジェクトのプロパティからインクルードやライブラリのディレクトリパスを設定することがあると思います。その設定を少しだけ…

【Blender】頂点カラーのAチャンネルを編集・出力できるようにする【v2.77】

※追記 タイトルが誤解を与えてる気がしたので変更しました。ふと暇だったのでギルティギアXrdのグラフィック記事を読んでいました。もうだいぶ前の記事ですね。 www.4gamer.net当時読んだときよりもちゃんと理解出来たので、できそうなところはやってみよう…

UnityがCドライブを圧迫する!!

自分のPCの記憶領域は128GBのSSDをCドライブ、2TBのHDDをDドライブという構成になっています。ほとんどのアプリをHDDに入れて、絶対速度がほしいのだけSSDに入れるという運用ですね。が、特に新しいアプリを入れたわけでもないのにCドライブの容量が残り10GB…

【Unity】ビットマップフォントをUnityで扱う その2【ShoeBox】

前回の続きです。ブログの更新頻度が爆上がりしてます(前年比) 7081.hatenablog.comここからはUnity上での作業...といいたいんですが、実は吐き出したxmlファイルをそのまま使おうとするとエラーが出ます。 ので、先にxmlファイルを編集します。 <font> <info face="D:\Desktop umberfont-export" size="35" /> <common lineHeight="35" scaleW="137" scaleH="141" pages="1" /> <pages> </pages></common></info></font>

【Unity】ビットマップフォントをUnityで扱う その1【ShoeBox】

今回は長くなったので2回に分けます。 UnityでUIのテキストを表示するときは、uGUIのTextを使うと思います。 (TextMeshProのTextもありますが、オリジナルのビットマップフォントを扱う方法が見つからなかったので割愛)しかしフォントを使って文字を描画…

【Unity】ポリゴンの裏表で描画を変える

タイトルの通り、シェーダでポリゴンの裏表を判定する方法を紹介します。 ポリゴンがカメラからみて裏か表かで描画の仕方を変えたいとき、2つの方法があります。 他にも方法があれば教えていただければと思います。・カリングの設定を変えた2つのパスで描画…

【Unity】イントロ+ループ再生を実装する

またUnityの記事です。今回は難易度低め。BGMを流すとき、イントロ+ループというのを前提にしたBGMって結構あると思います。 Unityではそれを再生する機能が標準でない(Why?)ので、簡単に出来るのを実装してみました。必要なものは ・イントロとループで分…

【Unity】スプレッドシートのデータをスクリプトから取得する【OAuth】

久しぶりの更新です。 仕事柄、最近はUnityばかり触ってます。のでUnityの記事です。ゲームで使う値をエクセルじゃなくてスプレッドシートで管理したかったので、色々調べました。 全体の流れをメモ代わりに書きますが、詳しく触れていないところはわからな…

WindowsなんだからWindowsAPIも知る必要がある

学生時代の自分のDirectXのプログラムを見ていると、先生からもらったサンプルをそのまま意味もわからず使っているケースがあります。 特にWindowsAPI周りが意味不明で、この関数呼んでる意味あんのか?と思ったりすることもあります。 しかし調べてみると、…

OSのバージョンを調べる(VerifyVersionInfo())

OSのバージョン取得方法には、GetVersionEx()と、VerifyVersionInfo()の2つがあります。 しかし両者には違いがあります。 前者は現在自分の使っているOSのバージョンを知ることが出来ます。 後者は現在自分の使っているOSと、引数で指定したバージョンを比較…

IDXGIDebug::ReportLiveObjects()を使うまでの道のり その2

前回の続きです。 結論から言います。出来ました。 奮闘記を書いて教えを請う予定でしたが、出来てしまったのでやり方だけ書きます。 前回も言いましたが、このメソッドはというか、このインターフェース自体が Windows8以降じゃないと使えないとMSDNに書い…

IDXGIDebug::ReportLiveObjects()を使うまでの道のり その1

記念すべき初投稿は、DirectX11のデバッグレイヤーの話です。 DirectXでは、COMオブジェクトを使った設計がされています。 COMオブジェクトについては詳しく知らないので、ここでは割愛します。 ようは、Release()忘れを絶対にするなよということです。 とは…