DarkRadiant: master c75a91bd

Author Committer Branch Timestamp Parent
greebo greebo master 03.10.2021 04:35 master 8385d906
Affected Issues  0005770: Some brushes change shape or disappear when rotated or duplicated
Changeset 0005770: Change emitTextureCoordinates() behaviour to not call Face::plane3() which triggers a lot of callbacks internally. Instead, use the m_planeTransformed member which is up to date enough for all the call sites I checked. Texture coordinates are usually emitted long after the rest of the transform is calculated (in particular the normal vector), so it's not necessary to trigger some lazy transform evaluation callback just to apply the texture matrix. The method emitTextureCoordinates should do just as the name states, it's the job of the caller to make sure the normal vector is ready before emitTextureCoordinates is called.
mod - radiantcore/brush/Brush.cpp Diff File
mod - radiantcore/brush/Face.cpp Diff File
mod - radiantcore/brush/Face.h Diff File