miercuri, 25 septembrie 2013

The new Cintiq 13 HD tablet.

The new Cintiq 13 HD tablet from wacom it's a great tablet.

The price it's €899.90 and come with some features and technology like : a-Si Active Matrix TFT LCD (IPS), displayable Colors (maximum 16.7 million), contrast ratio 700:1, and more...

See the next video about this tablet.

Also you can see this great speedpainting by Daniel Lieske - a digital artist with over 10 years of experience in computer game graphics.

FurryBall 4

Regular version of FurryBall contains Standalone renderer, Network renderer and BOTH FREE Maya and Max plugin (still in Beta version). Regular licence is PERMANENT and NODE locked. At the moment FurryBall is Windows ONLY.

You can use with a free or can buy it from here.

luni, 16 septembrie 2013

Synfig need some help ...

Will you remember about the synfig software ?
 Seam the team need some help ...
We have enough money to fund Ivan's work until November 1st 2013, but our goal is to continue intensive development of Synfig as long as possible. That's why we have decided to start a fundraising campaign.
Read more about the-synfig-fundraising-campaign

duminică, 8 septembrie 2013

Programming with shaders - part 001 .

If you want to working with shaders then you must know something about GLSL data types.
The GLSL data types it's like variables or any types of data from programming language.
Uniform variables
Let's show you this types versus C data types:

bool -- int conditional get true -- or false. 
int -- int signed integer. 
float -- float single floating-point scalar. 
vec2 -- float[2] Two component floating-point vector. 
vect3 -- float[3] Three component floating-point vector. 
vec4 -- float[4] Four component floating-point vector. 
bvec2 -- int[2] Two component Boolean vector. 
bvec3 -- int[3] Three component Boolean vector. 
bvec4 -- int[4] Four component Boolean vector. 
ivec2 -- int[2] Two component signed integer vector. 
ivec3 -- int[3] Three component signed integer vector. 
ivec4 -- int[4] Four component signed integer vector. 
mat2 -- float[4] 2x2 floating-point matrix. 
mat3 float[9] 3x3 floating-point matrix. 
mat4 -- float[16] 4x4 floating-point matrix. 
sampler1D int for accessing a 1D texture. 
sampler2D -- int for accessing a 2D texture. 
sampler3D -- int for accessing a 3D texture. 
samplerCube -- int for accessing a cubemap texture. 
sampler1DShadow -- int for accessing a 1D depth texture. 
sampler2DShadow -- int for accessing a 2D depth texture..
This are the uniform variables and can be treated as constants... so cannot be changed.
The uniform variables are used when is passed from OpenGL app to the shader.
Vertex Attributes
This can only be used with vertex shaders.
The atributes are position, normals, texture coordinates all you can use with GL_ARB-vertex_program.
The GL_ARB-vertex_program holds slots and after overwritten the attribute is lost.
The attributes can be:

arrays, structures,
Let's see one simple example
In OpenGL you used something like this:
The link between shader and opengl source code using slot is:
int any_slot= 7;
glBindAttribLocationARB(my_program, any_slot, "my_attribute");
this will pass the my_attribute to shader program (my_program) using a slot (any_slot).
To working ( access ) with the attribute in shader source code , just use this:
attribute vec3 my_attribute;
Can you see I sent with vec3 type because the glVertex3f has 3 float so is need to be three component floating-point vector.
Varying variables.
This are used most to send data from vertex shader to fragment shader.
The most common example is texture coordinates from vertex shader to fragment shader.
But about how it's vertex and fragment shader in the next tutorial.