Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This is a clean version of #357
Defined camera transformations (shot types) and a state machine to decide between them during dialogs with NPCs.
There are 4 shot types:
In order to keep shot progression feeling natural, Full and Over the shoulder shots
should be used a couple times before opening up the chance to move on to Neutral and Close Up
shots. Furthermore, the camera should only push further in and not back out once it progressed
to at least a Neutral shot.
Dialog shot progression therefore respects the following rules:
Regarding the PC_Hero the following extra rules apply:
On a more personal note: Unfortunately I had to bail from working on this wonderful project and can't tell when I might able to return. So I thought I should just create this pull request, since it works well despite being quite basic still.
I would have liked to figure out how to keep the camera from clipping through walls (even though that is a rare event anyway) and to emulate the original behaviour more closely (like, talking to Lord Hagen flips the camera depending on which side of his you are standing on when speaking to him).
Feedback is still massively appreciated! I will read it all and still try to fix bugs and make reasonable improvements. Thank you for your time 😃