Updated Reflexive [Tile] Script
4 Comments so far
Leave a comment
Oze Aichi shared this revised ‘Reflexive Wall Tile’ script, which you can find HERE.
Also, check out Far Link’s ideas about this concept HERE.
4 Comments so far
Leave a comment
This revision and the original script appear to be identical (at least, to my eye).
Comment by Scooter Gaudio February 19, 2008 @ 3:24 pmThis is Oze. I updated the script of the tile (after I discovered the llLookAt function), not the wall. Apparently they made a mistake in their blog. Here is the script:
// Reflexive Tile – Sense and aim at the nearest avatar, and adjust color according to the distance.
// By Oze Aichi, Feb 2008.
float SENSE_RANGE = 100.0; //sense range (in metres)
float SENSE_INTERVAL = 0.1; //how often to sense (in seconds)
float NEAR = 0.2;
float FAR = 10.0;
vector NEAR_COLOR = ;
vector FAR_COLOR = ;
default
{
state_entry()
{
llSensorRepeat(“”, “”, AGENT, SENSE_RANGE, PI, SENSE_INTERVAL); //look for avatars on all sides of the tile
}
sensor (integer numberDetected)
{
vector myPos = llGetPos(); //pos of this tile
vector aimPos = llDetectedPos(0); //pos of av to aim at (index 0 gives the nearest av)
vector avSize = llGetAgentSize(llDetectedKey(0)); //get size of the av
float distance = llVecDist(aimPos, myPos); //distance to the nearest av
float scale = (distance – NEAR) / (FAR – NEAR); //adjustment scale according to FAR and NEAR
aimPos.z += (avSize.z / 2.0); //aim at the head of av instead of the center
if (scale > 1.0)
scale = 1.0;
else if (scale < 0.0)
scale = 0.0;
llSetColor(NEAR_COLOR + ((FAR_COLOR – NEAR_COLOR) * scale), ALL_SIDES); //change color
llLookAt(aimPos, 1.0, 0.1);
Comment by Oze Aichi February 19, 2008 @ 6:59 pm}
}
My bad – i tried to share this at the last minute as my flight was leaving and didn’t proof it as thoroughly as I should have! I believe the google doc and file name are revised in the post. Thanks, and sorry!
Comment by keystonesl February 19, 2008 @ 7:44 pmScooter,
Comment by Far Link February 20, 2008 @ 4:05 amYes, the original script and my ‘revision’ are essentially identical. My point was not to pull the script in a new direction, but to use it to visualize a responsive physical architecture we proposed some time ago. Since this was something we found very difficult to do with traditional 3D modelling programs, I was thrilled to finally see the surface come to life through the use of Oze’s script and SL as a development and visualization platform. Rest assured I will be tinkering around with it quite a bit more in the near future;)