0

Apologies in advance for any mistakes on terminology, I'm really really new to this

I'm completely new to 3d (and it's maths) but as a personal exercise I'm doing my own game engine that displays a simple wireframe.

I've implemented rotate (x, y and z), orthogonal, isometric, perspective projection matrices (column major) and a look_at function.

I've got a list of points and my rudimentary pipeline (on keypress) is as follows:

  1. get original points
  2. scale
  3. rotate_x
  4. rotate_y
  5. rotate_z
  6. look_at(cam,target,up)
  7. projection
  8. translate to centre of the window It works fine with hardcoded camera and target coordinates

However I want to be able to:

  1. move the camera up/down/left/right in the same plane I'm currently at.
  2. To be able to rotate that plane around the z axis
  3. and to bring the plane the camera is closer or farther from the z axis But I have no Idea how to do that. (quaternions or matrices)

The reason I want to rotate around the z axis and not the y is because I haven't implemented any coordinate system and the hardcoded camera and target values are for an isometric projection.

How can I do this?

MiguelP
  • 416
  • 2
  • 12
  • see [Understanding 4x4 homogenous transform matrices](https://stackoverflow.com/a/28084380/2521214) and all sublinks in there especially those at the end ... – Spektre Aug 08 '23 at 08:56
  • @Spektre Thanks! I see that you are well versed in this could you help me out with [this other question](https://stackoverflow.com/questions/76855554/warp-curve-all-vertices-around-a-pivot-point-axis) please? – MiguelP Aug 08 '23 at 22:03

0 Answers0