repo: janusweb
action: commit
revision: 
path_from: 
revision_from: 9488d771f8f940def87a0a6e42fdf048b9bf45bc:
path_to: 
revision_to: 
git.thebackupbox.net
janusweb
git clone git://git.thebackupbox.net/janusweb
commit 9488d771f8f940def87a0a6e42fdf048b9bf45bc
Author: James Baicoianu 
Date:   Thu Aug 17 02:12:45 2017 -0700

    Improved pargraph materials, add timer to upddates

diff --git a/scripts/janusparagraph.js b/scripts/janusparagraph.js
index 71f581ff7590dfd39e2e66534e4b40b943d617ef..
index ..795b67aec463c09d673bdc4df8df811bb700bc9f 100644
--- a/scripts/janusparagraph.js
+++ b/scripts/janusparagraph.js
@@ -8,6 +8,7 @@ elation.require(['janusweb.janusbase'], function() {
         text_col: {type: 'color', default: 0x000000},
         back_col: {type: 'color', default: 0xffffff},
         back_alpha: {type: 'float', default: 1},
+        cull_face: { type: 'string', default: 'back', set: this.updateMaterial },
         css: {type: 'string' },
       });
     }
@@ -20,8 +21,23 @@ elation.require(['janusweb.janusbase'], function() {
     }
     this.createMaterial = function() {
       var texture = this.createTexture();
-      var material = new THREE.MeshPhongMaterial({color: 0xffffff, map: texture, transparent: true});
-      return material;
+      var sidemap = {
+        'back': THREE.FrontSide,
+        'front': THREE.BackSide,
+        'none': THREE.DoubleSide
+      };
+      var matargs = {
+        color: 0xffffff,
+        map: texture,
+        transparent: true,
+        side: sidemap[this.cull_face],
+      };
+      if (!this.lighting) {
+        return new THREE.MeshBasicMaterial(matargs);
+      } else {
+        // TODO - support PBR for paragraphs
+        return new THREE.MeshPhongMaterial(matargs);
+      }
     }
     this.createTexture = function() {
       this.canvas = document.createElement('canvas');
@@ -55,6 +71,7 @@ elation.require(['janusweb.janusbase'], function() {
       sanitarydiv.innerHTML = this.text;
       var content = sanitarydiv.innerHTML.replace(//g, '
'); content = content.replace(//g, '
'); + content = content.replace(//g, ""); var styletag = '