Tuesday, June 30, 2009
Thursday, June 18, 2009
something fishy
Parece que hay algo raro con 3delight.
Les dejo el link del post: http://www.3delight.com/en/modules/PunBB/viewtopic.php?id=1519 [Point based approximate: very long rendertime].
Les dejo el link del post: http://www.3delight.com/en/modules/PunBB/viewtopic.php?id=1519 [Point based approximate: very long rendertime].
Friday, June 12, 2009
bent normals
occlusion y bent normals estan relacionadas. Ambos se calculan al mismo tiempo y es posible calcularlos cuando usamos raytracing o cuando usamos point clouds y la diferencia que tenemos es la misma que con occlusion (grano con raytracing dependiente del numero de samples por ejemplo).
Este resultado no es igual a calcular N (pero se pueden usar ambos en compuesto). Y el renderearlo/calcularlo es opcional y dependiente del proyecto. Hay mucha discusión entre su utilidad. Personalmente, es poca la utilidad para reiluminar (como difusos/rims) y siempre termina controlando otras partes del compuesto.
surface bentnormals (
string ptcfile = "";
)
{
extern normal N;
extern point P;
extern vector I;
float bleeding;
vector bentNormal;
vector Nn = normalize (N);
if (ptcfile != "")
{
bleeding = occlusion(P, Nn, 0, "pointbased", 1, "filename", ptcfile, "environmentdir", bentNormal, "clamp", 1, "sortbleeding",1);
}
else
{
bleeding = occlusion(P, Nn, 128, "environmentdir", bentNormal);
}
Ci = color(normalize(vtransform("world",bentNormal)));
//cambiar dependiendo al espacio que se necesite
}
Originalmente, jc iba a subir esto, pero le quite el source y sus notas ;)
Notas:
Este resultado no es igual a calcular N (pero se pueden usar ambos en compuesto). Y el renderearlo/calcularlo es opcional y dependiente del proyecto. Hay mucha discusión entre su utilidad. Personalmente, es poca la utilidad para reiluminar (como difusos/rims) y siempre termina controlando otras partes del compuesto.
surface bentnormals (
string ptcfile = "";
)
{
extern normal N;
extern point P;
extern vector I;
float bleeding;
vector bentNormal;
vector Nn = normalize (N);
if (ptcfile != "")
{
bleeding = occlusion(P, Nn, 0, "pointbased", 1, "filename", ptcfile, "environmentdir", bentNormal, "clamp", 1, "sortbleeding",1);
}
else
{
bleeding = occlusion(P, Nn, 128, "environmentdir", bentNormal);
}
Ci = color(normalize(vtransform("world",bentNormal)));
//cambiar dependiendo al espacio que se necesite
}
Originalmente, jc iba a subir esto, pero le quite el source y sus notas ;)
Notas:
- En el código, estamos calculando bent normals en world space. Aqui podemos usar "current" (que es "camera" con 3delight).
Friday, June 5, 2009
Subscribe to:
Posts (Atom)