quinta-feira, 28 de abril de 2011

Criando uma saia flex

Nessa parte da aula iremos aprender a criar uma saia flex usando o prim flex da outra aula.
Vamos precisar também do script looprez, encontrado nesse blog.




Looprez script otimizado para a aula:


////////////////////////////////////////////////////////////////////////////////
// LoopRez v0.6, by Ged Larsen, 20 December 2006
//
// - rez a number of objects in an ellipse, whose size is determined by xRadius and yRadius
// - all facing "outwards", along a tangent to the ellipse
// - can set how much the objects flare outwards
// - properly handles object rotation corrections (for example, X-axis 180 degree rotation helps for flexi-prim skirts)
// - can also get a 'saddle' bend, to generate a bend that might help for necklaces (from Ariane Brodie)
//
// To use:
// 1) create a prim that will contain this script and the object to use
// 2) put the script into the prim
// 3) create an object that will be used, and name it "Object"
// 4) put "Object" into the prim containing the script, by dragging it from your inventory
// 5) get out of Edit Mode, and touch the prim
//
// Random note:
// - this version does NOT insure equal spacing of objects along the perimeter of the ellipse
// - i.e., objects "bunch up" at the long ends of an ellipse; the effect should be acceptable for non-extreme ellipses
// - even spacing of objects can be accomplished, but requires simulation of integral calculus, which slows down the script
//
// References:
// - tangent formulas from: http://mathworld.wolfram.com/Ellipse.html


////////////////////////////////////////////////////////////////////////////////
// CONFIGURATION PARAMETERS, change these to your liking

string objectName = "saia"; // objeto a ser copiado
integer numObjects = 12; // quantidade de objetos
float xRadius = 0.23; // elipse eixo-x
float yRadius = 0.17; // elipse eixo-y
float flareAngle = 40.0; // grau de inclinacao
float bendCoefficient = 0.0; // coeficiente de dobramento
vector rotOffset = <0.0, 180.0, 0.0>; // rotacao
vector posOffset = <0.0, 0.0, 0.6>; // posicao



////////////////////////////////////////////////////////////////////////////////
// No need to mess with anything below here

makeLoop()
{
integer n; // which object is being placed
float theta; // angle in radians
vector pos; // position
rotation rot; // rotation in quaternion format

for(n = 0; n < numObjects; n++) {

theta = TWO_PI * ( (float)n / (float)numObjects );

pos.x = xRadius * llCos(theta); // ellipse: 2x xRadius meters wide
pos.y = yRadius * llSin(theta); // ellipse: 2x yRadius meters wide
pos.z = -bendCoefficient*llCos(theta)*llCos(theta); // saddle shape, bending downwards on X-axis
pos = pos + llGetPos() + posOffset;

rot = llEuler2Rot(<rotOffset.x*DEG_TO_RAD, rotOffset.y*DEG_TO_RAD, rotOffset.z*DEG_TO_RAD>); // user-chosen rotation offset correction
rot = rot * llEuler2Rot(<0, -1*flareAngle*DEG_TO_RAD, 0>); // flare generation (poof)

// the following make the objects face outwards properly for an ellipse; using theta alone is only correct for a circle
// the scary formula calculates a unit vector TANGENTIAL to the ellipse, and llRotBetween is used to figure out how much the object needs to rotate to lie parallel to the tangent
rot = rot * llRotBetween(<0.0,1.0,0.0>, <-1.0 * xRadius * llSin(theta) / ( llSqrt ( (yRadius*yRadius * llCos(theta) * llCos(theta)) + (xRadius*xRadius * llSin(theta) * llSin(theta))) ),yRadius * llCos(theta) / ( llSqrt ( (yRadius*yRadius * llCos(theta) * llCos(theta)) + (xRadius*xRadius * llSin(theta) * llSin(theta))) ),0.0>);
if ( n== (numObjects/2) ) // LSL's implementation of llRotBetween at theta = pi radians is reversed at 180 degrees, so this manually corrects it
rot = rot * llEuler2Rot( <0,PI,0> );

llRezObject(objectName, pos, ZERO_VECTOR, rot, 0);
}
}

default
{
touch_start(integer total_number)
{
if (llDetectedOwner(0) == llGetOwner())
{
makeLoop();
}
}
}

quinta-feira, 14 de abril de 2011

Criando um sculpt prim

Sculpt prims ou primitivos esculpidos são especiais porque é possível criar objetos mais realísticos com muito menos material. Isso é muito importante, pois todo terreno tem um limite de prims que o dono pode colocar.
Neste tutorial iremos aprender apenas o básico para que vocês entendam como funciona o processo.
Iremos usar dois programas gratuitos: o Rokuro, para criar alguns sculpties simêtricos, e o SculptySpace para pré-visualizar as criações.

Assista o vídeo abaixo:

quarta-feira, 13 de abril de 2011

Criando um prim flexível

Vamos aprender a criar um flex prim (primitivo flexível).
Flex prims são muito usados para criar cabelos, bandeiras, saias e vários outros objetos.
A criação de flex prims é bem simples para quem já domina as técnicas básicas de construção no Second Life.



Após construir qualquer prim, vocês devem marcar a opção "Phantom" na aba Object.


E na aba Features vocês devem marcar opção "Flexible path"


As principais opções que vocês mais irão mexer é Gravity (Gravidade) e Wind (Vento).

E é isso. Brinquem com as outras opções para ver o que acontece com o prim.

terça-feira, 5 de abril de 2011

Tutorial de como construir no Second Life

Vou ensinar o básico de construção no Second Life.
Portanto, não espere nada mirabolante. É apenas para vocês entenderem como funciona o processo de construção com primitivos (prims).


Vamos ver os comandos em detalhes.
Você só pode começar a construir se clicar no chão com o botão direito. Se clicar em um objeto você só verá a janela de edição do objeto.

Esses são os primitivos que podem ser criados. São cubos, pirâmides, cilindros, cones, esferas, toróides e suas respectivas metades. Também podemos criar plantas.


O cubo é o primitivo (prim) que pode melhor exemplificar a construção, por exibir todos os eixos (x, y, z).


Pressione a tecla Ctrl. Você verá 3 círculos surgirem no cubo.
Clicando e segurando o mouse sobre esses círculos você pode girar o prim. Veja que cada cor corresponde a um eixo (x, y, z).
E cada eixo está representado na janela de edição do objeto, na aba Object.
Portanto, você pode tanto usar os círculos quanto os números na janela para girar o objeto.
A vantagem da janela de edição é que ela é mais precisa.

Pressionando Ctrl + Shift fará surgir cubinhos no prim.
Clicando e segurando nesses cubinhos te possibilita mudar as dimensões do cubo. Os cubos azul, vermelho e verde do centro só mudam uma dimensão de cada vez.
Os cubos brancos do canto mudam o cubo inteiro.

Se você pressionar e segurar a tecla Shift e puxar a ponta de uma das setas você fará uma cópia do prim.
Se você manter a tecla Shift pressionada e clicar em outros objetos você selecionará todos eles. E depois para juntar todos basta pressionar Ctrl + L.
Para separar os objetos você deve pressionar Ctrl + Shift + L.

Vimos que na aba Object podemos mudar vários valores "físicos" do prim.
Na aba Features podemos tornar o objeto Flexível (Flexible). Isso é importante para criar cabelos, saias, bandeiras e outros objetos.
O item Light possibilita criar FaceLights (luzes de rosto), lâmpadas e outros objetos luminosos.

A aba Texture nos permite mudar a textura, transparência e cor de um prim.

A aba Content (Conteúdo) nos permite colocar ou tirar objetos do prim. Para colocar objetos no prim basta arrastar o objeto do inventário para essa aba.
Para tirar os objetos basta apagar (Delete). Se for um objeto No Copy basta arrastar para o inventário, para não perdê-lo.

domingo, 3 de abril de 2011

Enviando a imagem e criando a roupa no SL

Criamos a roupa fora do SL e vimos no SL Clothes Previewer que ela estava boa.
Agora chegou o momento de mandar a imagem para o SL e criar a roupa realmente.
Vamos lá no menu do viewer e clicamos em File (Arquivo) e Upload Image (L$10) - Envio de Imagem (10 lindens).

Procure pelo arquivo que você criou, clique nele e clique em abrir.


Vai surgir essa janela para você se certificar que é o arquivo correto.
No Imprudence Viewer e em alguns outros, você pode mandar o arquivo gratuitamente [Temporary Image (Free)]. Só que ele só permanecerá enquanto teu avatar estiver online. Quando o avatar sair do SL a imagem some.
Então, se você tem certeza que a imagem está boa, deixe a opção de "Imagem Temporária" desmarcada e clique em Upload (L$10).

A imagem aparecerá numa janela, e uma outra informando que você pagou 10 lindens para enviar a imagem para o SL.

A imagem irá para a pasta Texture do seu inventário.


Agora vamos criar uma camisa no inventário, pois por enquanto só temos uma textura (uma imagem).
Clique com o botão direito sobre a pasta Clothing (Roupa) e selecione New Clothes (Novas Roupas) e New Shirt (Nova Camisa).

Clique com o botão direito sobre a new shirt (nova camisa) e selecione Wear (Camisa).

Você verá uma camisa branca de manga longa aparecer no seu avatar.

Clique com o botão direito do mouse sobre o avatar e selecione Appearance (Aparência).

Na janela de edição de aparência clique no botão shirt. Depois clique na janela branca escrita "Fabric" (Tecido).


Na janela que surgir você irá até a pasta de textura, selecionar a imagem que você enviou e clicar no botão Select (Selecionar).

Vai surgir a camisa no teu avatar.
Para evitar situações embaraçosas use um avatar de acordo com a roupa e bem longe de qualquer outro avatar.
Mexendo nas barrinhas você pode mudar o comprimento da roupa, das mangas, da gola...

Veja que embaixo da janela de Fabric (Tecido) tem uma janela de Color Tint. Nessa janela podemos escolher a cor da roupa.
Uma vez que você gostou de como ficou a roupa clique no botão Save (Salvar).

Vendo como a roupa ficará no avatar

Sempre é bom verificar como ficou a roupa que criamos antes de mandar para o Second Life. Já que custa L$10 (10 lindens) para mandar as imagens para lá.
Primeiro, vamos baixar o SL Clothes Previewer (Pré-Visualizador de Roupas do SL). Pegue o arquivo slcp_win.zip e extraia os arquivos para uma pasta SLCP.

Para executar o programa basta dar um clique duplo no ícone do programa. Atenção, o clique duplo é em cima do ícone, não no nome do programa.
Se quiser você pode criar um atalho para o programa na sua área de trabalho. Basta clicar com o botão direito do mouse sobre o nome do programa e selecionar a opção "Copiar".
Depois, vá a área de trabalho, clique com o botão direito e selecione a opção "Colar Atalho".
Pronto! Poderá sempre clicar nesse ícone para executar o SLCP.


Esta é a tela do SLCP. Ele pode ser usado tanto para ver roupas, como skins criadas por você.
O botão "Toggle Gender" é para trocar o sexo da figura. Para ver como a roupa ficará num avatar masculino ou feminino.
O botão "Head" é para carregar imagens da cabeça, como skins ou tatuagens de rosto.
O botão "Upper" é para carregar imagens do torso, como camisas, camisetas, a parte de cima da jaqueta, tops, sutiãs, a parte de cima do biquini, tatuagens, skins.
O botão "Lower" é para carregar imagens do quadril e pernas, como calças, shorts, a parte de baixo do biquini, sungas, cuecas, tatuagens, skins.
O botão "Skirt" é para carregar imagens de saias.

Clique agora no botão Upper.

Vamos carregar a imagem "camisa.tga" que criamos na lição anterior. Procure pela pasta onde está a imagem, clique no arquivo e clique no botão "Abrir".

Veremos a camisa ser carregada na figura feminina.

Se quisermos ver como fica num avatar masculino basta clicar no menu "Scene" (Cena) -> "Toggle Gender" (Trocar gënero).

Vamos usar o mouse agora. Clique e segure o botão esquerdo em alguma parte superior da parte azul da imagem. Arraste o mouse um pouco para baixo.
Você verá a figura rotacionar (girar) para baixo. Assim poderemos ver alguns detalhes da alça da camisa. Para voltar a figura para sua posição clique e arraste de baixo para cima.
Se quisermos ver as laterais basta clicar no lado direito ou esquerdo da figura e arrastar o mouse para o lado contrário do que clicamos.
- Para dar "Zoom" na imagem basta segurar a tecla "Shift", clicar no canto esquerdo e arrastar para a direita. Para diminuir a imagem basta arrastar ou mouse da direita para a esquerda.
- Para mover a figura sem rotacionar (girar) segure a tecla "Ctrl", clique e arraste o mouse para os lados, ou para cima ou para baixo.

Pela figura abaixo podemos ver que a camisa não está bem alinhada.


Para resolver isso vamos baixar os Chip Midnight's improved clothing templates.
Umas das vantagens dos templates do Chip Midnight sobre os templates oficiais da Linden Lab é que eles tem marcações de alinhamento.

Assim, podemos usar essas marcações para alinhar melhor a roupa que estamos criando.


Na próxima aula veremos como mandar as imagens para o Second Life e criar as roupas com elas.

Criando camisas para o Second Life

Vamos aprender a criar uma camisa simples. Com esse mesmo tutorial você pode expandir para a criação de calças, saias e jaquetas. Basta usar o template correto para cada tipo de roupa.

- Requisitos básicos:
1 - Templates de roupas - a base para criação de cada tipo de roupa;
2 - Um editor de imagem, que trabalhe com camadas (layers) e abra arquivos de extensão psd.

1 - Templates de roupas - Para começar, pode ser baixado qualquer um dos dois primeiros arquivos da página desse link. Baixe um deles e extraia os arquivos para uma pasta.

2 - Editor de Imagem - Nesse tutorial iremos usar o Paint.Net, que é gratuito e simples de usar.
Baixe e instale o Paint.Net.
2a - Para o Paint.Net abrir arquivos psd você tem que baixar o arquivo Photosho.zip, extrair e mover o arquivo Photoshop.dll para a pasta FileTypes do Paint.Net.

- Executando o Editor de Imagens:
Essa é a janela do Paint.Net. Do lado esquerdo vemos a janela de ferramentas (tools), do lado direito a janela de camadas (layers) e logo abaixo a janela de cores.



As ferramentas que mais usaremos são as de número:

4 (seleção mágica);
5 (balde de tinta);
6 (pincel);
17 (borracha);
20 (linha).


Vamos abrir o arquivo psd para criar a camisa. Escolha o que tem o nome Upper (superior).
O que tem nome Lower é o template de calças e o Skirt é para saias. Face é do rosto, usado para skins ou tatuagens de rosto. O Eye é para criar olhos.


Quando abrir um arquivo psd vamos ver a janela de camadas (layers) ser preenchida por várias imagens. São as camadas. Cada camada pode ser ativada ou desativada clicando no quadradinho ao lado de cada imagem.
Veja que o template vem com algumas camisas de exemplo.

Clique na imagem abaixo para ver os comandos da janela de camadas.
Por enquanto, vamos apagar todas as camadas, exceto a UV_map.
Clique na camada logo acima da UV_map. Veja que ela fica com o fundo azul. Agora clique no botão de apagar camada e vá apagando até restar apenas a UV_map.
Não se preocupe, pois vamos salvar o arquivo com outro nome, para não estragar o template.

E esta é a camada UV_map. Ela tem os contornos do avatar.
Agora clique no botão de criar camada (o primeiro a esquerda). Iremos desenhar nessa nova camada.


Clique na cor azul na janela de cores. Pegue a ferramenta de linha (a de número 20).
Clique num ponto da imagem e arraste a linha até o outro extremo da imagem.
Note que aparecem 4 quadrados na linha. Você pode clicar nesses quadrados e arrastar a linha para ajeitar de acordo com a imagem do template.


Depois que criamos um contorno (sem buracos entre as linhas) nos iremos usar a ferramenta balde de tinta (número 5). Clique dentro do contorno e a figura será preenchida.

Agora, na janela de cores, selecione a cor vermelha.
Pegue o balde de tinta e clique fora da imagem azul.
Pegue a seleção mágica (número 4) e clique na área azul e pressione o botão Delete ou Del. Isso apagará a parte azul, deixando uma área transparente. Faça isso com as 2 áreas azuis.
Depois crie uma nova camada abaixo da camada vermelha.
Nessa nova camada, coloque um "tecido" do seu gosto. Lembre-se que deve ser uma imagem com 512 x 512 pixeis.

Junte a camada vermelha com a camada de tecido.
Depois, pegue a seleção mágica, clique na área vermelha e apague a área vermelha.

Agora vamos salvar nossa camisa (camiseta, top, sutiã...)
Clique em File (Arquivo), Save As (Salvar como)

Podemos salvar em 2 tipos de arquivos: png ou tga. Ambas suportam transparência.

Mas, para suportar transparência elas devem ser salvas como 32 bit.
Antes que serem realmente salvas, o programa pergunta se você quer "achatar" a imagem. Basicamente ela junta todas as camadas para formar apenas uma imagem.
O programa não iria perguntar isso se houvesse apenas uma camada.
Tendo certeza que a camada do UV_map está desativada, clique em Flatten (Achatar) e pronto.

No próximo tutorial, veremos como a roupa ficará no avatar antes de mandar a imagem para o Second Life.
Isso é necessário, pois custa L$10 (dez lindens) para mandar cada imagem para o Second Life.