Hacktoberfest 2026:メンテナが10月に向けて印を付けた、オープンで初心者向けの issue。 Hacktoberfest の issue を見る

Performance convert Matrix4x4 into float4x4

オープン
#223 コメント 0 件 リアクション 2 件 担当者 0 名 GitHub で見る

まだ誰も着手していません。

評価

難易度
2/5
見積もり時間
1〜3時間
初心者へのやさしさ
52/100
issue の種類
リファクタリング
明瞭さ
おおむね明確
活発さ
停滞
技術スタック
csharp, unity
領域
performance

調査の方向性

まず Unity.Mathematics のソースで暗黙的な演算子 float4x4(Matrix4x4 m) のエントリポイントを検索し、issue で言及されている逆方向の float4x4-to-Matrix4x4 キャストを調べます。変換経路を比較し、現在の列ベースの構築を使わずにすべての行列要素が保持されることを検証します。最適化された変換が同等であり続ければ完了です。

索引モデルが issue の本文から書いたものです。

説明

I spot a little improve to convert Matrix4x4 into float4x4
In the current version:
public static implicit operator float4x4(Matrix4x4 m) { return new float4x4(m.GetColumn(0), m.GetColumn(1), m.GetColumn(2), m.GetColumn(3)); }
My suggestion:
public static implicit operator float4x4(Matrix4x4 m) { return new float4x4(m.m00, m.m01, m.m02, m.m03, m.m10, m.m11, m.m12, m.m13, m.m20, m.m21, m.m22, m.m23, m.m30, m.m31, m.m32, m.m33); }

In the current version, you call the column to give you an Vector4 that you convert by an implicit cast into a float4. For the construction, that's not very efficient, i think it's because you want to use a "mirror" function with the cast float4x4 into Matrix4x4

Guillaume

主要言語
C#
スター
1.4k
フォーク
159
PR マージ指標
30日以内にマージされた PR はありません

環境構築

このプロジェクトには開発コンテナ、Dockerfile、コントリビューションガイドがありません。まず README を読み、一般的な手順ははじめてのコントリビューションガイドを参照してください。

はじめの一歩

  1. issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
  2. 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
  3. リポジトリをフォークし、ブランチを切って変更します。
  4. issue 番号を参照したプルリクエストを送ります。

Unity-Technologies/Unity.Mathematics のほかの issue

Unity-Technologies/Unity.Mathematics の issue をすべて見る

似ている issue

C# の issue をもっと見る

新しい issue をメールで受け取る

初心者向けの GitHub issue を短くまとめたダイジェスト。