Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
车家大少爷
three.js
提交
225947aa
T
three.js
项目概览
车家大少爷
/
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,发现更多精彩内容 >>
提交
225947aa
编写于
6月 09, 2010
作者:
M
Mr.doob
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
- Minor clean up
上级
9ccd20f6
变更
3
展开全部
隐藏空白更改
内联
并排
Showing
3 changed file
with
35 addition
and
46 deletion
+35
-46
build/three.js
build/three.js
+1
-1
src/renderers/CanvasRenderer.js
src/renderers/CanvasRenderer.js
+32
-43
src/renderers/Renderer.js
src/renderers/Renderer.js
+2
-2
未找到文件。
build/three.js
浏览文件 @
225947aa
此差异已折叠。
点击以展开。
src/renderers/CanvasRenderer.js
浏览文件 @
225947aa
...
@@ -31,8 +31,10 @@ THREE.CanvasRenderer = function () {
...
@@ -31,8 +31,10 @@ THREE.CanvasRenderer = function () {
var
i
,
j
,
element
,
pi2
=
Math
.
PI
*
2
,
var
i
,
j
,
element
,
pi2
=
Math
.
PI
*
2
,
elementsLength
,
material
,
materialLength
,
elementsLength
,
material
,
materialLength
,
v1x
,
v1y
,
v2x
,
v2y
,
v3x
,
v3y
,
v4x
,
v4y
,
v1x
,
v1y
,
v2x
,
v2y
,
v3x
,
v3y
,
v4x
,
v4y
,
uv1
=
new
THREE
.
Vector2
(),
uv2
=
new
THREE
.
Vector2
(),
uv3
=
new
THREE
.
Vector2
(),
uv1
=
new
THREE
.
Vector2
(),
uv2
=
new
THREE
.
Vector2
(),
uv3
=
new
THREE
.
Vector2
(),
suv1
=
new
THREE
.
Vector2
(),
suv2
=
new
THREE
.
Vector2
(),
suv3
=
new
THREE
.
Vector2
(),
suv1
=
new
THREE
.
Vector2
(),
suv2
=
new
THREE
.
Vector2
(),
suv3
=
new
THREE
.
Vector2
(),
suv1x
,
suv1y
,
suv2x
,
suv2y
,
suv3x
,
suv3y
,
denom
,
m11
,
m12
,
m21
,
m22
,
dx
,
dy
,
bitmap
,
bitmap_width
,
bitmap_height
,
bitmap
,
bitmap_width
,
bitmap_height
,
size
;
size
;
...
@@ -189,13 +191,13 @@ THREE.CanvasRenderer = function () {
...
@@ -189,13 +191,13 @@ THREE.CanvasRenderer = function () {
}
else
if
(
material
instanceof
THREE
.
BitmapUVMappingMaterial
)
{
}
else
if
(
material
instanceof
THREE
.
BitmapUVMappingMaterial
)
{
uv1
.
copy
(
element
.
uvs
[
0
]
),
uv2
.
copy
(
element
.
uvs
[
1
]
),
uv3
.
copy
(
element
.
uvs
[
2
]
),
bitmap
=
material
.
bitmap
;
suv1
.
copy
(
uv1
),
suv2
.
copy
(
uv2
),
suv3
.
copy
(
uv3
),
bitmap_width
=
bitmap
.
width
;
bitmap
=
material
.
bitmap
,
bitmap_width
=
bitmap
.
width
,
bitmap_height
=
bitmap
.
height
;
bitmap_height
=
bitmap
.
height
;
uv1
.
copy
(
element
.
uvs
[
0
]
);
uv2
.
copy
(
element
.
uvs
[
1
]
);
uv3
.
copy
(
element
.
uvs
[
2
]
);
suv1
.
copy
(
uv1
);
suv2
.
copy
(
uv2
);
suv3
.
copy
(
uv3
);
suv1
.
x
*=
bitmap_width
;
suv1
.
y
*=
bitmap_height
;
suv1
.
x
*=
bitmap_width
;
suv1
.
y
*=
bitmap_height
;
suv2
.
x
*=
bitmap_width
;
suv2
.
y
*=
bitmap_height
;
suv2
.
x
*=
bitmap_width
;
suv2
.
y
*=
bitmap_height
;
suv3
.
x
*=
bitmap_width
;
suv3
.
y
*=
bitmap_height
;
suv3
.
x
*=
bitmap_width
;
suv3
.
y
*=
bitmap_height
;
...
@@ -204,22 +206,34 @@ THREE.CanvasRenderer = function () {
...
@@ -204,22 +206,34 @@ THREE.CanvasRenderer = function () {
expand
(
suv2
,
suv3
);
expand
(
suv2
,
suv3
);
expand
(
suv3
,
suv1
);
expand
(
suv3
,
suv1
);
suv1
.
x
=
uv1
.
x
==
0
?
1
:
suv1
.
x
;
suv1x
=
(
uv1
.
x
==
0
)
?
1
:
(
uv1
.
x
==
1
)
?
suv1
.
x
-
1
:
suv1
.
x
;
suv1
.
x
=
uv1
.
x
==
1
?
bitmap_width
-
1
:
suv1
.
x
;
suv1y
=
(
uv1
.
y
==
0
)
?
1
:
(
uv1
.
y
==
1
)
?
suv1
.
y
-
1
:
suv1
.
y
;
suv1
.
y
=
uv1
.
y
==
0
?
1
:
suv1
.
y
;
suv1
.
y
=
uv1
.
y
==
1
?
bitmap_height
-
1
:
suv1
.
y
;
suv2x
=
(
uv2
.
x
==
0
)
?
1
:
(
uv2
.
x
==
1
)
?
suv2
.
x
-
1
:
suv2
.
x
;
suv2y
=
(
uv2
.
y
==
0
)
?
1
:
(
uv2
.
y
==
1
)
?
suv2
.
y
-
1
:
suv2
.
y
;
suv3x
=
(
uv3
.
x
==
0
)
?
1
:
(
uv3
.
x
==
1
)
?
suv3
.
x
-
1
:
suv3
.
x
;
suv3y
=
(
uv3
.
y
==
0
)
?
1
:
(
uv3
.
y
==
1
)
?
suv3
.
y
-
1
:
suv3
.
y
;
suv2
.
x
=
uv2
.
x
==
0
?
1
:
suv2
.
x
;
// Textured triangle drawing by Thatcher Ulrich.
suv2
.
x
=
uv2
.
x
==
1
?
bitmap_width
-
1
:
suv2
.
x
;
// http://tulrich.com/geekstuff/canvas/jsgl.js
suv2
.
y
=
uv2
.
y
==
0
?
1
:
suv2
.
y
;
suv2
.
y
=
uv2
.
y
==
1
?
bitmap_height
-
1
:
suv2
.
y
;
suv3
.
x
=
uv3
.
x
==
0
?
1
:
suv3
.
x
;
_context
.
save
();
suv3
.
x
=
uv3
.
x
==
1
?
bitmap_width
-
1
:
suv3
.
x
;
_context
.
clip
();
suv3
.
y
=
uv3
.
y
==
0
?
1
:
suv3
.
y
;
suv3
.
y
=
uv3
.
y
==
1
?
bitmap_height
-
1
:
suv3
.
y
;
drawTexturedTriangle
(
bitmap
,
_bboxRect
,
v1x
,
v1y
,
v2x
,
v2y
,
v3x
,
v3y
,
suv1
.
x
,
suv1
.
y
,
suv2
.
x
,
suv2
.
y
,
suv3
.
x
,
suv3
.
y
);
denom
=
suv1x
*
(
suv3y
-
suv2y
)
-
suv2x
*
suv3y
+
suv3x
*
suv2y
+
(
suv2x
-
suv3x
)
*
suv1y
;
m11
=
-
(
suv1y
*
(
v3x
-
v2x
)
-
suv2y
*
v3x
+
suv3y
*
v2x
+
(
suv2y
-
suv3y
)
*
v1x
)
/
denom
;
m12
=
(
suv2y
*
v3y
+
suv1y
*
(
v2y
-
v3y
)
-
suv3y
*
v2y
+
(
suv3y
-
suv2y
)
*
v1y
)
/
denom
;
m21
=
(
suv1x
*
(
v3x
-
v2x
)
-
suv2x
*
v3x
+
suv3x
*
v2x
+
(
suv2x
-
suv3x
)
*
v1x
)
/
denom
;
m22
=
-
(
suv2x
*
v3y
+
suv1x
*
(
v2y
-
v3y
)
-
suv3x
*
v2y
+
(
suv3x
-
suv2x
)
*
v1y
)
/
denom
;
dx
=
(
suv1x
*
(
suv3y
*
v2x
-
suv2y
*
v3x
)
+
suv1y
*
(
suv2x
*
v3x
-
suv3x
*
v2x
)
+
(
suv3x
*
suv2y
-
suv2x
*
suv3y
)
*
v1x
)
/
denom
;
dy
=
(
suv1x
*
(
suv3y
*
v2y
-
suv2y
*
v3y
)
+
suv1y
*
(
suv2x
*
v3y
-
suv3x
*
v2y
)
+
(
suv3x
*
suv2y
-
suv2x
*
suv3y
)
*
v1y
)
/
denom
;
_context
.
transform
(
m11
,
m12
,
m21
,
m22
,
dx
,
dy
);
_context
.
drawImage
(
bitmap
,
0
,
0
);
_context
.
restore
();
}
}
...
@@ -237,31 +251,6 @@ THREE.CanvasRenderer = function () {
...
@@ -237,31 +251,6 @@ THREE.CanvasRenderer = function () {
}
}
// Textured triangle drawing by Thatcher Ulrich.
// http://tulrich.com/geekstuff/canvas/jsgl.js
function
drawTexturedTriangle
(
image
,
bbox
,
x0
,
y0
,
x1
,
y1
,
x2
,
y2
,
sx0
,
sy0
,
sx1
,
sy1
,
sx2
,
sy2
)
{
var
denom
,
m11
,
m12
,
m21
,
m22
,
dx
,
dy
;
_context
.
save
();
_context
.
clip
();
denom
=
sx0
*
(
sy2
-
sy1
)
-
sx1
*
sy2
+
sx2
*
sy1
+
(
sx1
-
sx2
)
*
sy0
;
m11
=
-
(
sy0
*
(
x2
-
x1
)
-
sy1
*
x2
+
sy2
*
x1
+
(
sy1
-
sy2
)
*
x0
)
/
denom
;
m12
=
(
sy1
*
y2
+
sy0
*
(
y1
-
y2
)
-
sy2
*
y1
+
(
sy2
-
sy1
)
*
y0
)
/
denom
;
m21
=
(
sx0
*
(
x2
-
x1
)
-
sx1
*
x2
+
sx2
*
x1
+
(
sx1
-
sx2
)
*
x0
)
/
denom
;
m22
=
-
(
sx1
*
y2
+
sx0
*
(
y1
-
y2
)
-
sx2
*
y1
+
(
sx2
-
sx1
)
*
y0
)
/
denom
;
dx
=
(
sx0
*
(
sy2
*
x1
-
sy1
*
x2
)
+
sy0
*
(
sx1
*
x2
-
sx2
*
x1
)
+
(
sx2
*
sy1
-
sx1
*
sy2
)
*
x0
)
/
denom
;
dy
=
(
sx0
*
(
sy2
*
y1
-
sy1
*
y2
)
+
sy0
*
(
sx1
*
y2
-
sx2
*
y1
)
+
(
sx2
*
sy1
-
sx1
*
sy2
)
*
y0
)
/
denom
;
_context
.
transform
(
m11
,
m12
,
m21
,
m22
,
dx
,
dy
);
_context
.
drawImage
(
image
,
0
,
0
);
_context
.
restore
();
}
function
expand
(
a
,
b
)
{
function
expand
(
a
,
b
)
{
_vector2
.
sub
(
b
,
a
);
_vector2
.
sub
(
b
,
a
);
...
...
src/renderers/Renderer.js
浏览文件 @
225947aa
...
@@ -13,7 +13,7 @@ THREE.Renderer = function() {
...
@@ -13,7 +13,7 @@ THREE.Renderer = function() {
this
.
renderList
;
this
.
renderList
;
function
s
ort
(
a
,
b
)
{
function
painterS
ort
(
a
,
b
)
{
return
a
.
screenZ
-
b
.
screenZ
;
return
a
.
screenZ
-
b
.
screenZ
;
...
@@ -241,7 +241,7 @@ THREE.Renderer = function() {
...
@@ -241,7 +241,7 @@ THREE.Renderer = function() {
}
}
}
}
this
.
renderList
.
sort
(
s
ort
);
this
.
renderList
.
sort
(
painterS
ort
);
}
}
}
}
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录