|
@@ -86,7 +86,7 @@ class Geometry {
|
|
for( n in g.getNormals() )
|
|
for( n in g.getNormals() )
|
|
normals.push(n);
|
|
normals.push(n);
|
|
|
|
|
|
- // merget uvs
|
|
|
|
|
|
+ // merge uvs
|
|
var uv = getUVs();
|
|
var uv = getUVs();
|
|
var uv2 = g.getUVs();
|
|
var uv2 = g.getUVs();
|
|
if( uv.length != uv2.length )
|
|
if( uv.length != uv2.length )
|
|
@@ -101,6 +101,19 @@ class Geometry {
|
|
uv.index.push(i + count);
|
|
uv.index.push(i + count);
|
|
}
|
|
}
|
|
|
|
|
|
|
|
+ // merge colors
|
|
|
|
+ var colors = getColors();
|
|
|
|
+ var colors2 = g.getColors();
|
|
|
|
+ if( (colors != null) != (colors2 != null) )
|
|
|
|
+ throw "Different Color layer in merged objects";
|
|
|
|
+ if( colors != null ) {
|
|
|
|
+ var count = colors.values.length >> 2;
|
|
|
|
+ for( v in colors2.values )
|
|
|
|
+ colors.values.push(v);
|
|
|
|
+ for( i in colors2.index )
|
|
|
|
+ colors.index.push(i + count);
|
|
|
|
+ }
|
|
|
|
+
|
|
// merge materials
|
|
// merge materials
|
|
var m2 = g.getMaterials();
|
|
var m2 = g.getMaterials();
|
|
if( m2 == null ) {
|
|
if( m2 == null ) {
|