Documentation ¶
Index ¶
- type Mat3
- func (a Mat3) Add(b Mat3) (c Mat3)
- func (m Mat3) Mat4() Mat4
- func (a Mat3) Mul(b Mat3) (c Mat3)
- func (a Mat3) MulScalar(b float32) (c Mat3)
- func (m Mat3) MulVec(a [3]float32) (b [3]float32)
- func (m Mat3) MulVec2(a [2]float32) [2]float32
- func (a Mat3) Sub(b Mat3) (c Mat3)
- func (m Mat3) Transpose() (x Mat3)
- type Mat4
- func Mat4Frustum(left, right, top, bottom, near, far float32) Mat4
- func Mat4Ident() Mat4
- func Mat4LookAt(eye, lookAt, up Vec3) (m Mat4)
- func Mat4OrthoYDown(left, right, top, bottom, near, far float32) Mat4
- func Mat4OrthoYUp(left, right, top, bottom, near, far float32) Mat4
- func Mat4Persp(fovYRadian, aspectXtoY, near, far float32) (m Mat4)
- func Mat4RotAround(u Vec3, angle float32) (rot Mat4)
- func Mat4RotDir(from, to Vec3) (rot Mat4)
- func Mat4RotX(angle float32) (rot Mat4)
- func Mat4RotY(angle float32) (rot Mat4)
- func Mat4RotZ(angle float32) (rot Mat4)
- func Mat4Scale(sx float32, sy float32, sz float32) (scale Mat4)
- func Mat4Trans(dx float32, dy float32, dz float32) (trans Mat4)
- func (a Mat4) Add(b Mat4) (c Mat4)
- func (m Mat4) Det() float32
- func (m Mat4) Inverse() (b Mat4)
- func (m Mat4) Mat3() Mat3
- func (a Mat4) Mul(b Mat4) (c Mat4)
- func (a Mat4) MulScalar(b float32) (c Mat4)
- func (m Mat4) MulVec(a [4]float32) (b [4]float32)
- func (m Mat4) MulVec3(a [3]float32) [3]float32
- func (a Mat4) Quat() (q Quat)
- func (a Mat4) Sub(b Mat4) (c Mat4)
- func (m Mat4) Transpose() (x Mat4)
- type Mat4Stack
- type Point2
- type Quat
- func (a Quat) Angle(b Quat) float32
- func (a Quat) Conj() Quat
- func (a Quat) CosHalfAngle(b Quat) float32
- func (a Quat) Inv() Quat
- func (a Quat) Mat4() (rot Mat4)
- func (a Quat) Mul(b Quat) Quat
- func (a Quat) Norm() float32
- func (a Quat) Normalized() Quat
- func (a Quat) Slerp(b Quat, t float32) (c Quat)
- type Range2
- func (a Range2) Center() Point2
- func (a Range2) Contains(b Range2) bool
- func (a Range2) ContainsPoint(pt Point2) bool
- func (a Range2) ContainsRect(b Rect2) bool
- func (a Range2) Deflate(d RangeDelta2) Range2
- func (a Range2) Dx() float32
- func (a Range2) Dy() float32
- func (a Range2) Inflate(d RangeDelta2) Range2
- func (a Range2) Intersect(b Range2) Range2
- func (a Range2) IsPositive() bool
- func (a Range2) Normalize() (b Range2)
- func (a Range2) Rect() Rect2
- func (a Range2) Round() Rect2
- func (a Range2) Union(b Range2) Range2
- func (a Range2) X() float32
- func (a Range2) X0() float32
- func (a Range2) X1() float32
- func (a Range2) Y() float32
- func (a Range2) Y0() float32
- func (a Range2) Y1() float32
- type RangeDelta2
- type Rect2
- func (a Rect2) Center() Point2
- func (a Rect2) Contains(b Rect2) bool
- func (a Rect2) ContainsPoint(pt Point2) bool
- func (a Rect2) ContainsRange(b Range2) bool
- func (a Rect2) Deflate(d RangeDelta2) Rect2
- func (a Rect2) Dx() float32
- func (a Rect2) Dy() float32
- func (a Rect2) Inflate(d RangeDelta2) Rect2
- func (a Rect2) Intersect(b Rect2) Rect2
- func (a Rect2) IsPositive() bool
- func (a Rect2) Positive() (b Rect2)
- func (a Rect2) Range() Range2
- func (a Rect2) Round() Rect2
- func (a Rect2) Union(b Rect2) Rect2
- func (a Rect2) X() float32
- func (a Rect2) X0() float32
- func (a Rect2) X1() float32
- func (a Rect2) Y() float32
- func (a Rect2) Y0() float32
- func (a Rect2) Y1() float32
- type Size2
- type Vec2
- func (v Vec2) Add(a Vec2) Vec2
- func (v Vec2) Dot(b Vec2) float32
- func (v Vec2) Kross(b Vec2) float32
- func (v Vec2) Len() float32
- func (v Vec2) LenPow2() float32
- func (v Vec2) Neg() Vec2
- func (v Vec2) Normalized() (ret Vec2)
- func (v Vec2) Sub(a Vec2) Vec2
- func (v Vec2) X() float32
- func (v Vec2) Y() float32
- type Vec3
- func (v Vec3) Add(a Vec3) Vec3
- func (v Vec3) Cross(b Vec3) Vec3
- func (v Vec3) Dot(b Vec3) float32
- func (v Vec3) Len() float32
- func (v Vec3) LenPow2() float32
- func (v Vec3) Neg() Vec3
- func (v Vec3) Normalized() (ret Vec3)
- func (v Vec3) Sub(a Vec3) Vec3
- func (v Vec3) X() float32
- func (v Vec3) Y() float32
- func (v Vec3) Z() float32
- type Vec4
- func (v Vec4) Add(a Vec4) Vec4
- func (v Vec4) Dot(b Vec4) float32
- func (v Vec4) Len() float32
- func (v Vec4) LenPow2() float32
- func (v Vec4) Neg() Vec4
- func (v Vec4) Normalized() (ret Vec4)
- func (v Vec4) Sub(a Vec4) Vec4
- func (v Vec4) W() float32
- func (v Vec4) X() float32
- func (v Vec4) Y() float32
- func (v Vec4) Z() float32
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Mat4 ¶
type Mat4 [4][4]float32
Mat4 is 4x4 matrix
func Mat4Frustum ¶
Mt4Frustum construct projection matrix for Vulkan. normaly left, right, top, bottom, near and far are all positive. EYE space X-right, Y-up, Z-back. NDC space X-right, Y-down, Z-forword. NDC range x => [-1, +1], y => [-1, +1], z => [0, +1].
func Mat4LookAt ¶
func Mat4OrthoYDown ¶
func Mat4OrthoYUp ¶
func Mat4RotAround ¶
func Mat4RotDir ¶
type Quat ¶
type Quat [4]float32
Quaternion x*i + y*j + z*k + w*1
func QuatBezierSlerp ¶
QuatBezierSlerp bezier spherical linear interpolation
func QuatRotAround ¶
type Range2 ¶
type Range2 [4]float32
Range2 (x0, y0, x1, y1)
func (Range2) ContainsPoint ¶
func (a Range2) Equals(b Range2) bool { return a[0] == b[0] && a[1] == b[1] && a[2] == b[2] && a[3] == b[3] }
func (Range2) ContainsRect ¶
func (Range2) Deflate ¶
func (a Range2) Deflate(d RangeDelta2) Range2
func (Range2) Inflate ¶
func (a Range2) Inflate(d RangeDelta2) Range2
func (Range2) IsPositive ¶
type RangeDelta2 ¶
type RangeDelta2 [4]float32
RangeDelta2 (dx0, dy0, dx1, dy1)
func (RangeDelta2) Dx ¶
func (a RangeDelta2) Dx() float32
func (RangeDelta2) Dx0 ¶
func (a RangeDelta2) Dx0() float32
func (RangeDelta2) Dx1 ¶
func (a RangeDelta2) Dx1() float32
func (RangeDelta2) Dy ¶
func (a RangeDelta2) Dy() float32
func (RangeDelta2) Dy0 ¶
func (a RangeDelta2) Dy0() float32
func (RangeDelta2) Dy1 ¶
func (a RangeDelta2) Dy1() float32
func (RangeDelta2) Round ¶
func (a RangeDelta2) Round() RangeDelta2
type Rect2 ¶
type Rect2 [4]float32
Rect2 (x, y, width, height)
func (Rect2) ContainsPoint ¶
func (a Rect2) Equals(b Rect2) bool { return a[0] == b[0] && a[1] == b[1] && a[2] == b[2] && a[3] == b[3] }
func (Rect2) ContainsRange ¶
func (Rect2) Deflate ¶
func (a Rect2) Deflate(d RangeDelta2) Rect2
func (Rect2) Inflate ¶
func (a Rect2) Inflate(d RangeDelta2) Rect2
func (Rect2) IsPositive ¶
Click to show internal directories.
Click to hide internal directories.