エフアンダーバー

個人でのゲーム開発

【TypeScript】 Vuexもクラス形式で書きたい!!

vue-class-componentやvue-property-decorator、 vuex-classといったデコレータによるクラス形式のコンポーネント記述に感動したので、 Vuexもクラス形式で書けないかと仕組みを試作してみました。 ちなみにVuexの初心者も初心者、ほとんどドキュメントに目…

TypeScriptとVueのMixin

VueのMixinに関する(Webの世界では)一昔前の記事を読んでいて、 TypeScript 自体が Mixin 構文をサポートすればこのつらさもなくなるような気がしますが、 TypeScript 公式でこのめんどくさい Mixin のやり方を紹介しているので望みは薄いような気も……。 …

WebpackでTypeScriptのモジュール解決

TypeScriptのコンパイラオプションには baseUrl、paths、rootDirsといういくつかの特別なモジュール解決の設定があります。 しかし、これらはあくまでもTypeScriptコンパイラのための設定でWebpackやts-loaderはこれらを考慮してくれません。 そこで、Webpac…

【Webpack】 css-loader周りのSourceMap関連バグと戦う

css-loaderを使っていてSourceMapのパスが壊れるバグにハマったのでその際調べたことのまとめです。 長くなるのでタイトルに入れていませんが、 css-loader、 postcss-loader、 sass-loader辺りのバグです。 問題 原因 原因1:パスとURLの混同 原因2:相対…

SVGをCanvasに変換しようとして失敗した話

Electronでsvg要素を画像として保存したいと思い、Canvasに変換してからPNGとして保存しようと試みた結果、失敗したという話。 最終的に諦めたのでこの記事に解決策は書いてありません。 同じことをしたい人が時間を無駄にしないための記事です。 drawImage…

乱数生成の備忘録2

C#

他人が書いた乱数生成のコードを読んでいたところ、 前回自分が書いたものと違う実装をしていたので改めていろいろと調査。 www.f-sp.com 問題のコード 異なる実装となっていたのは整数の乱数から[0,1)の範囲の実数の乱数を生成するコード。 前回自分が書い…

乱数生成の備忘録

C#

以前書いた疑似乱数生成コードの修正作業をしたので、その際に調べたことや考えたことのメモ。 基本的に自分用なので雑。 動機と方針 System.Randomのアルゴリズムは古めで偏りがある。 Knuthの減算法。 再現性の問題があるので今後も変わることはなさそう。…

【Unity】 Rigidbodyの回転方法

Rigidbody(剛体)の移動方法については以前書きましたが、回転方法については書いていなかったので今更ながらまとめてみます。 まあ、移動方法とそんなに変わらないんですが・・・。 www.f-sp.com 準備 説明の簡略化のため、本記事内では下記の記号は特別な…

【Unity】 Quaternionの使い方

Quaternion(クォータニオン、四元数)はUnityでオブジェクトを回転させる際に必要となる数です。 Quaternionの理論自体は非常に数学的で難しいのですが、Unity上で使うだけであればいくつかの特徴を覚えるだけで比較的容易に利用できます。 この記事では、Q…

【Unity】 Quaternion API解説

Quaternion(クォータニオン、四元数)は回転操作において重要な数です。 しかし、回転という操作がなかなか想像しづらいことや、Quaternionの扱いに少し癖があることなどから、 結構ハマりやすいところだと思います(というか、自分がよくハマります)。 そ…

クォータニオンと回転

クォータニオン(四元数、Quaternion)は3Dグラフィックスのプログラミングにおいて回転を表す数としてよく出てきます。 曰く、 サイズが小さい(回転行列よりも少ない数で表せる) ジンバルロックが起きない 補間が容易 とのことで、非常に便利な理論です。…

はてなブログテーマ "Notebook" のカスタマイズについて

Windows10のCreators UpdateにてEdgeがアップデートされ、 モダンブラウザのほとんどがCSS-Variablesという仕様に対応したため、 はてなブログテーマ"Notebook"のカスタマイズが容易になりました。 IEや古いAndroidブラウザ、Opera MiniなどはCSS-Variables…

【Unity】 Matrix4x4の罠

Matrix4x4でとてつもなくしょうもないバグにハマったのでメモ。 問題コード 何気なくこんな感じのコードを書いて、「あれ?」となりました。 using UnityEngine; public class MatrixSample : MonoBehaviour { private void Start() { transform.position = …

【Unity】 SmoothDampの謎

ユニティちゃんのリパッケージ作業中、SmoothDampの挙動がどうも自分の理解と違うことに気づいたので調べてみました。 www.f-sp.com SmoothDampとは? スクリプトリファレンスによれば、 Gradually changes a vector towards a desired goal over time. The …

Unityと改行コード

Visual Studioを利用してUnityのスクリプトを書いているとよくこんな警告が出ます。 There are inconsistent line endings in the 'Assets/XXX.cs' script. Some are Mac OS X (UNIX) and some are Windows. This might lead to incorrect line numbers in s…