jueves, 10 de noviembre de 2011

Script Básico para crear 3D en Winamp AVS's

Aca dejo este script por si alguien todavía se anima a programar en avs's de Winamp.


/* En este código las únicas variables que se utilizan son:
“n” la cual se utiliza para especificar el número de partículas a utilizar en la línea de dibujo.
“i” Contiene el porcentaje de progreso de las partículas de las partículas de dibujo.
“x” e “y” Especifican la posición “x” e “y” del centro de la partícula. Con un rango de -1 hasta 1
*/


0. INIT
1. n = 100; //numero de puntos a desplegar en la línea
2. dst = 2;

3. /*Variables mx, my, y mz, que se utilizarán en las líneas 25, 26, y 27, para agregar distancia en los respectivos ejes*/
4. mx = 0; my = 0; mz = 0;

5. FRAME
/*Variables rx, ry, y rz, las cuales marcan la rotación en los respectivos ejes, dichas variables actúan como contadores, en este caso en la línea 6 la variable rx aumenta con intervalos de “0.01”*/
6. rx = rx + .01;
7. ry = 0;
8. rz = 0;
9. xs = sin(rx);
10. ys = sin(ry);
11. zs = sin(rz);
12. xc = cos(rx);
13. yc = cos(ry);
14. zc = cos(rz);
15. POINT
16. x1 = 0;
17. y1 = 2 * i - 1;
18. z1 = 0;
19. y2 = (y1 * xc) – (z1 * xs);
20. z2 = (y1 * xs) + (z1 * xc);
21. x2 = (z2 * ys) + (x1 * yc);
22. z3 = (z2 * yc) – (x1 * ys);
23. x3 = (x2 * zc) – (y2 * zs);
24. y3 = (y2 * zc) + (x2 * zs);
25. x4 = mx + x3;
26. y4 = my + y3;
27. z4 = mz + z3;
28. x = x4 / (1 + (z4 / dst));
29. y = y4 / (1 + (z4 / dst));
30. c = 1 / (1 + (z4 / dst)); // variable a utilizar en los colores basada en la distancia y la traslación de ejes
31. red=c; blue=c; green=c //código de colores basados en "c"



No hay comentarios:

Publicar un comentario