View Issue Details
ID | Project | Category | View Status | Date Submitted | Last Update |
---|---|---|---|---|---|
0005740 | DarkRadiant | Map Editing | public | 06.09.2021 03:55 | 02.04.2022 05:56 |
Reporter | greebo | Assigned To | greebo | ||
Priority | normal | Severity | normal | Reproducibility | have not tried |
Status | closed | Resolution | fixed | ||
Product Version | 2.13.0 | ||||
Target Version | 2.14.0 | Fixed in Version | 2.14.0 | ||
Summary | 0005740: Step-rotating textures through the Surface Inspector should be using the center as pivot | ||||
Description | When changing the rotaiton/angle field in the entity inspector through the left/right arrows in the Surface Inspector, the corresponding commands "TexRotate +1" or "TexRotate -1" should be using the UV center point as rotation pivot. (Right now, hitting the rotate arrows moves the texture by hundreds of units in UV space, unless the face itself is already centered at the world origin.) | ||||
Tags | No tags attached. | ||||
Current behaviour as attached | |
If I'm not misremembering, the Flip Horizontal and Flip Vertical actions could use a similar treatment because they mirror across the axis at the origin - so they, too, have the potential to catapult a UV island to the other end of the Texture Tool. | |
Yeah, I know, they are already on my mental list. Lots of work on the road ahead. | |
Need to work on patches too | |
Improvement needed for texture aspect ratio != 1 | |
DarkRadiant: textransform a29bd814 05.09.2021 19:12 Details Diff |
0005740: New experimental brush face texture rotation implementation, which rotates the texture using the UV centroid as pivot. Lots of code to be refactored, and it appears we don't have a 3x3 Matrix type. |
Affected Issues 0005740 |
|
mod - radiantcore/brush/Face.cpp | Diff File | ||
mod - radiantcore/brush/TextureProjection.cpp | Diff File | ||
mod - radiantcore/brush/TextureProjection.h | Diff File | ||
DarkRadiant: textransform 1368551a 06.09.2021 16:04 Details Diff |
0005740: Refactoring. Introduce Matrix3, the little sister of Matrix4. |
Affected Issues 0005740 |
|
add - libs/math/Matrix3.h | Diff File | ||
mod - libs/math/Matrix4.h | Diff File | ||
add - libs/math/eigen.h | Diff File | ||
mod - test/Brush.cpp | Diff File | ||
mod - test/math/Matrix4.cpp | Diff File | ||
mod - tools/msvc/mathlib.vcxproj | Diff File | ||
mod - tools/msvc/mathlib.vcxproj.filters | Diff File | ||
DarkRadiant: textransform c6a8881e 06.09.2021 16:16 Details Diff |
0005740: Set up unit test suite |
Affected Issues 0005740 |
|
mod - libs/math/Matrix3.h | Diff File | ||
add - test/math/Matrix3.cpp | Diff File | ||
mod - tools/msvc/Tests/Tests.vcxproj | Diff File | ||
mod - tools/msvc/Tests/Tests.vcxproj.filters | Diff File | ||
DarkRadiant: textransform b4fda762 06.09.2021 16:26 Details Diff |
0005740: Port a few unit tests from the Matrix4 suite, as far as the class provides it |
Affected Issues 0005740 |
|
mod - libs/math/Matrix3.h | Diff File | ||
mod - test/CMakeLists.txt | Diff File | ||
mod - test/math/Matrix3.cpp | Diff File | ||
DarkRadiant: textransform 06c12ad3 06.09.2021 17:20 Details Diff |
0005740: Matrix3 transformations |
Affected Issues 0005740 |
|
mod - libs/math/Matrix3.h | Diff File | ||
mod - test/math/Matrix3.cpp | Diff File | ||
DarkRadiant: textransform 330f1249 08.09.2021 04:34 Details Diff |
0005740: Add a few test cases rotating some face texdefs on an angled brush. |
Affected Issues 0005740 |
|
mod - test/Brush.cpp | Diff File | ||
mod - test/algorithm/Primitives.h | Diff File | ||
add - test/resources/tdm/maps/simple_brushes.map | Diff File | ||
DarkRadiant: textransform 97156f2d 08.09.2021 18:12 Details Diff |
0005740: Add named Matrix3 constructors for the simple transform types |
Affected Issues 0005740 |
|
mod - libs/math/Matrix3.h | Diff File | ||
mod - test/math/Matrix3.cpp | Diff File | ||
DarkRadiant: textransform c6c01ead 08.09.2021 18:58 Details Diff |
0005740: Refactor Face::rotateTexdef to use the new Matrix3 class instead of custom Eigen |
Affected Issues 0005740 |
|
mod - radiantcore/brush/Face.cpp | Diff File | ||
DarkRadiant: textransform 78747549 08.09.2021 19:44 Details Diff |
0005740: Rearrangement, introduce Face::setTexDefFromPoints which does the reverse calculation |
Affected Issues 0005740 |
|
mod - radiantcore/brush/Face.cpp | Diff File | ||
mod - radiantcore/brush/Face.h | Diff File | ||
DarkRadiant: master 447e282f 09.09.2021 14:17 Details Diff |
0005740: Add missing inline qualifiers |
Affected Issues 0005740 |
|
mod - libs/math/Matrix3.h | Diff File | ||
DarkRadiant: master 2cc2f897 09.09.2021 14:18 Details Diff |
0005740: Remove the old texture rotation code which was based on the fake textdef. Add some comments about the 2x3 matrix texture projection in general. |
Affected Issues 0005740 |
|
mod - radiantcore/brush/Face.cpp | Diff File | ||
mod - radiantcore/brush/TextureMatrix.cpp | Diff File | ||
mod - radiantcore/brush/TextureMatrix.h | Diff File | ||
mod - radiantcore/brush/TextureProjection.cpp | Diff File | ||
mod - radiantcore/brush/TextureProjection.h | Diff File | ||
DarkRadiant: master 8767805e 01.10.2021 13:50 Details Diff |
0005740: Add unit test with the desired rotation behaviour of patches |
Affected Issues 0005740 |
|
mod - test/TextureManipulation.cpp | Diff File | ||
DarkRadiant: master e12b0535 01.10.2021 14:07 Details Diff |
0005740: Patch textures rotate around their center now |
Affected Issues 0005740 |
|
mod - radiantcore/patch/Patch.cpp | Diff File | ||
mod - radiantcore/patch/Patch.h | Diff File | ||
mod - radiantcore/selection/algorithm/Texturing.cpp | Diff File | ||
mod - radiantcore/selection/algorithm/Texturing.h | Diff File | ||
mod - test/TextureManipulation.cpp | Diff File | ||
DarkRadiant: master cec9770e 01.10.2021 14:27 Details Diff |
0005740: Face::rotateTexDef method is using the same rotator class as Patches |
Affected Issues 0005740 |
|
mod - radiantcore/brush/Face.cpp | Diff File | ||
mod - radiantcore/selection/algorithm/Texturing.cpp | Diff File | ||
mod - radiantcore/selection/algorithm/Texturing.h | Diff File | ||
DarkRadiant: master b1349f50 12.10.2021 14:16 Details Diff |
0005740: Add IFace::getTextureAspectRatio() method plus unit tests. |
Affected Issues 0005740 |
|
mod - include/ibrush.h | Diff File | ||
mod - radiantcore/brush/Face.cpp | Diff File | ||
mod - radiantcore/brush/Face.h | Diff File | ||
mod - test/TextureManipulation.cpp | Diff File | ||
DarkRadiant: master 8f3f0f78 12.10.2021 14:19 Details Diff |
0005740: Face rotations are now respecting the aspect ratio of the assigned editor image |
Affected Issues 0005740 |
|
mod - radiantcore/selection/algorithm/Texturing.cpp | Diff File | ||
mod - radiantcore/selection/algorithm/Texturing.h | Diff File | ||
mod - radiantcore/selection/textool/TextureToolSelectionSystem.cpp | Diff File | ||
DarkRadiant: master 04b4364d 12.10.2021 17:54 Details Diff |
0005740: Better implementation of IFace::getTexelScale(). Add unit test checking the pivoted rotation preserving texel scale |
Affected Issues 0005740 |
|
mod - radiantcore/brush/Face.cpp | Diff File | ||
mod - test/TextureManipulation.cpp | Diff File |
Date Modified | Username | Field | Change |
---|---|---|---|
06.09.2021 03:55 | greebo | New Issue | |
06.09.2021 03:56 | greebo | Assigned To | => greebo |
06.09.2021 03:56 | greebo | Status | new => assigned |
06.09.2021 04:02 | greebo | Note Added: 0014334 | |
06.09.2021 04:02 | greebo | File Added: rotate_face_textures_old.gif | |
08.09.2021 19:44 | greebo | Changeset attached | => DarkRadiant textransform a29bd814 |
08.09.2021 19:44 | greebo | Changeset attached | => DarkRadiant textransform 1368551a |
08.09.2021 19:44 | greebo | Changeset attached | => DarkRadiant textransform c6a8881e |
08.09.2021 19:44 | greebo | Changeset attached | => DarkRadiant textransform b4fda762 |
08.09.2021 19:44 | greebo | Changeset attached | => DarkRadiant textransform 06c12ad3 |
08.09.2021 19:44 | greebo | Changeset attached | => DarkRadiant textransform 330f1249 |
08.09.2021 19:44 | greebo | Changeset attached | => DarkRadiant textransform 97156f2d |
08.09.2021 19:44 | greebo | Changeset attached | => DarkRadiant textransform c6c01ead |
08.09.2021 19:44 | greebo | Changeset attached | => DarkRadiant textransform 78747549 |
09.09.2021 17:21 | greebo | Changeset attached | => DarkRadiant master 447e282f |
09.09.2021 17:21 | greebo | Changeset attached | => DarkRadiant master 2cc2f897 |
09.09.2021 17:26 | greebo | Target Version | => 2.14.0 |
09.09.2021 17:26 | greebo | Status | assigned => resolved |
09.09.2021 17:26 | greebo | Resolution | open => fixed |
09.09.2021 17:26 | greebo | Fixed in Version | => 2.14.0 |
11.09.2021 21:25 | Dragofer | Note Added: 0014353 | |
12.09.2021 04:17 | greebo | Note Added: 0014355 | |
01.10.2021 13:50 | greebo | Status | resolved => assigned |
01.10.2021 13:50 | greebo | Resolution | fixed => reopened |
01.10.2021 13:50 | greebo | Note Added: 0014384 | |
01.10.2021 14:07 | greebo | Changeset attached | => DarkRadiant master 8767805e |
01.10.2021 14:07 | greebo | Changeset attached | => DarkRadiant master e12b0535 |
01.10.2021 14:28 | greebo | Changeset attached | => DarkRadiant master cec9770e |
01.10.2021 14:28 | greebo | Status | assigned => resolved |
01.10.2021 14:28 | greebo | Resolution | reopened => fixed |
02.10.2021 07:03 | greebo | Relationship added | related to 0005768 |
12.10.2021 14:13 | greebo | Status | resolved => assigned |
12.10.2021 14:13 | greebo | Resolution | fixed => reopened |
12.10.2021 14:13 | greebo | Note Added: 0014431 | |
12.10.2021 17:54 | greebo | Changeset attached | => DarkRadiant master b1349f50 |
12.10.2021 17:54 | greebo | Changeset attached | => DarkRadiant master 8f3f0f78 |
12.10.2021 17:54 | greebo | Changeset attached | => DarkRadiant master 04b4364d |
12.10.2021 17:55 | greebo | Status | assigned => resolved |
12.10.2021 17:55 | greebo | Resolution | reopened => fixed |
02.04.2022 05:56 | greebo | Status | resolved => closed |