Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
Ablesons
three.js
提交
2922ff6a
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,发现更多精彩内容 >>
提交
2922ff6a
编写于
11月 14, 2012
作者:
M
Mr.doob
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
Updated some examples to the new MeshFaceMaterial usage.
上级
d4e37c78
变更
9
展开全部
显示空白变更内容
内联
并排
Showing
9 changed file
with
111 addition
and
138 deletion
+111
-138
build/three.js
build/three.js
+3
-5
build/three.min.js
build/three.min.js
+90
-90
examples/canvas_geometry_panorama.html
examples/canvas_geometry_panorama.html
+1
-1
examples/canvas_geometry_panorama_fisheye.html
examples/canvas_geometry_panorama_fisheye.html
+1
-1
examples/canvas_materials.html
examples/canvas_materials.html
+5
-5
examples/misc_ubiquity_test.html
examples/misc_ubiquity_test.html
+5
-4
examples/webgl_materials.html
examples/webgl_materials.html
+2
-11
examples/webgl_sandbox.html
examples/webgl_sandbox.html
+1
-16
src/core/Projector.js
src/core/Projector.js
+3
-5
未找到文件。
build/three.js
浏览文件 @
2922ff6a
...
@@ -3947,9 +3947,8 @@ THREE.Projector = function() {
...
@@ -3947,9 +3947,8 @@ THREE.Projector = function() {
this.projectScene = function ( scene, camera, sortObjects, sortElements ) {
this.projectScene = function ( scene, camera, sortObjects, sortElements ) {
var near = camera.near, far = camera.far, visible = false,
var near = camera.near, far = camera.far, visible = false,
o, ol, v, vl, f, fl, n, nl, c, cl, u, ul, object,
o, ol, v, vl, f, fl, n, nl, c, cl, u, ul, object, modelMatrix,
modelMatrix,
geometry, vertices, vertex, vertexPositionScreen,
geometry, geometryMaterials, vertices, vertex, vertexPositionScreen,
faces, face, faceVertexNormals, normal, faceVertexUvs, uvs,
faces, face, faceVertexNormals, normal, faceVertexUvs, uvs,
v1, v2, v3, v4, isFaceMaterial, material, side;
v1, v2, v3, v4, isFaceMaterial, material, side;
...
@@ -3992,7 +3991,6 @@ THREE.Projector = function() {
...
@@ -3992,7 +3991,6 @@ THREE.Projector = function() {
_normalMatrix.transpose();
_normalMatrix.transpose();
isFaceMaterial = object.material instanceof THREE.MeshFaceMaterial;
isFaceMaterial = object.material instanceof THREE.MeshFaceMaterial;
geometryMaterials = ( isFaceMaterial && object.material.materials.length > 0 ) ? object.material.materials : object.geometry.materials;
side = object.material.side;
side = object.material.side;
...
@@ -4017,7 +4015,7 @@ THREE.Projector = function() {
...
@@ -4017,7 +4015,7 @@ THREE.Projector = function() {
face = faces[ f ];
face = faces[ f ];
material = isFaceMaterial === true ?
geometryM
aterials[ face.materialIndex ] : object.material;
material = isFaceMaterial === true ?
object.material.m
aterials[ face.materialIndex ] : object.material;
if ( material === undefined ) continue;
if ( material === undefined ) continue;
...
...
build/three.min.js
浏览文件 @
2922ff6a
此差异已折叠。
点击以展开。
examples/canvas_geometry_panorama.html
浏览文件 @
2922ff6a
...
@@ -77,7 +77,7 @@
...
@@ -77,7 +77,7 @@
];
];
mesh
=
new
THREE
.
Mesh
(
new
THREE
.
CubeGeometry
(
300
,
300
,
300
,
7
,
7
,
7
,
materials
),
new
THREE
.
MeshFaceMaterial
(
)
);
mesh
=
new
THREE
.
Mesh
(
new
THREE
.
CubeGeometry
(
300
,
300
,
300
,
7
,
7
,
7
),
new
THREE
.
MeshFaceMaterial
(
materials
)
);
mesh
.
scale
.
x
=
-
1
;
mesh
.
scale
.
x
=
-
1
;
scene
.
add
(
mesh
);
scene
.
add
(
mesh
);
...
...
examples/canvas_geometry_panorama_fisheye.html
浏览文件 @
2922ff6a
...
@@ -77,7 +77,7 @@
...
@@ -77,7 +77,7 @@
];
];
mesh
=
new
THREE
.
Mesh
(
new
THREE
.
CubeGeometry
(
300
,
300
,
300
,
7
,
7
,
7
,
materials
),
new
THREE
.
MeshFaceMaterial
(
)
);
mesh
=
new
THREE
.
Mesh
(
new
THREE
.
CubeGeometry
(
300
,
300
,
300
,
7
,
7
,
7
),
new
THREE
.
MeshFaceMaterial
(
materials
)
);
mesh
.
scale
.
x
=
-
1
;
mesh
.
scale
.
x
=
-
1
;
scene
.
add
(
mesh
);
scene
.
add
(
mesh
);
...
...
examples/canvas_materials.html
浏览文件 @
2922ff6a
...
@@ -65,7 +65,7 @@
...
@@ -65,7 +65,7 @@
var
geometry
=
new
THREE
.
SphereGeometry
(
100
,
14
,
7
,
false
);
var
geometry
=
new
THREE
.
SphereGeometry
(
100
,
14
,
7
,
false
);
geometry
.
materials
=
[
var
materials
=
[
new
THREE
.
MeshBasicMaterial
(
{
color
:
0x00ffff
,
wireframe
:
true
,
side
:
THREE
.
DoubleSide
}
),
new
THREE
.
MeshBasicMaterial
(
{
color
:
0x00ffff
,
wireframe
:
true
,
side
:
THREE
.
DoubleSide
}
),
new
THREE
.
MeshBasicMaterial
(
{
color
:
0xff0000
,
blending
:
THREE
.
AdditiveBlending
,
side
:
THREE
.
DoubleSide
}
),
new
THREE
.
MeshBasicMaterial
(
{
color
:
0xff0000
,
blending
:
THREE
.
AdditiveBlending
,
side
:
THREE
.
DoubleSide
}
),
...
@@ -81,17 +81,17 @@
...
@@ -81,17 +81,17 @@
for
(
var
i
=
0
,
l
=
geometry
.
faces
.
length
;
i
<
l
;
i
++
)
{
for
(
var
i
=
0
,
l
=
geometry
.
faces
.
length
;
i
<
l
;
i
++
)
{
var
face
=
geometry
.
faces
[
i
];
var
face
=
geometry
.
faces
[
i
];
if
(
Math
.
random
()
>
0.5
)
face
.
materialIndex
=
Math
.
floor
(
Math
.
random
()
*
geometry
.
materials
.
length
);
if
(
Math
.
random
()
>
0.5
)
face
.
materialIndex
=
Math
.
floor
(
Math
.
random
()
*
materials
.
length
);
}
}
geometry
.
materials
.
push
(
new
THREE
.
MeshFaceMaterial
(
)
);
materials
.
push
(
new
THREE
.
MeshFaceMaterial
(
materials
)
);
objects
=
[];
objects
=
[];
for
(
var
i
=
0
,
l
=
geometry
.
materials
.
length
;
i
<
l
;
i
++
)
{
for
(
var
i
=
0
,
l
=
materials
.
length
;
i
<
l
;
i
++
)
{
var
sphere
=
new
THREE
.
Mesh
(
geometry
,
geometry
.
materials
[
i
]
);
var
sphere
=
new
THREE
.
Mesh
(
geometry
,
materials
[
i
]
);
sphere
.
position
.
x
=
(
i
%
5
)
*
200
-
400
;
sphere
.
position
.
x
=
(
i
%
5
)
*
200
-
400
;
sphere
.
position
.
z
=
Math
.
floor
(
i
/
5
)
*
200
-
200
;
sphere
.
position
.
z
=
Math
.
floor
(
i
/
5
)
*
200
-
200
;
...
...
examples/misc_ubiquity_test.html
浏览文件 @
2922ff6a
...
@@ -96,6 +96,7 @@
...
@@ -96,6 +96,7 @@
// POLYFIELD
// POLYFIELD
var
geometry
=
new
THREE
.
Geometry
();
var
geometry
=
new
THREE
.
Geometry
();
var
materials
=
[];
for
(
var
i
=
0
;
i
<
100
;
i
++
)
{
for
(
var
i
=
0
;
i
<
100
;
i
++
)
{
...
@@ -109,12 +110,12 @@
...
@@ -109,12 +110,12 @@
v1
.
addSelf
(
v
);
v1
.
addSelf
(
v
);
v2
.
addSelf
(
v
);
v2
.
addSelf
(
v
);
var
face
=
new
THREE
.
Face3
(
geometry
.
vertices
.
push
(
v0
)
-
1
,
geometry
.
vertices
.
push
(
v1
)
-
1
,
geometry
.
vertices
.
push
(
v2
)
-
1
,
null
,
null
,
geometry
.
materials
.
length
);
var
face
=
new
THREE
.
Face3
(
geometry
.
vertices
.
push
(
v0
)
-
1
,
geometry
.
vertices
.
push
(
v1
)
-
1
,
geometry
.
vertices
.
push
(
v2
)
-
1
,
null
,
null
,
i
);
geometry
.
materials
.
push
(
new
THREE
.
MeshBasicMaterial
(
{
color
:
Math
.
random
()
*
0xffffff
,
side
:
THREE
.
DoubleSide
}
)
);
geometry
.
faces
.
push
(
face
);
geometry
.
faces
.
push
(
face
);
materials
.
push
(
new
THREE
.
MeshBasicMaterial
(
{
color
:
Math
.
random
()
*
0xffffff
,
side
:
THREE
.
DoubleSide
}
)
);
}
}
geometry
.
computeFaceNormals
();
geometry
.
computeFaceNormals
();
...
@@ -124,7 +125,7 @@
...
@@ -124,7 +125,7 @@
group
.
scale
.
x
=
group
.
scale
.
y
=
group
.
scale
.
z
=
2
;
group
.
scale
.
x
=
group
.
scale
.
y
=
group
.
scale
.
z
=
2
;
scene
.
add
(
group
);
scene
.
add
(
group
);
mesh
=
new
THREE
.
Mesh
(
geometry
,
new
THREE
.
MeshFaceMaterial
()
);
mesh
=
new
THREE
.
Mesh
(
geometry
,
new
THREE
.
MeshFaceMaterial
(
materials
)
);
group
.
add
(
mesh
);
group
.
add
(
mesh
);
// LIGHTS
// LIGHTS
...
...
examples/webgl_materials.html
浏览文件 @
2922ff6a
...
@@ -96,22 +96,13 @@
...
@@ -96,22 +96,13 @@
for
(
var
i
=
0
,
l
=
geometry_pieces
.
faces
.
length
;
i
<
l
;
i
++
)
{
for
(
var
i
=
0
,
l
=
geometry_pieces
.
faces
.
length
;
i
<
l
;
i
++
)
{
var
face
=
geometry_pieces
.
faces
[
i
];
var
face
=
geometry_pieces
.
faces
[
i
];
if
(
Math
.
random
()
>
0.7
)
{
face
.
materialIndex
=
Math
.
floor
(
Math
.
random
()
*
materials
.
length
);
face
.
materialIndex
=
Math
.
floor
(
Math
.
random
()
*
materials
.
length
);
}
else
{
face
.
materialIndex
=
0
;
}
}
}
geometry_pieces
.
materials
=
materials
;
geometry_pieces
.
materials
=
materials
;
materials
.
push
(
new
THREE
.
MeshFaceMaterial
()
);
materials
.
push
(
new
THREE
.
MeshFaceMaterial
(
materials
)
);
objects
=
[];
objects
=
[];
...
...
examples/webgl_sandbox.html
浏览文件 @
2922ff6a
...
@@ -97,11 +97,7 @@
...
@@ -97,11 +97,7 @@
new
THREE
.
MeshLambertMaterial
(
{
color
:
0xdddddd
,
shading
:
THREE
.
FlatShading
}
),
new
THREE
.
MeshLambertMaterial
(
{
color
:
0xdddddd
,
shading
:
THREE
.
FlatShading
}
),
new
THREE
.
MeshLambertMaterial
(
{
color
:
0xdddddd
,
shading
:
THREE
.
SmoothShading
}
),
new
THREE
.
MeshLambertMaterial
(
{
color
:
0xdddddd
,
shading
:
THREE
.
SmoothShading
}
),
new
THREE
.
MeshPhongMaterial
(
{
ambient
:
0x030303
,
color
:
0xdddddd
,
specular
:
0x009900
,
shininess
:
30
,
shading
:
THREE
.
FlatShading
}
),
new
THREE
.
MeshPhongMaterial
(
{
ambient
:
0x030303
,
color
:
0xdddddd
,
specular
:
0x009900
,
shininess
:
30
,
shading
:
THREE
.
FlatShading
}
),
new
THREE
.
MeshPhongMaterial
(
{
ambient
:
0x030303
,
color
:
0xdddddd
,
specular
:
0x009900
,
shininess
:
30
,
shading
:
THREE
.
SmoothShading
}
),
new
THREE
.
MeshPhongMaterial
(
{
ambient
:
0x030303
,
color
:
0xdddddd
,
specular
:
0x009900
,
shininess
:
30
,
shading
:
THREE
.
SmoothShading
}
)
/*
new THREE.MeshBasicMaterial( { map: texture2, envMap: THREE.ImageUtils.loadTexture( 'textures/envmap.png', new THREE.SphericalReflectionMapping() ) } ),
new THREE.MeshLambertMaterial( { map: texture2, envMap: THREE.ImageUtils.loadTexture( 'textures/envmap.png', new THREE.SphericalReflectionMapping() ) } ),
*/
];
];
...
@@ -114,17 +110,6 @@
...
@@ -114,17 +110,6 @@
}
}
/*
for ( var i = 0, l = geometry.faces.length; i < l; i ++ ) {
var face = geometry.faces[ i ];
face.materialIndex = Math.floor( Math.random() * materials.length );
}
*/
//materials.push( new THREE.MeshFaceMaterial() );
for
(
var
i
=
0
;
i
<
5000
;
i
++
)
{
for
(
var
i
=
0
;
i
<
5000
;
i
++
)
{
// random order
// random order
...
...
src/core/Projector.js
浏览文件 @
2922ff6a
...
@@ -171,9 +171,8 @@ THREE.Projector = function() {
...
@@ -171,9 +171,8 @@ THREE.Projector = function() {
this
.
projectScene
=
function
(
scene
,
camera
,
sortObjects
,
sortElements
)
{
this
.
projectScene
=
function
(
scene
,
camera
,
sortObjects
,
sortElements
)
{
var
near
=
camera
.
near
,
far
=
camera
.
far
,
visible
=
false
,
var
near
=
camera
.
near
,
far
=
camera
.
far
,
visible
=
false
,
o
,
ol
,
v
,
vl
,
f
,
fl
,
n
,
nl
,
c
,
cl
,
u
,
ul
,
object
,
o
,
ol
,
v
,
vl
,
f
,
fl
,
n
,
nl
,
c
,
cl
,
u
,
ul
,
object
,
modelMatrix
,
modelMatrix
,
geometry
,
vertices
,
vertex
,
vertexPositionScreen
,
geometry
,
geometryMaterials
,
vertices
,
vertex
,
vertexPositionScreen
,
faces
,
face
,
faceVertexNormals
,
normal
,
faceVertexUvs
,
uvs
,
faces
,
face
,
faceVertexNormals
,
normal
,
faceVertexUvs
,
uvs
,
v1
,
v2
,
v3
,
v4
,
isFaceMaterial
,
material
,
side
;
v1
,
v2
,
v3
,
v4
,
isFaceMaterial
,
material
,
side
;
...
@@ -216,7 +215,6 @@ THREE.Projector = function() {
...
@@ -216,7 +215,6 @@ THREE.Projector = function() {
_normalMatrix
.
transpose
();
_normalMatrix
.
transpose
();
isFaceMaterial
=
object
.
material
instanceof
THREE
.
MeshFaceMaterial
;
isFaceMaterial
=
object
.
material
instanceof
THREE
.
MeshFaceMaterial
;
geometryMaterials
=
(
isFaceMaterial
&&
object
.
material
.
materials
.
length
>
0
)
?
object
.
material
.
materials
:
object
.
geometry
.
materials
;
side
=
object
.
material
.
side
;
side
=
object
.
material
.
side
;
...
@@ -241,7 +239,7 @@ THREE.Projector = function() {
...
@@ -241,7 +239,7 @@ THREE.Projector = function() {
face
=
faces
[
f
];
face
=
faces
[
f
];
material
=
isFaceMaterial
===
true
?
geometryM
aterials
[
face
.
materialIndex
]
:
object
.
material
;
material
=
isFaceMaterial
===
true
?
object
.
material
.
m
aterials
[
face
.
materialIndex
]
:
object
.
material
;
if
(
material
===
undefined
)
continue
;
if
(
material
===
undefined
)
continue
;
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录