Steve,

in OpenGL I use GL_EMISSION = (0,0,0,1). That works in
in DirectX maybe too.

But John approach sound reasonable to me. Note that in
lib3ds 2.0 variable names changed:
   int   self_illum_flag; // self illumination on/off
   float self_illum;      // self illumination strength (0.0-1.0)

If power is the Phong exponent you may want to try
power = 2 ^ (10 * shininess + 1)

--Jan Eric


Steve Hackett wrote:
> Sorry.
> 
> I've to explain better:
> 
> I'm making a program with DirectX 8.1 and 3DS files.
> In DirectX 8.1 a material is defined as:
> 
> typedef struct _D3DMATERIAL8 { 
>    D3DCOLORVALUE Diffuse; 
>    D3DCOLORVALUE Ambient; 
>       D3DCOLORVALUE Specular; 
>       D3DCOLORVALUE Emissive; 
>       float Power; 
> } D3DMATERIAL8; 
> 
> Diffuse, Ambient, Specular, and Emissive 
> Values specifying the diffuse color, ambient color, specular color, and 
> emissive color of the material, respectively. These values are D3DCOLORVALUE 
> structures. 
> Power 
> Floating-point value specifying the sharpness of specular highlights. To 
> turn off specular highlights for a material, set this member to 0.0; setting 
> the 
> specular color components to 0 is not enough. 
> 
> 
> Diffuse, Ambient and Specular can be obtained from Lib3dsMaterial, but 
> Emissive and Power... where are?
> 
> Thx!


-------------------------------------------------------------------------
This SF.Net email is sponsored by the Moblin Your Move Developer's challenge
Build the coolest Linux based applications with Moblin SDK & win great prizes
Grand prize is a trip for two to an Open Source event anywhere in the world
http://moblin-contest.org/redirect.php?banner_id=100&url=/
_______________________________________________
lib3ds-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/lib3ds-devel

Reply via email to