|
|
| Посл.отвђт | Сообщенiе |
|
|
Дата: Июн 9, 2004 03:49:53 · Поправил: _DEN_ Существует матричное уравнение. Матрицы 4 x 4. A * B = C А и C я знаю. Требуется найти B. Здесь можно поступить таким образом. Домножим обе части на обратную к A слева: A^(-1) * A * B = A^(-1) * С, или B = A^(-1) * С Вроде все просто. Теоретически. Но проблемма в том, что это дело мне надо сделать на ассемблере. Обратную матрицу можно найти по определению, можно Гаусс-Жорданом. Вообщем вопрос в следующем. Можно ли найти B не вычисляя обратную матрицу к A, или вычислить обратную матрицу более удобным для ассемблера способом? Дело в том, что это дело я хочу в 4kIntro впихнуть, так что лучше более маленький вариант, чем более быстрый. |
|
|
Дата: Июн 9, 2004 12:52:16 · Поправил: Kozyr Сам недавно пытался сделать подобную функцию. В аттаче лежит сишный вариант (от интела) и ассемблерный. Работает, только на матрице вида [ 1, 0, 0, 0 ] [ 0, 0,-1, 0 ] [ 0, 1, 0, 0 ] [ 0, 0, 0, 1 ] дает сбой. А зачем тебе обратная? Может быть можно обойтись без нее? 324114633__inverse.zip |
|
|
Дата: Июн 10, 2004 01:28:46 Мне надо было выделить матрицу gluLookAt из текущей модельно-видовой. Но, спасибо за внимание, я нашел более простое и изящное решение, такое что мне даже само уравнение решать не пришлось. Это все для построения теней в случае, когда затеняемая плоскость, затеняющий объект и источник света имеют разные модельно-видовые матрицы. А аттач я уже скачал и обязательно посмотрю. Спасибо. PS: Решение пришло в 8:00 утра после суток неспания :-) |
|
|
Дата: Июн 10, 2004 18:22:32 _DEN_ Не понял зачем тебе нужна была обратная, понял, что ты обошелся без нее :) 2ALL: Подскажите можно ли алгоритм от интела подправить, чтобы не вылетал сбой в вычислениях, когда на диагонали есть ноль. |
|
Powered by miniBB 1.6 © 2001-2002
Время загрузки страницы (сек.): 0.088 |