d3d_model_vertex_normal_colour

Defines a primitive vertex for a model in 3D along with its corresponding normal, colour blending and alpha.

Syntax:

d3d_model_vertex_normal_colour(x, y, z, nx, ny, nz, col, alpha)


Argument Description
ind The index of the model to add the primitive to.
x The x coordinate of the vertex.
y The y coordinate of the vertex.
z The z coordinate of the vertex.
xn The x component of the normal vector.
yn The y component of the normal vector.
zn The z component of the normal vector.
col The colour to blend with the vertex (c_white or -1 is no blend).
zn The alpha of the vertex (0 - 1).


Returns: N/A


Description

This function defines the position of a primitive vertex for a model, assigns a normal to that vertex for the purposes of lighting, and permits you to set a blend colour and an alpha value too. The final look of the model will depend on the primitive type chosen to draw, the order with which you add the vertexes to it, and the normal that you define for it as well as the lighting. See d3d_model_primitive_begin for more information on primitives. To end and draw the primitive you must call d3d_model_primitive_end.


Example:

m = d3d_model_create();
d3d_model_primitive_begin(m, pr_trianglelist);
d3d_model_vertex_normal_colour(m, -128, 0, -48, 0, 0.5, -0.5, c_red, 0.5);
d3d_model_vertex_normal_colour(m, -128, 96, 48, 0, 0.5, -0.5, c_red, 0.5);
d3d_model_vertex_normal_colour(m, 128, 0, -48, 0, 0.5, -0.5, c_red, 0.5);
d3d_model_vertex_normal_colour(m, 128, 0, -48, 0, 0.5, -0.5, c_red, 0.5);
d3d_model_vertex_normal_colour(m, -128, 96, 48, 0, 0.5, -0.5, c_red, 0.5);
d3d_model_vertex_normal_colour(m, 128, 96, 48, 0, 0.5, -0.5, c_red, 0.5);
d3d_model_primitive_end(m);

The above code will add a sloped rectangle with the correct normal vectors for lighting, blended with the colour red and made semi-transparent with an alpha value of 0.5 to the selected model.


Back: 3D Drawing
Next: d3d_model_vertex_normal_texture
© Copyright YoYo Games Ltd. 2018 All Rights Reserved