Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
Ablesons
three.js
提交
4a34b12a
T
three.js
项目概览
Ablesons
/
three.js
与 Fork 源项目一致
从无法访问的项目Fork
通知
2
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
T
three.js
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
前往新版Gitcode,体验更适合开发者的 AI 搜索 >>
提交
4a34b12a
编写于
2月 26, 2016
作者:
T
tschw
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
Matrix3: Let getNormalMatrix use new setFromMatrix4.
- Also linearize memory access in set.
上级
6989a8d4
变更
1
隐藏空白更改
内联
并排
Showing
1 changed file
with
21 addition
and
31 deletion
+21
-31
src/math/Matrix3.js
src/math/Matrix3.js
+21
-31
未找到文件。
src/math/Matrix3.js
浏览文件 @
4a34b12a
...
...
@@ -31,9 +31,9 @@ THREE.Matrix3.prototype = {
var
te
=
this
.
elements
;
te
[
0
]
=
n11
;
te
[
3
]
=
n12
;
te
[
6
]
=
n13
;
te
[
1
]
=
n21
;
te
[
4
]
=
n22
;
te
[
7
]
=
n23
;
te
[
2
]
=
n31
;
te
[
5
]
=
n32
;
te
[
8
]
=
n33
;
te
[
0
]
=
n11
;
te
[
1
]
=
n21
;
te
[
2
]
=
n31
;
te
[
3
]
=
n12
;
te
[
4
]
=
n22
;
te
[
5
]
=
n32
;
te
[
6
]
=
n13
;
te
[
7
]
=
n23
;
te
[
8
]
=
n33
;
return
this
;
...
...
@@ -75,6 +75,22 @@ THREE.Matrix3.prototype = {
},
setFromMatrix4
:
function
(
m
)
{
var
me
=
m
.
elements
;
this
.
set
(
me
[
0
],
me
[
4
],
me
[
8
],
me
[
1
],
me
[
5
],
me
[
9
],
me
[
2
],
me
[
6
],
me
[
10
]
);
return
this
;
},
applyToVector3Array
:
function
()
{
var
v1
;
...
...
@@ -237,35 +253,9 @@ THREE.Matrix3.prototype = {
},
getNormalMatrix
:
function
(
matrix
)
{
// input: THREE.Matrix4
// ( based on http://code.google.com/p/webgl-mjs/ )
var
me
=
matrix
.
elements
;
var
te
=
this
.
elements
;
te
[
0
]
=
me
[
10
]
*
me
[
5
]
-
me
[
6
]
*
me
[
9
];
te
[
1
]
=
-
me
[
10
]
*
me
[
1
]
+
me
[
2
]
*
me
[
9
];
te
[
2
]
=
me
[
6
]
*
me
[
1
]
-
me
[
2
]
*
me
[
5
];
te
[
3
]
=
-
me
[
10
]
*
me
[
4
]
+
me
[
6
]
*
me
[
8
];
te
[
4
]
=
me
[
10
]
*
me
[
0
]
-
me
[
2
]
*
me
[
8
];
te
[
5
]
=
-
me
[
6
]
*
me
[
0
]
+
me
[
2
]
*
me
[
4
];
te
[
6
]
=
me
[
9
]
*
me
[
4
]
-
me
[
5
]
*
me
[
8
];
te
[
7
]
=
-
me
[
9
]
*
me
[
0
]
+
me
[
1
]
*
me
[
8
];
te
[
8
]
=
me
[
5
]
*
me
[
0
]
-
me
[
1
]
*
me
[
4
];
var
det
=
me
[
0
]
*
te
[
0
]
+
me
[
1
]
*
te
[
3
]
+
me
[
2
]
*
te
[
6
];
if
(
det
===
0
)
{
console
.
warn
(
"
THREE.Matrix3.getNormalMatrix(): can't invert matrix, determinant is 0
"
);
return
this
.
identity
();
}
getNormalMatrix
:
function
(
matrix4
)
{
return
this
.
multiplyScalar
(
1.0
/
det
).
transpose
();
return
this
.
setFromMatrix4
(
matrix4
).
getInverse
(
this
).
transpose
();
},
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录