View Issue Details
ID | Project | Category | View Status | Date Submitted | Last Update |
---|---|---|---|---|---|
0005878 | DarkRadiant | GUI | public | 12.01.2022 13:55 | 05.01.2023 16:25 |
Reporter | AluminumHaste | Assigned To | greebo | ||
Priority | normal | Severity | normal | Reproducibility | always |
Status | closed | Resolution | fixed | ||
Product Version | 2.14.0 | ||||
Target Version | 3.0.0 | Fixed in Version | 3.0.0 | ||
Summary | 0005878: Free Rotation not working anymore, can only rotate along 3 axes | ||||
Description | For some reason and I can't figure out why, I can no longer free rotate things in DarkRadiant like I used to be able to. I can only rotate on the 3 axis. I looked at the options for but can't find one that turns this feature back on. Recorded a video in case I'm confusing everyone. First DarkRadiant is 1.8.1 from 2014, second one is latest release | ||||
Steps To Reproduce | In DR 2.14, select a brush, and try to freely rotate it, nothing happens when you click. Only clicking on the XYZ circles allows rotation now. | ||||
Additional Information | https://youtu.be/7SsQX8GO5Jk | ||||
Tags | No tags attached. | ||||
Forum discussion: https://forums.thedarkmod.com/index.php?/topic/21239-can-only-rotate-on-axes-now/#comment-468750 | |
Unfortunately I have to unassign this one since I do not have the mathematical knowledge to fix it. I have established that the call to Circle_BestPoint() in RotateManipulator::testSelect() is returning an invalid intersection regardless of the mouse click position, which results in the _circleSphere never being a candidate for selection even if none of the other manipulator elements were clicked on. However the maths code in Circle_BestPoint() and its callees is beyond my ability to understand or effectively debug. | |
I did a Git Bisect which revealed that this is the commit which introduced the problem. This seems to relate only to render so it is not clear how it affects selection, unless it's just a mismatch between the rendered point positions and what the selection system is testing for. The commit does not touch Circle_BestPoint() at all so it does not appear there is any problem with the maths in this function. === commit 26ab05dffc5380e066251b278d3c196222c56492 (refs/bisect/bad) Author: codereader <greebo@angua.at> Date: Wed Oct 13 10:49:55 2021 +0200 0005733: Compensate the view's projection aspect ratio when rendering the rotate manipulator === |
|
@OrbWeaver: thanks for spending the time on the bisect. The triangle winding order has most likely been changed in the commit you tracked down. | |
DarkRadiant: master fa260f0d 26.04.2022 18:53 Details Diff |
0005878: RenderableSemiCircle uses Matrix4 for axis substitution Instead of using a RemapPolicy struct passed via a template parameter (which results in a separate copy of this non-trivial constructor being generated for each axis), pass in a simple Matrix4 which is used to substitute the axes. |
Affected Issues 0005878 |
|
mod - radiantcore/selection/manipulators/Renderables.h | Diff File | ||
mod - radiantcore/selection/manipulators/RotateManipulator.cpp | Diff File | ||
mod - radiantcore/selection/manipulators/RotateManipulator.h | Diff File | ||
DarkRadiant: master 8127bccc 09.06.2022 04:01 Details Diff |
0005878: Prevent free-rotate selection test culling all the circle triangles. Most likely I accidentally reversed the winding direction in 26ab05df. |
Affected Issues 0005878 |
|
mod - radiantcore/selection/manipulators/RotateManipulator.cpp | Diff File |
Date Modified | Username | Field | Change |
---|---|---|---|
12.01.2022 13:55 | AluminumHaste | New Issue | |
12.01.2022 13:55 | AluminumHaste | Note Added: 0014672 | |
22.02.2022 20:08 | orbweaver | Assigned To | => orbweaver |
22.02.2022 20:08 | orbweaver | Status | new => assigned |
01.06.2022 19:52 | orbweaver | Assigned To | orbweaver => |
01.06.2022 19:57 | orbweaver | Status | assigned => confirmed |
01.06.2022 19:57 | orbweaver | Note Added: 0014838 | |
08.06.2022 19:07 | orbweaver | Note Added: 0014847 | |
09.06.2022 03:58 | greebo | Assigned To | => greebo |
09.06.2022 03:58 | greebo | Status | confirmed => assigned |
09.06.2022 03:59 | greebo | Target Version | => 3.0.0 |
09.06.2022 03:59 | greebo | Summary | Can only rotate along 3 axis now. => Free Rotation not working anymore, can only rotate along 3 axes |
09.06.2022 04:05 | orbweaver | Changeset attached | => DarkRadiant master fa260f0d |
09.06.2022 04:05 | greebo | Changeset attached | => DarkRadiant master 8127bccc |
09.06.2022 04:06 | greebo | Status | assigned => resolved |
09.06.2022 04:06 | greebo | Resolution | open => fixed |
09.06.2022 04:06 | greebo | Fixed in Version | => 3.0.0 |
09.06.2022 04:06 | greebo | Note Added: 0014849 | |
05.01.2023 16:25 | greebo | Status | resolved => closed |