【4kb】Visual Studio 2017で小さいexeを作る【メガデモ】

Cluster,Inc. Advent Calendar 2018、12日目の記事です。 qiita.com

以前書いたこちらの記事のリライトになります。 wordpress.notargs.com

概要

プログラムで描いた映像、音楽を前のスクリーンにデカデカと写し、その年最強のデモシーナー(プログラムでエモいの作る人)を決める「TokyoDemoFest」というイベントがあります。

tokyodemofest.jp

自分も毎年参加しているのですが、「吐き出されるexeが小さければ小さいほど評価が高い」という傾向があるので、最新のVisualStudioで小さいexeを吐き出す方法を調べてみました。

続きを読む

【HLSL】2x2行列、3x3行列の逆行列を計算する

Cluster,Inc. Advent Calendar 2018、11日目の記事です。

qiita.com

概要

HLSLにて、4x4行列の逆行列を計算する処理は見つかったんですが、2x2、3x3が見当たらなかったので書いてみました。

4x4行列はこちら Matrix operations for HLSL · GitHub

2x2行列

float2x2 Invert(float2x2 m)
{
    return 
        1.0 / determinant(m) *
        float2x2(
            m._m11, -m._m01, 
            -m._m10, m._m00
        );
}

3x3行列

float3x3 Invert(float3x3 m)
{
    return 1.0 / determinant(m) *
        float3x3(
            m._22 * m._33 - m._23 * m._32,       -(m._12 * m._33 - m._13 * m._32),       m._12 * m._23 - m._13 * m._22,
            -(m._21 * m._33 - m._23 * m._31),    m._11 * m._33 - m._13 * m._31,          -(m._11 * m._23 - m._13 * m._21),
            m._21 * m._32 - m._22 * m._31,       -(m._11 * m._32 - m._12 * m._31),       m._11 * m._22 - m._12 * m._21
        );
}

【Unity2019.1a11】InspectorでもUIElementsを使う

Cluster,Inc. Advent Calendar 2018、10日目の記事です。

qiita.com

概要

Unity2019にて、UIElementsUnityEngine.Experimental.UIElementsからUnityEngine.UIElementsへ移行しました。

従来はOnGUIなどでデータが変更されるたびに再描画していましたが、UIElementsを使うことでツリー構造としてイベント駆動で扱えるようになるため、より軽く、より楽に使えるようになります

インスペクタからでも使えるようになった他、使い方も少し変わっているので紹介していきます。

続きを読む

【Unity】VFX Graphでローレンツアトラクタを描画する

Cluster,Inc. Advent Calendar 2018、8日目の記事です。

qiita.com

概要

VFX Graphでローレンツアトラクタを描画してみました。 ローレンツアトラクタは、下の画像のように、円が2個くっついたような挙動をする方程式です。

f:id:notargs:20181204113728g:plain

続きを読む