After conducting extensive research on Google, I am still trying to determine if it is possible to achieve a glow effect within the three.js environment.
My goal is to create a glowing effect based on TextGeometry rather than a simple primitive shape like a sphere or cube, as shown in Lee StemKoski's shadow glow example below.
https://i.sstatic.net/z4By7.png
I have been studying and experimenting with Lee StemKoski's examples
Specifically, I have been looking into his Shader Glow example, which seems to work well with simple objects but not complex geometric shapes. So, I am exploring any potential workarounds or alternative methods to achieve a glow effect around text.
Regards,
w9914420
UPDATE: I have decided to try using the mapping concept by attaching an image to the text to create a glow effect. In this instance, I used a circle, but adapting it for the specific text should be feasible.
https://i.sstatic.net/QtvZ9.png
UPDATE: 20/3/17 - I made an attempt at utilizing the theeX.atmosphere material to create the desired text glow effect. Here are some of my results.
https://i.sstatic.net/WN8ut.png
https://i.sstatic.net/iGZOw.png
As you can see, I haven't quite achieved the desired outcome yet. My biggest challenge lies in smoothing the vertices of the outer glow text further. I'm uncertain if this is even possible, so any advice would be greatly appreciated.
Here is the native code used to create the effect:
//normal text created
var geometry2 = threeLab.asset.simpleText('hello','my_font');
var materialme = new THREE.MeshNormalMaterial();
var mesh = new THREE.Mesh( geometry2, materialme );
this.scene.add( mesh );
// we create a secondary text object to use as glow
var geometry = threeLab.asset.simpleText('hello','my_font');
// clone for manipulation
var geoclone = geometry.clone();
//Thes functions are need to make it work in this case
geoclone.mergeVertices();
//geoclone.computeCentroids();
geoclone.computeVertexNormals();
geoclone.computeFaceNormals();
// part of threex library to make the glow scale and expand
THREEx.dilateGeometry(geoclone, 0.5);
var materialz = THREEx.createAtmosphereMaterial();
var meshHalo = new THREE.Mesh(geoclone, materialz );
//we have now our glow
this.scene.add( meshHalo );