光線三角交差点の最も既知のアルゴリズムは、Möller-Trumbore交差点アルゴリズムです。光線と三角形の交点を計算するための効率的で高速な方法です。このアルゴリズムは、光線と三角形を含む平面間の交差点の計算、そして交差点が三角形内にあるかどうかを確認することに基づいています。

Möller-Trumbore交差点アルゴリズムの擬似コードは次のとおりです。

`` `
関数間片角（Ray Orig、Ray Dir、Triangle Vert0、Triangle Vert1、Triangle Vert2、Float＆T、Float＆U、Float＆V）
    VEC3 EDGE1 = VERT1 -VERT0
    VEC3 EDGE2 = VERT2 -VERT0
    vec3 pvec = cross（dir、edge2）
    float det = dot（edge1、pvec）

    if（det> -epsilon && det <epsilon）
        falseを返します

    float inv_det = 1.0 / det
    VEC3 TVEC = ORIG -VERT0
    u = dot（tvec、pvec） * inv_det

    if（u <0.0 || u> 1.0）
        falseを返します

    VEC3 QVEC = Cross（TVEC、Edge1）
    v = dot（dir、qvec） * inv_det

    if（v <0.0 || u + v> 1.0）
        falseを返します

    t = dot（edge2、qvec） * inv_det
    trueを返します
終わり
`` `

Origは光線の起源であり、dirは光線、VERT0、VERT1、VERT2の方向であり、三角形の頂点であり、Tは光線起点から交差点までの距離、uとvはbarycentric座標です。三角形内の交差点を定義するエプシロンは、浮動小数点精密エラーを処理するために使用される小さな定数です。
The fastest known algorithm for ray-triangle intersection is the Möller-Trumbore intersection algorithm. It's an efficient and fast method to calculate the intersection of a ray and a triangle. The algorithm is based on calculating the intersection between a ray and a plane that contains the triangle, and then checking if the intersection point lies within the triangle.

Here is the pseudocode for the Möller-Trumbore intersection algorithm:

```
function intersectTriangle(ray orig, ray dir, triangle vert0, triangle vert1, triangle vert2, float &t, float &u, float &v)
    vec3 edge1 = vert1 - vert0
    vec3 edge2 = vert2 - vert0
    vec3 pvec = cross(dir, edge2)
    float det = dot(edge1, pvec)

    if (det > -EPSILON && det < EPSILON)
        return false

    float inv_det = 1.0 / det
    vec3 tvec = orig - vert0
    u = dot(tvec, pvec) * inv_det

    if (u < 0.0 || u > 1.0)
        return false

    vec3 qvec = cross(tvec, edge1)
    v = dot(dir, qvec) * inv_det

    if (v < 0.0 || u + v > 1.0)
        return false

    t = dot(edge2, qvec) * inv_det
    return true
end
```

Note that orig is the origin of the ray, dir is the direction of the ray, vert0, vert1, and vert2 are the vertices of the triangle, t is the distance from the ray origin to the intersection point, u and v are barycentric coordinates that define the intersection point within the triangle, EPSILON is a small constant used to handle floating point precision errors.