mardi 11 mars 2008

Japanese!

It all started with the tiny avatars in the shops of Saitot Tammas. Saitot specializes in small avatars of all sorts: animals, pets, robots…shop: http://slurl.com/secondlife/Pelinor/236/11/66

You can become a cat with a hat, or have a few on your shoulders, or you can have a bird flying around your head…..
Five followed this tiny avatar trail from one Japanese sim to another.
The Japanese are everywhere!

Remember the Tokyo addict Taka Teatime? He had a quiz about Tokyo and this idea of a quiz was so funny that also the virtual museum Schielandhuis got a quiz!






Then there is Salmaru Masala, this is a extremely funny and very inventive person, making all kinds of very hilarious things, like snoring animations, silly taxies, and sushi eating animations put in a plate with sushi’s. He gives away his jokes, which certainly cost him a lot of work, practically all for free!








But there are also many Japanese sims to be explored. Little Kyoto is very funny and well worth a visit, but Japanese design and fantasies have moved on. The strip figures have become very important.
This is an example of such a modern Japanese sim:
http://slurl.com/secondlife/sugamo/69/22/21, selling tiny avatars again!














Nearby I found this, it looks gigantic! 5 is completely dwarfed. But actually if you try to enter the skyscrapers, it is miniature! Great gag!














Here a book shop of the brightest colors, probably an ordinary sight in Japan, in SL it is a labyrinth!





From the large spaces to the individual encounters again:
One of the shops: Sculpted work – and more, of Arrshu Dagger.
In her profile: I'm Japanese. Ispeak engrish very small.XD.
Well my Japanese is only: Domo! (Which means hello, I think, I hope) I cannot even say in Japanese: I don't speak Japanese...:-(

But we could talk! Really great. Using a translator. You must take care to formulate basic and simple sentences. But it works!
The shop: http://slurl.com/secondlife/Balenissa%20Grove/193/146/80

Her sculpties shown here are really masterpieces. The sculpty has its limitations, due to the limited resolution. The sculptor has to know these limitations. In principle sculpties are transformations of the sphere. So with a bit of pinching and pulling you can get chairs, parasols, bones. Arrshu shows how to be creative to the last square of the 32 x 32 grid.
Arrshu does the sculpties not in BLENDER but in ROKKAKU DAIOU, which means HEXA SUPER (Hexagone!)
This software cannot be found outside of Japan, search only gives craks and key generators!
An english version available is METASEQ, freeware and shareware.

The second problem of the sculpties is the image you use for its surface. To minimize distortion you have to stay on the 32 x 32 grid.
But there is a last detail, as explained by Arrshu. The holes in the sculpty. The sculpty is not only like an apple, but also like a banana! The poles of the sphere have to be left open, because of the coordinate knot which happens to be in these special points. Apparently the combination of Second Life and BLENDER does not treat the poles or the holes very precise: the holes disrupt the exact 32 x 32 grid, spoiling colours over the edges. ROKKAKU, as told by Arrshu has solved this problem and is exact.

Nearby the shop is a “rose bed”, also a sculpty work, this time of Draceina Pinion.
This was really an experience! In the flower there are two positions to lie down. And you are totally surrounded by the red petals, giving an incredibly warm feeling. 5 invited Swann Jie to come around and we got a few marvellous silly pictures of the two of us….
Literally 5 could not stop taking pictures because 5 was totally drunk because of the colours!



Oooouh, 5 has written too long a story!



Will be continued! Sooo much to tell!





dimanche 24 février 2008

Camera fun

An avatar walks around with a camera.
Folks new to SL always have to get used to this.
But many peculiarities of this camera even experienced users don’t know about.
Even 5 discovered some new possibilities after a year!

Basic camera facts:
Walking and flying: the camera follows from behind, so how to see your face?
Using the arrow keys makes the camera swing, but the avatar too.
Using the mouse wheel zooms in and out.

Swinging the camera around:
Now for this you have to become a virtuoso on the keyboard! Press ALT and click on something, the terrain or an object or an avatar. Then while mouse pressed, move the mouse: the camera swings around in a horizontal plane. The vertical mouse movement gives zoom, for instance to see your own make-up or nose or beard.
To get it moving more freely (but without zoom), also press ALT CTRL, click on object, keep mouse pressed and move mouse! Freely means here in a sphere around the object.

Now to get further away from the avatar, you have to realize the camera is bound to the avatar, but it can escape quite a distance.
You can liberate the camera more using: Second Life menu-> client -> Disable Camera Constraint.
(Found no “client” in menu: press CTRL ALT D)
Then your camera can really roam through space.

Sitting Camera movement:
Sitting on an object gives other freedom. There are the same possibilities as before. But clicking an object somewhere and then using just the arrow keys makes your camera turn around this distant object! Quite fun!
Arrows up down, zoom
Arrows right left circle around chosen object or the avatar.
Page up and down (normally flying) give space up and down!
And then: ALT CTRL and SHIFT (in that order) and arrows gives parallel movement!

What I seldomly use is the Mouselook, Movements in Mouselook mode are somehow not convenient for me.

This sitting – arrow steering possibility is interesting.
The problem sometimes is that you want to show people something in Second Life in a public environment. But then they should have an avatar, most of them have no avatar nor experience moving around flying etc. It would actually be undesirable to have them roam the whole of Second Life. This sitting avatar is a solution for this problem. A Joystick can steer the arrow buttons, a wii remote control might do the same (bluetooth connection and GlovePie for instance). If the rest of the keyboard and computer is hidden, the public can fiddle with the view and the joystick and everything can be done, clicking, etc, without fear of the avatar drifting of!
5 can show the whole of the virtual museum like that!

Tele and Wide angle camera.
As written about before:
You can get quite nice shots for stills using different camera angles. Shortcuts CTRL 8 CTRL 9 CTRL 0
This picture 5 got by going to the limits (or over the limits...)

















Scripted camera
.
This is fun too, you can script the camera to follow you in all kind of positions, an example is given here: http://slhomepage.com/lsl/FollowCam.htm
In this script the camera is not really free, which is for me: steerable by the keyboard. This is possible too!
I found a nice script: a "scan camera" script of ArianeB:
http://arianeb.com/secondlife.htm (bottom of this long and usefull page)
I turned this around in a camera steering from the keyboard,
for steering camera from arrows on keyboard mind the control permissions: http://slhomepage.com/lsl/llTakeControls.htm
but combining controls and camera parameters, the camera is freed and can follow a path, or steered by the keyboard, letting 5 take a break!
You can get away pretty far steering this free camera, the problem is: the drawing distance of your avatar! The world gets empty behind this limit.

Video
For making video’s, knowing the different possibilities of the camera is great. The walking avatar gives quite an instable image.
A problem is the speed of the normal camera. More convenient for good video making would be the possibility to slow the camera movement, resulting from using the arrows in sitting position. Maybe there is a shortcut for that too? Yes, deep down in the player:
Client (CTRL ALT D) -> Debug Settings ->in the textbox type Zoomtime.
Default is .4, but making this higher (10 – 20 sec) you get a very slow moving camera, great for nice steady zooming. You can let the buttons go and the camera stays on moving, slowly, comfortably, it is like sailing! But there are disadvantages too, the camera moves on and on sometimes, so for normal living, quickly reset it to the default of .4 sec!

Have fun, explore! I imagine even more can be discovered!


skin fun

First some basic facts:
Basically a skin is the deepest texture layer of an avatar. Clothes, like shirts and trousers are covering this basic layer. T-shirts for instance are easy to make and cover the upper body.
Clothes can be taken off; the basic skin can never be pulled of. Skin is the most fundamental layer.
Even when a skin is replaced, it replaces the last one. No avatar is without skin; also this skin cannot be transparent. The most simple is the Linden skin layer.
So skins you can choose to wear are replacements of this basic layer.
Does everyone need a skin? Every avatar has a skin to start with. It is a basic model. Other free skins with features, make-up, tattoos, are easily found and freebies. “Opium” -skins are found everywhere, and are not bad.
When do you really need a skin: actually only if you plan to show it, that is if you don’t want to wear too much clothes! What is the point of buying an expensive skin, and then covering it with clothes?

Skins are different form “shape”, and the added features like eyebrows, beards and whiskers.

Normal skins: drawing and painted (by computer), abstractions of skins. Some skins are only partial, for instance upper body. These skins can be altered, in darkness lightness or color.
Photoskins: photoskins are based on real photos. This leaves the abstraction of an avatar a bit behind. Photo skins can be too real. Photoskins can have very convincing shiny effects, only turning around such a skin reveals that these gleams are fixed and parts of the skin, not reflection effects.
The third category: fantasy…try throwing a texture in the texture boxes for upper and lower body parts, this is great fun!


Colors:
When do you see the color of a skin: well, when you don’t have much on as clothes.
So with good prim hair (can be found free) and make-up (make-up too, it comes often as a part of free skins) a basic skin can be very sufficient, because you don’t see much of it.
But then showing yourself (haha what is yourself here?)
Going around in shorts or in tops which leave the shoulders free can already be embarrassing in a basic skin. The area of the neck and the décolleté are rather poorly represented. The subtle play of shadows fails quickly and gives nasty effects.

Adjusting the color. Trying to get “black”.
Going around tanned can be done by adjusting the top slider in the appearance menu of skins.
Some skins give the possibility of going really dark, but then there appears to be a problem: the whole detailing fails and the avatar looks like a dark blob on the screen: see the picture.

That might be the reason why the black African skin is not too much around in Second Life. Is Second Life an all white affair? That would be terrible! Asian skins are around, but these are mainly fair skins too. (The Asian effect resides also very much in the “shape” of course, the way the eyes are placed and the detailing of the face.)

So what about the African skin?
This idea of finding out about the darker colored skin became a small obsession. It is very difficult to find these dark African skins doing “normal” shopping. Also the Second Life finder doesn’t help much. The SLExchange finder neither.
White skins seem to be “normal”…???

Searching the internet gave me 2 clues, which were linked. Two blogs in which the same question was posed: what is wrong with wearing a dark skin?

Two problems: the first the one is already stated; the screen colors go very well with fair colored skins, the darker have this problem of becoming dull. (This is the same for movies and television.)

The second seems to be pure discrimination! Here are the blogs referred to:

http://secondlife.blogs.com/nwn/2006/02/the_skin_youre_.html
http://brace-coral.livejournal.com/50040.html

Avery good reason to try to buy such a skin!
In the blogs there were references to shops. Only two shops offer well made real dark African black skins. (Although pretty good abstract skins are freely available too, but you have to search quite a bit for these darker skins.)

In the end 5 bought such a skin. A photoskin of Midnight at 1500 L$, wow!

The face is realy realistic, in contrast with the absract SL head. Ears for instance, hmmm maybe even too realistic. The specials are the shining surfaces, quite a lot of work for the designer to get this right! The features cannot be changed in the appearance menu, not darker lighter, etc. The shape can be changed of course, this textures always fits around.


Then 5 had a nice skin, what a problem!
5 always went around in a gothic outfit, which covered all of the body! As stated above, if you have a skin like that, you have to show it, wearing only a few well chosen articles…so the whole habit of clothing is changed by a skin!

Worse: a good, nice skin (real beauty) wants to show itself, it seems to have a will of its own. 5 never knew this before!

Actually, as could be foreseen, other things attached to the avatar, for instance the prim hair can make quite a difference too. As seen in the images a black skin becomes really African, when the head isn’t covered by a fancy hair piece.

To accompany this blog a difficult question had to be answered: how to show the differences between the skins? Well, not by showing only the face. Ok that is the reason for this general striptease!

5 is showing of in different skins, the names are covering some all to intimate parts (5 hopes) You can see clearly the difference between the skins, abstract, basic and photo. And then the influence of the hair and eyes can be appreciated. This being able to feel “a bit” in other persons skin is one of the most fabulous features of Second Life for me.

Last question: walking around in a black skin: is 5 discriminated? Not at all! Friends walking out on 5? Not at all!










Shops:
Offering the photo skin, also a couple of good male skins (see the upper part of the picture):
Chip Midnight: http://slurl.com/secondlife/Freelon/50/62/23
Offering an abstract, but very good skin: (below in picture)
Ayesha Bisiani: http://slurl.com/secondlife/Skin%20Within/120/139/28


















Bojana Vella showed me Allessandra Island,
with two great dark skins (1200 L$)

Later i found this shop: Archan, 990 L$ with shape included...

lundi 11 février 2008

All black void













Black, all black, void black.
That was the status of my avatar.
Sometimes the eyes were visible, only.
Clothes I changed, sometimes they got visible, most turned black too.
Reinstalling Second Life doesn’t help.
Rebaking textures doesn’t help.
Logging out and in doesn’t help.

Something good came out of it though:
I decided to make my own head, of a pumpkin…, in reality it was a fox avatar I rebuilt. I took so many features away it looked like a pumpkin with too eyes on it in the end. Then I made a script moving these eyes around, and I made the pumpkin open up a bit and changing this opening at the back. This opening revealed my “brains”. It was fun, I have put a book inside and a few pictures. Just to get an idea of my brains.
Later on I added a compass structure (script and object) and could steer a robot in RL, just moving my brains! (My brains sent http request to a server and these were detected by a prog on my laptop, which sent signals through Bluetooth to a Lego NXT robot.)











But that did not resolve my all black void status. I decided to check on internet. I had happened to me before, but it went away, now this all black thing was persistent. Somehow somebody told something about two screens? Yes I am using two screens, yes I remember having had problems with beamers, trying to display shockwave animations on the second screen….it didn’t work out.
Ok let’s try this, one screen, black, other, main screen, shift Second Life, rebake textures. Behold! My colors are back. Shift back again, change clothing: all black, a void again. SO this is resolved! Working with two screens, depending on graphical cards, an avatar can go in the all black status.
By the way, my preview on importing pictures: sculpties was gone too in the all black status. Very annoying, because sculpties tend to come in wrong! So that problem is tackled to.

I must keep on to the idea of creating my own brains though. It was fun putting all kind of things into it, and showing it so now and then by a script which opens randomly my pumpkin – skull …





mercredi 6 février 2008

SL connects to RL (scripting)

Second Life is a world in itself. A world, what is a world? Something which exists in itself and provides the means for its inhabitants to exist like humans. A world has to have enough variety, being a whole, being “closed” in itself. Being closed means here that things in “the world” stay in this world, it is more or less self contained.
Stay ''mainly'' into itself, because only RL is in this sense a world: we cannot get outside of reality, example: the world of music.
All worlds we make up finally reside in reality somehow. Also Second Life!

Unlike Real Life, this Second Life has connections to another world, outside of it, which is, of course Real Life. Quite a few! Besides its own structure, of rendering, objects and avatars here is input of images, sounds, even video, and on the constructive level of course input of ideas and energy of its residents. What would be SL if there were not any avatars having their proper behaviour, well, we see that sometimes: emptiness, void, silence!
Avatars in this world have motives and are independent of each other.
A drive for a lot of people is the money; Linden money can be exchanged in real money and the other way around, this is a connection too! But for some, money is not everything! Some avatars like to program.
Using the Linden script you can enter information in this 3D world, and get it out again. Not as thoughts or memories, but as real hard data!
Linden script has a special function for this, the httprequest. It is a call to a page on the internet, or a page connected to a server. This is it:

key llHTTPRequest(string url, list parameters, string body)

where url is the web address, parameters can simple be [HTTP_METHOD,"GET"], and the body left empty, that is to say the empty string “”.

This request gives a reply, being the text of the web or php page called back into Second Life as a string, a text, and this response can be monitored by the method

http_response(key request_id, integer status, list metadata, string body)

Well and this server can be connected to other “worlds”. The world of internet for instance. Doing statistics of visitors can be stored on a server. Also a microphone can be installed in SL, recording what has been said in its neighbourhood. This microphone can store the recordings on a server.
Connections to servers can be made from a PC, using progs made for instance in C# (or whatever language also allows to make a http-request, say, FLASH, DIRECTOR). So information retrieved from the server can be stored and used on the PC.
This same PC program can make a Bluetooth connection. These connections have two directions. So a cell-phone can tell something to this PC program, telling it the server, and an object in Second Life can ask the server what happened, so through Bluetooth, PC, and server a Second Life object can be commanded.
The other way around is the second direction:
Some object give information on movement, speed and angle to the server, the server is asked for speed and angle by a PC prog and this prog provides a small robot for motor speed and steering angle using a Bluetooth connection. The small robot being for instance a NXT, the Lego robot. And this all works!



Five March was flying around with a sender and this flying around caused the robot to move!
Very funny, but imagine, sometimes it doesn’t work! What can be the reason? In the end it turned out that quite a few owners of land don’t give permission to run scripts! So the http request doesn’t work, and the robot bumps into a wall!
This robot can be steered also using an in between script called GlovePie with a wii remote control. So this means again that the wii remote control can easily get information into Second Life, moving object.
Connecting worlds is wonderful. It is where the cold technical world becomes social.

Big fun also is: I am writing two blogs, one about the NXT and the other is about Second Life. Now these two blogs have met!

mardi 4 décembre 2007

Angles in SL, and the llAtan2 method

Working on the connection of a vehicle in Second Life and a robot ( a simple Lego NXT) to steer in Real Life, the absolute angle had to be found in Second Life.

For this the rotations, llGetRot() were not too appropriate. Not because these are quaternions, and not degrees, no, no:

The problem of rotations in general is that is goes from 0 – 360 and then in one jump back to 0. So adding two of these can give strange results! For instance 180 + 185 = 5! Adding is not a problem, but finding an average might be: the average of 180 and 185 is 2.5, haha!

*(180 + 185) / 2 = 182.5 in our world, but because of the jump in the degree world this becomes 2.5!

I needed the angle of steering for the robot, I had to subtract two angles, and was running into another difficulty: the rotations in SL give only angles from 0-180 degrees. So left and right was a bit difficult to get! Of course there are many solutions to this. (Even with the quaternions itself, but let's solve this without mister Hilbert!)

Two objects, say lying 1 meter apart have a different position. From this difference the angle can be calculated using simple math, normally the arctan, or the atan.

Same problem here: the atan returns angles between 0 and 180 or 0 and -180, so the backwards angles between 180 and 360 had to be found considering the configuration of the objects. Not too difficult but something extra to consider.

But then, for once the Linden script had a surprise to the positive side:
The
Linden function is llAtan2, and this 2 is puzzling, not to be explained in the wiki.
Some experimenting resulted in the nice behavior of this function: it returns the full angle, from 0 – 360 degrees. This makes life easy!!

So the configuration for the absolute angle in SL:
Two objects linked, one, sending its position to the root every half sec:

Script:

default

{
state_entry()
{
llSetTimerEvent(.5);
}

timer()
{
llMessageLinked(LINK_ROOT, 0, (string) llGetPos() , NULL_KEY);
}
}

and the root receiving the message and making an angle of this position and the position of his own:

default

{

state_entry()
{ }

link_message(integer sender_num, integer num, string str, key id)

{
vector myPos = llGetPos();
vector childPos = (vector) str;
vector diff = myPos - childPos;
float x = diff.x;
float y = diff.y;
angle = PI - llAtan2( x,y ) ;
llSay(0,(string)( angle/PI*180));
}
}

Ok, the PI in front of the function is extra, whatever you need on angle, which way etcetera, you have to decide for yourself….

And combining this recent angle, with the angle measured just before is what gives me the steering angle for the robot, to be sent to the server and the server is asked for this angle by a C# prog which is running on my laptop, this C# prog is also connected with Bluetooth to the NXT, and it steers! (Well all the connections take a bit of time, so the robot is bumping in a wall before you know it…no steering your own real car from Second Life J

dimanche 30 septembre 2007

Museum 12, Technicalities








The main subject of the virtual museum is the history of Rotterdam, not scripting or making sculpties. But some interesting methods are used to make things look alive.

Scripting was used in:
  • objects in the exhibition, giving comment on touch
  • special effects, sounds and music when an avatar is near
  • temp rezzing, giving objects only on a temporary basis
  • streaming video
  • some teleportation links
  • in special objects like a book, giving an abstract
  • for the quiz, linked to a database
  • for some tracking of visiting avatars, avatars are registered for statistics
  • for the HUD, the thing to wear for obtaining coment in a choosen language
techniques using programes outside of Second Life:
  • for preparing images photoshop was used
  • for the streaming video i used a MAC with itunes
  • for making the sculpties BLENDER
  • for sounds and music, Audacity
  • the linking to the database is done in PHP pages
  • the text and comments about the object on display are stored on a server

Notes:

The comments of the items in the exhibition are in the items and are reproduced on touching by the interaction of the HUD, the HUD giving the right language.

This text of the items can be refreshed by a single command, said by an avatar.

The streaming videos were a problem. Not the streaming itself but the streaming of these videos in the group context. I think there is a bug in this group owned streaming video prims construction.

In the museum visiting avatars are counted (database connection) and some statistics of visitors is generated. The average visitor number is 20 a day since the summer of 2007.

The quiz added in December has its own database. Avatars can try up to five questions a day. Questions are randomly chosen from the list of 50 questions.

Outside the museum is a book showing the main subjects of the exhibition, pages can be turned, a bit of comment is added in floating text.


http://www.hmr.rotterdam.nl/