Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
Ablesons
three.js
提交
c85a5b5b
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,发现更多精彩内容 >>
提交
c85a5b5b
编写于
5月 05, 2012
作者:
Z
zz85
浏览文件
操作
浏览文件
下载
差异文件
Merge remote-tracking branch 'mrdoob/dev'
上级
b3e0fdd4
3265a7ef
变更
13
展开全部
隐藏空白更改
内联
并排
Showing
13 changed file
with
831 addition
and
728 deletion
+831
-728
build/Three.js
build/Three.js
+375
-375
build/custom/ThreeCanvas.js
build/custom/ThreeCanvas.js
+126
-126
build/custom/ThreeExtras.js
build/custom/ThreeExtras.js
+7
-7
build/custom/ThreeWebGL.js
build/custom/ThreeWebGL.js
+195
-195
examples/js/MarchingCubes.js
examples/js/MarchingCubes.js
+45
-2
examples/webgl_marching_cubes.html
examples/webgl_marching_cubes.html
+27
-5
examples/webgl_trackballcamera_earth.html
examples/webgl_trackballcamera_earth.html
+1
-1
src/Three.js
src/Three.js
+1
-1
src/core/Object3D.js
src/core/Object3D.js
+14
-0
src/core/Ray.js
src/core/Ray.js
+9
-1
src/renderers/CanvasRenderer.js
src/renderers/CanvasRenderer.js
+6
-0
src/renderers/WebGLRenderer.js
src/renderers/WebGLRenderer.js
+14
-4
utils/exporters/blender/2.63/scripts/addons/io_mesh_threejs/export_threejs.py
...der/2.63/scripts/addons/io_mesh_threejs/export_threejs.py
+11
-11
未找到文件。
build/Three.js
浏览文件 @
c85a5b5b
因为 它太大了无法显示 source diff 。你可以改为
查看blob
。
build/custom/ThreeCanvas.js
浏览文件 @
c85a5b5b
此差异已折叠。
点击以展开。
build/custom/ThreeExtras.js
浏览文件 @
c85a5b5b
此差异已折叠。
点击以展开。
build/custom/ThreeWebGL.js
浏览文件 @
c85a5b5b
因为 它太大了无法显示 source diff 。你可以改为
查看blob
。
examples/js/MarchingCubes.js
浏览文件 @
c85a5b5b
...
@@ -5,13 +5,14 @@
...
@@ -5,13 +5,14 @@
* http://webglsamples.googlecode.com/hg/blob/blob.html
* http://webglsamples.googlecode.com/hg/blob/blob.html
*/
*/
THREE
.
MarchingCubes
=
function
(
resolution
,
material
,
enableUvs
)
{
THREE
.
MarchingCubes
=
function
(
resolution
,
material
,
enableUvs
,
enableColors
)
{
THREE
.
ImmediateRenderObject
.
call
(
this
);
THREE
.
ImmediateRenderObject
.
call
(
this
);
this
.
material
=
material
;
this
.
material
=
material
;
this
.
enableUvs
=
enableUvs
!==
undefined
?
enableUvs
:
false
;
this
.
enableUvs
=
enableUvs
!==
undefined
?
enableUvs
:
false
;
this
.
enableColors
=
enableColors
!==
undefined
?
enableColors
:
false
;
// functions have to be object properties
// functions have to be object properties
// prototype functions kill performance
// prototype functions kill performance
...
@@ -55,6 +56,7 @@ THREE.MarchingCubes = function ( resolution, material, enableUvs ) {
...
@@ -55,6 +56,7 @@ THREE.MarchingCubes = function ( resolution, material, enableUvs ) {
this
.
hasPositions
=
false
;
this
.
hasPositions
=
false
;
this
.
hasNormals
=
false
;
this
.
hasNormals
=
false
;
this
.
hasColors
=
false
;
this
.
hasUvs
=
false
;
this
.
hasUvs
=
false
;
this
.
positionArray
=
new
Float32Array
(
this
.
maxCount
*
3
);
this
.
positionArray
=
new
Float32Array
(
this
.
maxCount
*
3
);
...
@@ -66,6 +68,12 @@ THREE.MarchingCubes = function ( resolution, material, enableUvs ) {
...
@@ -66,6 +68,12 @@ THREE.MarchingCubes = function ( resolution, material, enableUvs ) {
}
}
if
(
this
.
enableColors
)
{
this
.
colorArray
=
new
Float32Array
(
this
.
maxCount
*
3
);
}
};
};
///////////////////////
///////////////////////
...
@@ -317,6 +325,8 @@ THREE.MarchingCubes = function ( resolution, material, enableUvs ) {
...
@@ -317,6 +325,8 @@ THREE.MarchingCubes = function ( resolution, material, enableUvs ) {
var
c
=
this
.
count
*
3
;
var
c
=
this
.
count
*
3
;
// positions
this
.
positionArray
[
c
]
=
pos
[
o1
];
this
.
positionArray
[
c
]
=
pos
[
o1
];
this
.
positionArray
[
c
+
1
]
=
pos
[
o1
+
1
];
this
.
positionArray
[
c
+
1
]
=
pos
[
o1
+
1
];
this
.
positionArray
[
c
+
2
]
=
pos
[
o1
+
2
];
this
.
positionArray
[
c
+
2
]
=
pos
[
o1
+
2
];
...
@@ -329,7 +339,7 @@ THREE.MarchingCubes = function ( resolution, material, enableUvs ) {
...
@@ -329,7 +339,7 @@ THREE.MarchingCubes = function ( resolution, material, enableUvs ) {
this
.
positionArray
[
c
+
7
]
=
pos
[
o3
+
1
];
this
.
positionArray
[
c
+
7
]
=
pos
[
o3
+
1
];
this
.
positionArray
[
c
+
8
]
=
pos
[
o3
+
2
];
this
.
positionArray
[
c
+
8
]
=
pos
[
o3
+
2
];
//
//
normals
this
.
normalArray
[
c
]
=
norm
[
o1
];
this
.
normalArray
[
c
]
=
norm
[
o1
];
this
.
normalArray
[
c
+
1
]
=
norm
[
o1
+
1
];
this
.
normalArray
[
c
+
1
]
=
norm
[
o1
+
1
];
...
@@ -343,6 +353,8 @@ THREE.MarchingCubes = function ( resolution, material, enableUvs ) {
...
@@ -343,6 +353,8 @@ THREE.MarchingCubes = function ( resolution, material, enableUvs ) {
this
.
normalArray
[
c
+
7
]
=
norm
[
o3
+
1
];
this
.
normalArray
[
c
+
7
]
=
norm
[
o3
+
1
];
this
.
normalArray
[
c
+
8
]
=
norm
[
o3
+
2
];
this
.
normalArray
[
c
+
8
]
=
norm
[
o3
+
2
];
// uvs
if
(
this
.
enableUvs
)
{
if
(
this
.
enableUvs
)
{
var
d
=
this
.
count
*
2
;
var
d
=
this
.
count
*
2
;
...
@@ -358,6 +370,24 @@ THREE.MarchingCubes = function ( resolution, material, enableUvs ) {
...
@@ -358,6 +370,24 @@ THREE.MarchingCubes = function ( resolution, material, enableUvs ) {
}
}
// colors
if
(
this
.
enableColors
)
{
this
.
colorArray
[
c
]
=
pos
[
o1
];
this
.
colorArray
[
c
+
1
]
=
pos
[
o1
+
1
];
this
.
colorArray
[
c
+
2
]
=
pos
[
o1
+
2
];
this
.
colorArray
[
c
+
3
]
=
pos
[
o2
];
this
.
colorArray
[
c
+
4
]
=
pos
[
o2
+
1
];
this
.
colorArray
[
c
+
5
]
=
pos
[
o2
+
2
];
this
.
colorArray
[
c
+
6
]
=
pos
[
o3
];
this
.
colorArray
[
c
+
7
]
=
pos
[
o3
+
1
];
this
.
colorArray
[
c
+
8
]
=
pos
[
o3
+
2
];
}
this
.
count
+=
3
;
this
.
count
+=
3
;
if
(
this
.
count
>=
this
.
maxCount
-
3
)
{
if
(
this
.
count
>=
this
.
maxCount
-
3
)
{
...
@@ -371,6 +401,12 @@ THREE.MarchingCubes = function ( resolution, material, enableUvs ) {
...
@@ -371,6 +401,12 @@ THREE.MarchingCubes = function ( resolution, material, enableUvs ) {
}
}
if
(
this
.
enableColors
)
{
this
.
hasColors
=
true
;
}
renderCallback
(
this
);
renderCallback
(
this
);
}
}
...
@@ -384,6 +420,7 @@ THREE.MarchingCubes = function ( resolution, material, enableUvs ) {
...
@@ -384,6 +420,7 @@ THREE.MarchingCubes = function ( resolution, material, enableUvs ) {
this
.
hasPositions
=
false
;
this
.
hasPositions
=
false
;
this
.
hasNormals
=
false
;
this
.
hasNormals
=
false
;
this
.
hasUvs
=
false
;
this
.
hasUvs
=
false
;
this
.
hasColors
=
false
;
};
};
...
@@ -404,6 +441,12 @@ THREE.MarchingCubes = function ( resolution, material, enableUvs ) {
...
@@ -404,6 +441,12 @@ THREE.MarchingCubes = function ( resolution, material, enableUvs ) {
}
}
if
(
this
.
enableColors
)
{
this
.
hasColors
=
true
;
}
renderCallback
(
this
);
renderCallback
(
this
);
};
};
...
...
examples/webgl_marching_cubes.html
浏览文件 @
c85a5b5b
...
@@ -146,11 +146,12 @@
...
@@ -146,11 +146,12 @@
resolution
=
28
;
resolution
=
28
;
numBlobs
=
10
;
numBlobs
=
10
;
effect
=
new
THREE
.
MarchingCubes
(
resolution
,
materials
[
current_material
].
m
,
true
);
effect
=
new
THREE
.
MarchingCubes
(
resolution
,
materials
[
current_material
].
m
,
true
,
true
);
effect
.
position
.
set
(
0
,
0
,
0
);
effect
.
position
.
set
(
0
,
0
,
0
);
effect
.
scale
.
set
(
700
,
700
,
700
);
effect
.
scale
.
set
(
700
,
700
,
700
);
effect
.
enableUvs
=
false
;
effect
.
enableUvs
=
false
;
effect
.
enableColors
=
false
;
scene
.
add
(
effect
);
scene
.
add
(
effect
);
...
@@ -328,6 +329,12 @@
...
@@ -328,6 +329,12 @@
h
:
0
,
s
:
0
,
v
:
1
h
:
0
,
s
:
0
,
v
:
1
},
},
"
colors
"
:
{
m
:
new
THREE
.
MeshPhongMaterial
(
{
color
:
0xffffff
,
specular
:
0xffffff
,
shininess
:
2
,
vertexColors
:
THREE
.
VertexColors
,
perPixel
:
true
}
),
h
:
0
,
s
:
0
,
v
:
1
},
"
plastic
"
:
"
plastic
"
:
{
{
m
:
new
THREE
.
MeshPhongMaterial
(
{
color
:
0x000000
,
specular
:
0x888888
,
ambient
:
0x000000
,
shininess
:
250
,
perPixel
:
true
}
),
m
:
new
THREE
.
MeshPhongMaterial
(
{
color
:
0x000000
,
specular
:
0x888888
,
ambient
:
0x000000
,
shininess
:
250
,
perPixel
:
true
}
),
...
@@ -420,13 +427,23 @@
...
@@ -420,13 +427,23 @@
mm
.
setValue
(
current_material
);
mm
.
setValue
(
current_material
);
if
(
current_material
!==
"
textured
"
)
{
if
(
current_material
===
"
textured
"
)
{
effect
.
enableUvs
=
true
;
}
else
{
effect
.
enableUvs
=
false
;
effect
.
enableUvs
=
false
;
}
if
(
current_material
===
"
colors
"
)
{
effect
.
enableColors
=
true
;
}
else
{
}
else
{
effect
.
enable
Uvs
=
tru
e
;
effect
.
enable
Colors
=
fals
e
;
}
}
...
@@ -436,11 +453,16 @@
...
@@ -436,11 +453,16 @@
function
toggle
(
e
)
{
function
toggle
(
e
)
{
if
(
e
.
style
.
display
===
"
block
"
)
if
(
e
.
style
.
display
===
"
block
"
)
{
e
.
style
.
display
=
"
none
"
;
e
.
style
.
display
=
"
none
"
;
else
}
else
{
e
.
style
.
display
=
"
block
"
;
e
.
style
.
display
=
"
block
"
;
}
}
}
effectController
=
{
effectController
=
{
...
...
examples/webgl_trackballcamera_earth.html
浏览文件 @
c85a5b5b
...
@@ -259,7 +259,7 @@
...
@@ -259,7 +259,7 @@
controls
.
screen
.
width
=
width
;
controls
.
screen
.
width
=
width
;
controls
.
screen
.
height
=
height
;
controls
.
screen
.
height
=
height
;
c
amera
.
radius
=
(
width
+
height
)
/
4
;
c
ontrols
.
radius
=
(
width
+
height
)
/
4
;
};
};
...
...
src/Three.js
浏览文件 @
c85a5b5b
...
@@ -2,7 +2,7 @@
...
@@ -2,7 +2,7 @@
* @author mr.doob / http://mrdoob.com/
* @author mr.doob / http://mrdoob.com/
*/
*/
var
THREE
=
THREE
||
{
REVISION
:
'
49
'
};
var
THREE
=
THREE
||
{
REVISION
:
'
50dev
'
};
if
(
!
self
.
Int32Array
)
{
if
(
!
self
.
Int32Array
)
{
...
...
src/core/Object3D.js
浏览文件 @
c85a5b5b
...
@@ -263,6 +263,20 @@ THREE.Object3D.prototype = {
...
@@ -263,6 +263,20 @@ THREE.Object3D.prototype = {
}
}
},
worldToLocal
:
function
(
vector
)
{
if
(
!
this
.
__inverseMatrixWorld
)
this
.
__inverseMatrixWorld
=
new
THREE
.
Matrix4
();
return
this
.
__inverseMatrixWorld
.
getInverse
(
this
.
matrixWorld
).
multiplyVector3
(
vector
);
},
localToWorld
:
function
(
vector
)
{
return
this
.
matrixWorld
.
multiplyVector3
(
vector
);
}
}
};
};
...
...
src/core/Ray.js
浏览文件 @
c85a5b5b
...
@@ -26,6 +26,12 @@ THREE.Ray = function ( origin, direction ) {
...
@@ -26,6 +26,12 @@ THREE.Ray = function ( origin, direction ) {
var
vector
=
new
THREE
.
Vector3
();
var
vector
=
new
THREE
.
Vector3
();
var
normal
=
new
THREE
.
Vector3
();
var
normal
=
new
THREE
.
Vector3
();
var
intersectPoint
=
new
THREE
.
Vector3
()
var
intersectPoint
=
new
THREE
.
Vector3
()
var
descSort
=
function
(
a
,
b
)
{
return
a
.
distance
-
b
.
distance
;
};
this
.
intersectObject
=
function
(
object
)
{
this
.
intersectObject
=
function
(
object
)
{
...
@@ -157,6 +163,8 @@ THREE.Ray = function ( origin, direction ) {
...
@@ -157,6 +163,8 @@ THREE.Ray = function ( origin, direction ) {
}
}
intersects
.
sort
(
descSort
);
return
intersects
;
return
intersects
;
}
}
...
@@ -171,7 +179,7 @@ THREE.Ray = function ( origin, direction ) {
...
@@ -171,7 +179,7 @@ THREE.Ray = function ( origin, direction ) {
}
}
intersects
.
sort
(
function
(
a
,
b
)
{
return
a
.
distance
-
b
.
distance
;
}
);
intersects
.
sort
(
descSort
);
return
intersects
;
return
intersects
;
...
...
src/renderers/CanvasRenderer.js
浏览文件 @
c85a5b5b
...
@@ -1053,6 +1053,12 @@ THREE.CanvasRenderer = function ( parameters ) {
...
@@ -1053,6 +1053,12 @@ THREE.CanvasRenderer = function ( parameters ) {
break
;
break
;
case
THREE
.
SubtractiveBlending
:
_context
.
globalCompositeOperation
=
'
darker
'
;
break
;
}
}
_contextGlobalCompositeOperation
=
value
;
_contextGlobalCompositeOperation
=
value
;
...
...
src/renderers/WebGLRenderer.js
浏览文件 @
c85a5b5b
...
@@ -2880,11 +2880,12 @@ THREE.WebGLRenderer = function ( parameters ) {
...
@@ -2880,11 +2880,12 @@ THREE.WebGLRenderer = function ( parameters ) {
// Buffer rendering
// Buffer rendering
this
.
renderBufferImmediate
=
function
(
object
,
program
,
shading
)
{
this
.
renderBufferImmediate
=
function
(
object
,
program
,
material
)
{
if
(
object
.
hasPositions
&&
!
object
.
__webglVertexBuffer
)
object
.
__webglVertexBuffer
=
_gl
.
createBuffer
();
if
(
object
.
hasPositions
&&
!
object
.
__webglVertexBuffer
)
object
.
__webglVertexBuffer
=
_gl
.
createBuffer
();
if
(
object
.
hasNormals
&&
!
object
.
__webglNormalBuffer
)
object
.
__webglNormalBuffer
=
_gl
.
createBuffer
();
if
(
object
.
hasNormals
&&
!
object
.
__webglNormalBuffer
)
object
.
__webglNormalBuffer
=
_gl
.
createBuffer
();
if
(
object
.
hasUvs
&&
!
object
.
__webglUvBuffer
)
object
.
__webglUvBuffer
=
_gl
.
createBuffer
();
if
(
object
.
hasUvs
&&
!
object
.
__webglUvBuffer
)
object
.
__webglUvBuffer
=
_gl
.
createBuffer
();
if
(
object
.
hasColors
&&
!
object
.
__webglColorBuffer
)
object
.
__webglColorBuffer
=
_gl
.
createBuffer
();
if
(
object
.
hasPositions
)
{
if
(
object
.
hasPositions
)
{
...
@@ -2899,7 +2900,7 @@ THREE.WebGLRenderer = function ( parameters ) {
...
@@ -2899,7 +2900,7 @@ THREE.WebGLRenderer = function ( parameters ) {
_gl
.
bindBuffer
(
_gl
.
ARRAY_BUFFER
,
object
.
__webglNormalBuffer
);
_gl
.
bindBuffer
(
_gl
.
ARRAY_BUFFER
,
object
.
__webglNormalBuffer
);
if
(
shading
===
THREE
.
FlatShading
)
{
if
(
material
.
shading
===
THREE
.
FlatShading
)
{
var
nx
,
ny
,
nz
,
var
nx
,
ny
,
nz
,
nax
,
nbx
,
ncx
,
nay
,
nby
,
ncy
,
naz
,
nbz
,
ncz
,
nax
,
nbx
,
ncx
,
nay
,
nby
,
ncy
,
naz
,
nbz
,
ncz
,
...
@@ -2948,7 +2949,7 @@ THREE.WebGLRenderer = function ( parameters ) {
...
@@ -2948,7 +2949,7 @@ THREE.WebGLRenderer = function ( parameters ) {
}
}
if
(
object
.
hasUvs
)
{
if
(
object
.
hasUvs
&&
material
.
map
)
{
_gl
.
bindBuffer
(
_gl
.
ARRAY_BUFFER
,
object
.
__webglUvBuffer
);
_gl
.
bindBuffer
(
_gl
.
ARRAY_BUFFER
,
object
.
__webglUvBuffer
);
_gl
.
bufferData
(
_gl
.
ARRAY_BUFFER
,
object
.
uvArray
,
_gl
.
DYNAMIC_DRAW
);
_gl
.
bufferData
(
_gl
.
ARRAY_BUFFER
,
object
.
uvArray
,
_gl
.
DYNAMIC_DRAW
);
...
@@ -2957,6 +2958,15 @@ THREE.WebGLRenderer = function ( parameters ) {
...
@@ -2957,6 +2958,15 @@ THREE.WebGLRenderer = function ( parameters ) {
}
}
if
(
object
.
hasColors
&&
material
.
vertexColors
!==
THREE
.
NoColors
)
{
_gl
.
bindBuffer
(
_gl
.
ARRAY_BUFFER
,
object
.
__webglColorBuffer
);
_gl
.
bufferData
(
_gl
.
ARRAY_BUFFER
,
object
.
colorArray
,
_gl
.
DYNAMIC_DRAW
);
_gl
.
enableVertexAttribArray
(
program
.
attributes
.
color
);
_gl
.
vertexAttribPointer
(
program
.
attributes
.
color
,
3
,
_gl
.
FLOAT
,
false
,
0
,
0
);
}
_gl
.
drawArrays
(
_gl
.
TRIANGLES
,
0
,
object
.
count
);
_gl
.
drawArrays
(
_gl
.
TRIANGLES
,
0
,
object
.
count
);
object
.
count
=
0
;
object
.
count
=
0
;
...
@@ -3756,7 +3766,7 @@ THREE.WebGLRenderer = function ( parameters ) {
...
@@ -3756,7 +3766,7 @@ THREE.WebGLRenderer = function ( parameters ) {
}
else
{
}
else
{
object
.
render
(
function
(
object
)
{
_this
.
renderBufferImmediate
(
object
,
program
,
material
.
shading
);
}
);
object
.
render
(
function
(
object
)
{
_this
.
renderBufferImmediate
(
object
,
program
,
material
);
}
);
}
}
...
...
utils/exporters/blender/2.63/scripts/addons/io_mesh_threejs/export_threejs.py
浏览文件 @
c85a5b5b
...
@@ -296,7 +296,7 @@ def get_normal_indices(v, normals, mesh):
...
@@ -296,7 +296,7 @@ def get_normal_indices(v, normals, mesh):
def
get_uv_indices
(
face_index
,
uvs
,
mesh
):
def
get_uv_indices
(
face_index
,
uvs
,
mesh
):
uv
=
[]
uv
=
[]
uv_layer
=
mesh
.
uv_textures
.
active
.
data
uv_layer
=
mesh
.
tessface_
uv_textures
.
active
.
data
for
i
in
uv_layer
[
face_index
].
uv
:
for
i
in
uv_layer
[
face_index
].
uv
:
uv
.
append
(
uvs
[
veckey2d
(
i
)]
)
uv
.
append
(
uvs
[
veckey2d
(
i
)]
)
return
uv
return
uv
...
@@ -637,7 +637,7 @@ def generate_vertex_colors(colors, option_colors):
...
@@ -637,7 +637,7 @@ def generate_vertex_colors(colors, option_colors):
# #####################################################
# #####################################################
def
extract_uvs
(
mesh
,
uvs
,
count
):
def
extract_uvs
(
mesh
,
uvs
,
count
):
uv_layer
=
mesh
.
uv_textures
.
active
.
data
uv_layer
=
mesh
.
tessface_
uv_textures
.
active
.
data
for
face_index
,
face
in
enumerate
(
get_faces
(
mesh
)):
for
face_index
,
face
in
enumerate
(
get_faces
(
mesh
)):
...
@@ -1760,20 +1760,20 @@ def generate_ascii_scene(data):
...
@@ -1760,20 +1760,20 @@ def generate_ascii_scene(data):
def
export_scene
(
scene
,
filepath
,
flipyz
,
option_colors
,
option_lights
,
option_cameras
,
option_embed_meshes
,
embeds
,
option_url_base_html
,
option_copy_textures
):
def
export_scene
(
scene
,
filepath
,
flipyz
,
option_colors
,
option_lights
,
option_cameras
,
option_embed_meshes
,
embeds
,
option_url_base_html
,
option_copy_textures
):
source_file
=
os
.
path
.
basename
(
bpy
.
data
.
filepath
)
source_file
=
os
.
path
.
basename
(
bpy
.
data
.
filepath
)
# objects are contained in scene and linked groups
# objects are contained in scene and linked groups
objects
=
[]
objects
=
[]
# get scene objects
# get scene objects
sceneobjects
=
scene
.
objects
sceneobjects
=
scene
.
objects
for
obj
in
sceneobjects
:
for
obj
in
sceneobjects
:
objects
.
append
(
obj
)
objects
.
append
(
obj
)
# get linked group objcts
# get linked group objcts
for
group
in
bpy
.
data
.
groups
:
for
group
in
bpy
.
data
.
groups
:
for
object
in
group
.
objects
:
for
object
in
group
.
objects
:
objects
.
append
(
object
)
objects
.
append
(
object
)
scene_text
=
""
scene_text
=
""
data
=
{
data
=
{
"scene"
:
scene
,
"scene"
:
scene
,
...
@@ -1834,15 +1834,15 @@ def save(operator, context, filepath = "",
...
@@ -1834,15 +1834,15 @@ def save(operator, context, filepath = "",
# objects are contained in scene and linked groups
# objects are contained in scene and linked groups
objects
=
[]
objects
=
[]
# get scene objects
# get scene objects
for
obj
in
sceneobjects
:
for
obj
in
sceneobjects
:
objects
.
append
(
obj
)
objects
.
append
(
obj
)
# get objects in linked groups
# get objects in linked groups
for
group
in
bpy
.
data
.
groups
:
for
group
in
bpy
.
data
.
groups
:
for
object
in
group
.
objects
:
for
object
in
group
.
objects
:
objects
.
append
(
object
)
objects
.
append
(
object
)
if
option_export_scene
:
if
option_export_scene
:
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录