Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Create MD5Camera class #13

Closed
jpaoneMines opened this issue Sep 20, 2022 · 3 comments
Closed

Create MD5Camera class #13

jpaoneMines opened this issue Sep 20, 2022 · 3 comments

Comments

@jpaoneMines
Copy link
Owner

Extend abstract Camera to implement the MD5Camera format.

Store:

  • frame rate
  • number of frames
  • number of cuts
  • array of cut positions
  • array of each frame information: (1) camera world (x,y,z) position (2) camera rotation as a 3 component quaternion (3) fov

Ability to:

  • retrieve current frame view & projection matrices
  • advance to next frame
  • move to previous frame
  • set which cut to run through
  • loop through current cut (yes/no)
  • auto advance to next cut (yes/no)
  • loop through all cuts (yes/no)
@jpaoneMines
Copy link
Owner Author

File format info

https://modwiki.dhewm3.org/MD5CAMERA_(file_format)

Provide interface to

  1. load from file
  2. manually build frames/cuts via API

@jpaoneMines
Copy link
Owner Author

Through existing abstract Camera class can support:

  • load from file
  • advance to next frame
  • auto advance to next cut and/or loop through all cuts
  • if not above, loop through current cut and which cut to run

Additional flexibility (changing projection matrix, manually setting frames/cuts) will require changes to the abstract Camera class

@jpaoneMines
Copy link
Owner Author

No ability to manually create frames. Can only load from an external file.

Works through abstract Camera interface.

Needs more thorough testing. Will reopen if bugs are discovered.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

1 participant