View Issue Details

IDProjectCategoryView StatusLast Update
0005863Spring engineGeneralpublic2018-01-13 21:19
ReporterSanguinario_Joe Assigned Tohokomoko  
PrioritynormalSeverityminorReproducibilitysometimes
Status resolvedResolutionfixed 
Product Version104.0 
Summary0005863: CMatrix44f::IsOrthoNormal is too strict
DescriptionChecking the orthogonality of a matrix is so far too strict, leading to false assertion errors.
Steps To ReproduceYou can use SpringBoard, create an unit related trigger, and start selecting units one by one. Engine is probably crashing at the second or third unit.
Additional InformationFor instance, a matrix with the following ortho and norm score vectors (see rts/System/Matrix44f.cpp:47) is failing:

ortho = (0.000000, -0.000030, -0.000148) , norma = (0.999991, 0.999991, 1.001486)

because of ortho.z and norma.z. However, it is representing just a 0.01% of non-orthogonality!

To raise the non-ortoganility tolerance to 0.1%, I suggest using the following replacement code (rts/System/Matrix44f.cpp:54):

return (ortho.equals(ZeroVector, float3(0.0015, 0.0015, 0.0015))) && (norma.equals(OnesVector, float3(0.002, 0.002, 0.002)));
TagsNo tags attached.
Checked infolog.txt for Errors

Activities

Sanguinario_Joe

2018-01-08 15:30

reporter   ~0018717

BTW, it is probably related with that:

https://springrts.com/mantis/view.php?id=4012

Kloot

2018-01-08 21:48

developer   ~0018718

Fix 2cc5cddcb53e30f66ed3cb95867758c6303cb439 committed to develop branch: fix 0005863, repo: spring changeset id: 9390

hokomoko

2018-01-13 21:19

developer   ~0018728

Fix ab2f5dcc5c711cc2e66bc8046c179b1bfe19759c committed to maintenance branch: fix 0005863

(cherry picked from commit 2cc5cddcb53e30f66ed3cb95867758c6303cb439), repo: spring changeset id: 9433

Issue History

Date Modified Username Field Change
2018-01-08 15:30 Sanguinario_Joe New Issue
2018-01-08 15:30 Sanguinario_Joe Note Added: 0018717
2018-01-08 21:48 Kloot Changeset attached => spring develop 2cc5cddc
2018-01-08 21:48 Kloot Note Added: 0018718
2018-01-08 21:48 Kloot Assigned To => Kloot
2018-01-08 21:48 Kloot Status new => resolved
2018-01-08 21:48 Kloot Resolution open => fixed
2018-01-13 21:19 hokomoko Changeset attached => spring maintenance ab2f5dcc
2018-01-13 21:19 hokomoko Note Added: 0018728
2018-01-13 21:19 hokomoko Assigned To Kloot => hokomoko