beyond-all-reason / beyond-all-reason/RecoilEngine
Dolly camera post-mortem review
- Dominant language
- C++
- Stars
- 679
- Forks
- 290
- Avg merge
- 3d 2h
- Merged PRs (30d)
- 40
Description
Mostly for the Lua API.
- [ ] `RunDollyCamera` should probably accept the runtime in seconds (not milli)
- [x] `PauseDollyCamera` should have a "pause now" argument, perhaps if you pass `nil`. I assume that's what the current default value of -1 does, if so then just document that in the luadoc.
- [ ] `PauseDollyCamera` should probably do something about values outside of the 0-1 range. Clamp or reject
- [ ] `SetDollyCamera[Look]Curve` should have their args documented. What they mean and what format they are in
- [ ] `SetDollyCamera[Relative]Mode` shouldn't accept magic values 1 and 2. Split it into functions, perhaps make the other existing functions also set mode
- [x] `SetDollyCameraLookPosition` should accept floats in addition to ints
- [ ] make `SetDollyCameraLookUnit` give feedback if given unit is not currently visible (perhaps because it does not exist). Return a bool or something
- [x] make sure `SetDollyCameraLookUnit` obeys LoS rules, i.e. stop tracking if the unit goes into fog of war
- [x] check #1757.
Contributor guide
Research direction
Start with the Lua API entry points named in the checklist: RunDollyCamera, PauseDollyCamera, SetDollyCamera[Look]Curve, SetDollyCamera[Relative]Mode, SetDollyCameraLookPosition, and SetDollyCameraLookUnit. Review the existing argument handling and documentation, then resolve the remaining unchecked behavior and API questions while confirming the completed items and #1757. Done means the agreed API behavior is implemented and documented for each remaining item.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- cpp, lua
- Domain
- api, game-dev
- Issue type
- Feature
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 25/100