Stratos: Punto de Encuentro de Desarrolladores

¡Bienvenido a Stratos!

Acceder

Foros





Menu

Mostrar Mensajes

Esta sección te permite ver todos los posts escritos por este usuario. Ten en cuenta que sólo puedes ver los posts escritos en zonas a las que tienes acceso en este momento.

Mostrar Mensajes Menu

Mensajes - fiknius

#16
CDV / Descuentos tren para el año que viene
02 de Noviembre de 2009, 11:51:19 PM
Hola a todos,

Hoy hemos estado un amigo y yo en Atocha (Madrid) comprando los billetes para ir a Valencia este fin de semana al CDV2009 y hemos sido conscientes de la pastaca que es el billete del Alaris. Mirando un poco por la pagina de RENFE he encontrado algo que quiza el año que viene vendra bastante bien para la gente que quiere ir en tren.

http://www.renfe.com/ferias_congresos/index.html

Ya es tarde porque pone que hay que solicitarlo 30 dias antes del evento, pero quiza para el año que viene, si la organizacion del CDV2009 quiere, puede solicitar este servicio, no se si tiene algun coste, pero seguro que un descuento de un 30% anima a mucha mas gente a ir.

Un saludo y nos vemos en Valencia  ;)
#17
CDV / Re: Información sobre la CDV 2009
30 de Octubre de 2009, 11:30:47 AM
Oye Nae en la web pone que ya esta el programa de CDV pero a mi me aparece la pagina vacia, ¿os pasa a todos?

Saludos.


EDIT: Ups os he debido pillar poniendolo jejeje ya lo veo ;P
#18
CDV / Re: Información sobre la CDV 2009
28 de Octubre de 2009, 04:18:12 PM
Cita de: Nae en 26 de Octubre de 2009, 09:59:55 AM
La propuesta que impera por ahora es:

Jueves: Formacion
Viernes mañana: Ponencias
Viernes despues de comer: Presentaciones de proyectos / empresas (decidme algo si quereis hacer algo)
Sabado mañana: Ponencias
Sabado tarde: Mesas redondas

Pero como todo hasta la semana que viene, es temporal

¿A que hora empiezan las ponencias mas o menos por la mañana?

Gracias Nae
#19
CDV / Re: Información sobre la CDV 2009
25 de Octubre de 2009, 11:41:18 AM
Buenas,

Se sabe ya algo de cuando van a ser las ponencias (viernes o sabado, o los dos) porque parece que el jueves va a ser para formacion ¿no?.

Saludos.
#20
Programación gráfica / Re: Problemas outline en Cel Shading
30 de Septiembre de 2009, 10:30:42 AM
Ahora que me he quitado un problema de encima con el Cartoon  :P estudiare tu propuesta detenidamente porque me habeis metido algo de miedo con el tema del MDX jejeje...

Gracias Vicente.
#21
Programación gráfica / Re: Problemas outline en Cel Shading
29 de Septiembre de 2009, 11:49:54 PM
Lo siento, pero me he anticipado en el anterior mensaje jejeje... me pasa por no leer los comentarios, con lo bien que lo explican en el Shader y no me doy ni cuenta, pero ya tengo una primera aproximacion bastante buena a lo que estaba buscando.  :o

A ver que os parece:


Seguire enredando con las variables del Shader hasta que encuentre el toque adecuado.

Muchas gracias a todos.
Saludos.
#22
Programación gráfica / Re: Problemas outline en Cel Shading
29 de Septiembre de 2009, 11:33:27 PM
Cita de: blau en 26 de Septiembre de 2009, 09:25:22 PM
Echale un vistazo a esto:

http://aliensofextraordinaryability.com/downloads/CelShaders.zip


Despues de mirarme el codigo y el Shader he intentado reproducirlo en mi motor pero sigo teniendo el mismo problema de siempre, la maldi... textura sigue sin pintarse, no se si es que paso mal el parametro al Shader o que pero el caso es que no soy capaz de conseguirlo, y como muestra...:



Seguire poniendo aqui los avances que vaya teniendo, pero si alguien puede aportarme algo de luz se lo agradecere.
Pongo tambien el Shader por si os da alguna pista mas, este Shader se usa con XNA y no se si tiene que ver algo para que a mi no me funcione en mi motor hecho en Managed DirectX:

Código (cpp) [Seleccionar]

float4x4 xWorldMatrix; //World Matrix
float4x4 xViewMatrix; //View Matrix
float4x4 xProjMatrix; //Projection Matrix

float4 xEyePosition; //Camera Position
float4 xDiffuseLightColor; //Diffuse light color, float4(0.6f, 0.6f, 0.6f, 1.0) is a good starting point
float4 xLightPosition; //Obvious

//the shader has 3 layers, but it works in an good way that mimics
//the way 2D animators paint Cels.
//The base color is constant, and it serves as the shadowed area of the surface.
//Layer one is what would normally be the diffuse are of the surface.

//Layer One is caluculated with a specular function, so the specular hit has to be really wide
float LayerOneSharp = 0.6f; // This sharpens the edges of the layer, valid values are between 0 and 1. 0.6 is a good start
float LayerOneRough = 0.05f; // This sets the bleed of the layer. youd want this pretty wide, so 0.05 is a good start
float LayerOneContrib = 0.05f; // This is a multiplier for the final layer contribution, 0-1 is valid closer to 1 blows out the layer so, 0.05 is good

//Layer two also uses a specular function, it can provide a specular highlight or an additional paint layer
float LayerTwoSharp = 0.85f; //This should be very sharp 0.85 is a good default
float LayerTwoRough = -10.0f; //Highlight should be small 5.0f-10.0f is good start.
float LayerTwoContrib = 0.3f; //0.3 f wil get you pretty close to white without blowing the highlight out. Set it to 0 if you don't want a spec highlight
float EdgeOffset;

//Sampler for the color texture applid to the model
texture xModelTex;
sampler TextureSampler = sampler_state
{
Texture = <xModelTex>;
    AddressU  = WRAP;
    AddressV  = WRAP;
    MIPFILTER = LINEAR;
    MINFILTER = LINEAR;
    MAGFILTER = LINEAR;
};

//Input for the vertex Shader
//There are two vertex shaders both take the same input
struct VS_INPUT
{
float4 Position : POSITION0;
float3 Normal : NORMAL0;
float2 Texcoord : TEXCOORD0;

};

//Output for the Cel vertex shader
struct VS_OUTPUT1
{
float4 Position : POSITION0;
float3 Normal : TEXCOORD1;
float3 ViewDirection : TEXCOORD2;
float3 LightDirection : TEXCOORD3;
float2 Texcoord : TEXCOORD0;
};

//Output for the outline vertex shader
struct VS_OUTPUT2
{
float4 Position : POSITION0;
float4 Normal : TEXCOORD1;
};

//The Cel vertex shader
//It just transforms the model and
//finds the light and view directions
VS_OUTPUT1 Transform(VS_INPUT Input)
{
float4x4 WorldViewProjection = mul(mul(xWorldMatrix, xViewMatrix), xProjMatrix);
float3 ObjectPosition = mul(Input.Position, xWorldMatrix);

VS_OUTPUT1 Output;
Output.Normal = mul(Input.Normal, xWorldMatrix);
Output.Position = mul(Input.Position, WorldViewProjection);

float3 CamPosition;
CamPosition.x = xEyePosition.x;
CamPosition.y = xEyePosition.y;
CamPosition.z = xEyePosition.z;

float3 LightPosition;
LightPosition.x = xLightPosition.x;
LightPosition.y = xLightPosition.y;
LightPosition.z = xLightPosition.z;

Output.ViewDirection = CamPosition - ObjectPosition;
Output.LightDirection = LightPosition - ObjectPosition;
Output.Texcoord = Input.Texcoord;

return Output;
}

//The outline vertex shader
//This tranforms the model and
//"peaks" the surface (scales it out on it's normal)
VS_OUTPUT2 Outline(VS_INPUT Input)
{
float4x4 WorldViewProjection = mul(mul(xWorldMatrix, xViewMatrix), xProjMatrix);

VS_OUTPUT2 Output;
Output.Normal = mul(Input.Normal, xWorldMatrix);
Output.Position = mul(Input.Position, WorldViewProjection)+(mul(EdgeOffset, mul(Input.Normal, WorldViewProjection)));

return Output;
}

//Input for the Cel Pixel shader
struct PS_INPUT
{
float3 Normal : TEXCOORD1;
float3 ViewDirection : TEXCOORD2;
float3 LightDirection : TEXCOORD3;
float2 Texcoord : TEXCOORD0;
};

//The Cel Pixel shader
//This calculates the surface color
float4 Cel(PS_INPUT Input) : COLOR0
{
float3 Normal = normalize(Input.Normal);
float3 ViewDirection = normalize(Input.ViewDirection);
float3 NLightDirection = normalize(Input.LightDirection);

float oneW = 0.18f * ( 1.0f - LayerOneSharp );
float twoW = 0.18f * ( 1.0f - LayerTwoSharp );

float NDotL = dot(Normal, NLightDirection);
float3 Reflection = normalize(2.0f * NDotL * Normal - NLightDirection);

float4 layerOneColor = smoothstep(0.72f-oneW, 0.72f+oneW, pow(saturate(dot(Reflection, ViewDirection)), LayerOneRough));
float4 layerTwoColor = smoothstep(0.72f-twoW, 0.72f+twoW, pow(saturate(dot(Reflection, ViewDirection)), LayerTwoRough));

float4 baseColor = tex2D(TextureSampler, Input.Texcoord) * xDiffuseLightColor;

float4 color = (baseColor + LayerOneContrib*layerOneColor) + LayerTwoContrib*layerTwoColor;
color.a = 1.0;

return color;
}

//This is the ouline pixel shader. It just outputs unlit black.
float4 Black() : COLOR
{
   return float4(0.0f, 0.0f, 0.0f, 1.0f);
}

technique CelShading
{
//Render the Cel shader surface color
pass P0
{
VertexShader = compile vs_3_0 Transform();
PixelShader  = compile ps_3_0 Cel();
CullMode = CCW;
}

//Render the outline surface inverted to create fake edge detection
pass P1
{
VertexShader = compile vs_3_0 Outline();
PixelShader  = compile ps_3_0 Black();
CullMode = CW;
}

}


Gracias blau por el ejemplo.
#23
Programación en red / Re: programacion cross-platform
29 de Septiembre de 2009, 05:52:47 PM
No tengo mucho idea de redes ni de XNA, pero una posible solucion creo que seria crear un software que funcione como servidor en un PC y mediante algun tipo de Sockets poder conectarse desde cualquier dispositivo (Xbox, Zune, PC, movil, etc...) con conexion a internet a este servidor y que sea este el que gestione la interaccion entre maquinas, mandando a cada dispositivo los datos adecuados a la plataforma con la que se este jugando, vamos algo tipo Cliente-Servidor.

No se si te referias a algo asi.

#24
Programación gráfica / Re: Problemas outline en Cel Shading
29 de Septiembre de 2009, 12:45:37 PM
Ya me lo habian comentado, pero tengo el motor bastante avanzado y tener que migrarlo a XNA me da un poco de pereza, mas que nada porque ya lo pase de C++ con DirectX9 a C# con DirectX9 y ahora otra vez volver a migrarlo a XNA uuffff...
¿De verdad merece la pena?

Cierto es que me cuesta encontrar ejemplos para MDX y que de XNA hay bastante material.
#25
General / Glosario de Terminos sobre Videojuegos
29 de Septiembre de 2009, 11:56:50 AM
Hola a todos,

Hablando con unos compañeros del foro, se me ocurrio que estaria bien tener un glosario con terminos relacionados con los videojuegos para que todo aquel que lleva poco tiempo en este mundo pueda tener un lugar de referencia. Por lo que me han comentado hay una WIKI, pero por lo que he visto es un poco escasa.

La idea es entre todos vayamos agregando terminos, como que es y para que se utiliza un Shader, o que es el Clipping, o que es y como funciona el Shadow Mapping, etc... cosas obvias para muchos y totalmente desconocidas para otros que llevamos poco tiempo. Ademas cada uno puede aportar su experiencia y ejemplos si lo considera necesario.

¿Que os parece?
Saludos.
#26
General Programadores / Re: Utilidad del Scripting
29 de Septiembre de 2009, 11:37:37 AM
Oido cocina  :D
#27
General Programadores / Re: Utilidad del Scripting
29 de Septiembre de 2009, 10:45:19 AM
EX3 no se te ha ocurrido, tu que eres moderador, abrir una especie de hilo o lo que sea, en el cual se vayan explicando todo este tipo de cositas y para que se utilizan.
Seguro que para los que teneis el culo pelao en el tema os parece absurdo, pero para los que cada vez nos vamos metiendo mas nos viene muy bien saber lo que es un Shader y para que se utiliza, o lo que es el Clipping, o BackFaceCulling o cualquiera de estas palabrejas que podemos ver continuamente en cualquier manual y que a los que empezamos nos suenan a chino.
Ademas cada uno puede aportar su experiencia respecto a la tecnica que se explique en cada momento y seguro que descubrimos aplicaciones nuevas e interesantes.

Ahí dejo eso jejeje...
Saludos.
#28
Programación gráfica / Re: Problemas outline en Cel Shading
29 de Septiembre de 2009, 10:13:47 AM
Buenos dias Blau,

Anoche adapte lo que me pasaste de XNA a MDX que es lo que estoy usando en mi  motor, y me sigue pasando lo mismo que la ultima vez, me sale la maya sombreada en grises pero no me coge la textura.

Hoy acabare de instalarme el XNA para ver tu ejemplo en ejecución a ver si depurando paso a paso soy capaz de descubrir lo que estoy haciendo mal.

Saludos.

#29
General Programadores / Re: Utilidad del Scripting
28 de Septiembre de 2009, 05:24:35 PM
Creo que me voy haciendo una idea, joer y yo que no le daba mucho importancia al tema y permite una flexibilidad en el motor bestial jejeje...
Muchas gracias por iluminarme, pero creo que para mi proyecto, de momento, con unos ficheros de configuracion bien estructuraditos sera suficiente  :D

Saludos.
#30
General Programadores / Re: Utilidad del Scripting
28 de Septiembre de 2009, 04:21:55 PM
Pero eso tambien puedes conseguirlo con un fichero de configuracion de nivel por ejemplo, donde posiciones las entidades y le asignes algun tipo de funcionalida que hayas programado en el motor ¿no?.

Ademas supongo que tendras que integrar en tu motor un interprete de ese lenguaje de Script para que traduzca esas ordenes a las funciones creadas por ti en el motor. Quiza es esta parte la que no llego a entender del todo.

Hasta que no vea un ejemplo practico de su aplicacion, creo que no me voy a hacer a la idea  :P .
Gracias EX3.





Stratos es un servicio gratuito, cuyos costes se cubren en parte con la publicidad.
Por favor, desactiva el bloqueador de anuncios en esta web para ayudar a que siga adelante.
Muchísimas gracias.