rustgd / cgmath

A linear algebra and mathematics library for computer graphics.
https://docs.rs/cgmath
Apache License 2.0
1.13k stars 155 forks source link

look_at for model matrices? #536

Open swiftcoder opened 3 years ago

swiftcoder commented 3 years ago

In a somewhat traditional scene setup, my camera has an associated transform (i.e. the model matrix of the camera node), and then I derive the view matrix by inverting the model matrix.

Most examples I see using cgmath are assembling their view matrix by hand, which is fine, but it means that the look_at _* functions all produce view matrices. If I wanted a look_at equivalent for placing objects (i.e. their model matrices) in the scene, what's my best option?

I can obviously just call look_at_*().invert().unwrap() which is fine for now, but it feels like there could be a cleaner option

kvark commented 3 years ago

I'm not familiar with look_at used for placing objects. After all, the function is about "look", it implies the camera.

swiftcoder commented 3 years ago

After all, the function is about "look", it implies the camera.

Lots of types of objects have an intrinsic "look" direction. Characters, spaceships, guns, and so on. But regardless of what it ends up being named, an "align object to face a point" function would be very useful.