Skip to content

Commit

Permalink
phong > lambert
Browse files Browse the repository at this point in the history
resolves strange rendering behavior around edges.  resolves issue tt-acm#5
  • Loading branch information
bhowes-tt committed Aug 12, 2015
1 parent 21067c1 commit 264728c
Show file tree
Hide file tree
Showing 3 changed files with 6 additions and 43 deletions.
9 changes: 3 additions & 6 deletions src/Spectacles.RevitExporter/SpectaclesExportContext.cs
Original file line number Diff line number Diff line change
Expand Up @@ -338,14 +338,13 @@ SpectaclesContainer.SpectaclesMaterial m

m.uuid = uidMaterial;
m.name = material.Name;
m.type = "MeshPhongMaterial";
m.type = "MeshLambertMaterial";
m.color = Util.ColorToInt(material.Color);
m.ambient = m.color;
m.emissive = 0;
m.specular = m.color;
m.shininess = 1; // todo: does this need scaling to e.g. [0,100]?
m.opacity = 0.01 * (double)(100 - material.Transparency); // Revit has material.Transparency in [0,100], three.js expects opacity in [0.0,1.0]
m.transparent = 0 < material.Transparency;
m.shading = 1;
m.wireframe = false;

_materials.Add(uidMaterial, m);
Expand Down Expand Up @@ -632,12 +631,10 @@ SpectaclesContainer.SpectaclesMaterial m
= new SpectaclesContainer.SpectaclesMaterial();

m.uuid = uid;
m.type = "MeshPhongMaterial";
m.type = "MeshLambertMaterial";
m.color = iColor;
m.ambient = m.color;
m.emissive = 0;
m.specular = m.color;
m.shininess = node.Glossiness; // todo: does this need scaling to e.g. [0,100]?
m.opacity = 1; // 128 - material.Transparency;
m.opacity = 1.0 - node.Transparency; // Revit MaterialNode has double Transparency in ?range?, three.js expects opacity in [0.0,1.0]
m.transparent = 0.0 < node.Transparency;
Expand Down
6 changes: 2 additions & 4 deletions src/Spectacles.RevitExporter/SpectaclesObject.cs
Original file line number Diff line number Diff line change
Expand Up @@ -61,15 +61,13 @@ public class SpectaclesMaterial
[DataMember]
public int emissive { get; set; } // 1
[DataMember]
public int specular { get; set; } //1118481
[DataMember]
public int shininess { get; set; } // 30
[DataMember]
public double opacity { get; set; } // 1
[DataMember]
public bool transparent { get; set; } // false
[DataMember]
public bool wireframe { get; set; } // false
[DataMember]
public int shading { get; set; } // 1
}

[DataContract]
Expand Down
34 changes: 1 addition & 33 deletions src/Spectacles.RevitExporter/SpectaclesScene.cs
Original file line number Diff line number Diff line change
Expand Up @@ -54,44 +54,12 @@ public class SpectaclesMaterial
[DataMember] public int color { get; set; } // 16777215
[DataMember] public int ambient { get; set; } //16777215
[DataMember] public int emissive { get; set; } // 1
[DataMember] public int specular { get; set; } //1118481
[DataMember] public int shininess { get; set; } // 30
[DataMember] public double opacity { get; set; } // 1
[DataMember] public bool transparent { get; set; } // false
[DataMember] public bool wireframe { get; set; } // false

//"DbgColor" : 15658734
//"DbgIndex" : 0
//"DbgName" : "Material"
//"blending" : "NormalBlending"
//"colorAmbient" : [0.6400000190734865, 0.10179081114814892, 0.126246120426746]
//"colorDiffuse" : [0.6400000190734865, 0.10179081114814892, 0.126246120426746]
//"colorSpecular" : [0.5, 0.5, 0.5]
//"depthTest" : true
//"depthWrite" : true
//"shading" : "Lambert"
//"specularCoef" : 50
//"transparency" : 1.0
//"transparent" : false
//"vertexColors" : false
[DataMember] public int shading { get; set; } // 16777215
}

// MeshPhongMaterial from https://github.com/mrdoob/three.js/wiki/JSON-Material-format-4

//{
//"metadata": {
// "version": 4.2
// "type": "material"
// "generator": "MaterialExporter"
//}
//"type": "MeshPhongMaterial"
//"color": 16777215
//"ambient": 16777215
//"emissive": 0
//"specular": 1118481
//"shininess": 30
//"opacity": 1
//"transparent": false

[DataContract]
public class SpectaclesGeometryData
Expand Down

0 comments on commit 264728c

Please sign in to comment.