Jump to content

object color


ALw7sH

Recommended Posts

Posted

Hello,

i made new object with black color

how i can change the object color

iknow i can change it with change texture color

but i dont want to change it like that

i want the object color be automatic like my car color

Posted

You have to apply a certain texture in 3ds max (if you're using that software) which makes the color "original", other wise if its not cars or any vehicle, use shaders.

Posted
You have to apply a certain texture in 3ds max (if you're using that software) which makes the color "original", other wise if its not cars or any vehicle, use shaders.

but how to use the shaders ?

  • MTA Team
Posted

Clientside script:

myShader = dxCreateShader('shader.fx', 0, 0, false, 'vehicle') 
dxSetShaderValue(myShader, 'red', 1.0) 
dxSetShaderValue(myShader, 'green', 0.0) 
dxSetShaderValue(myShader, 'blue', 0.0) 
dxSetShaderValue(myShader, 'alpha', 1.0) 
  
vehicles = getElementsByType('vehicle') 
for _, vehicle in ipairs(vehicles) do 
    if (getElementModel(vehicle) == 411) then 
        engineApplyShaderToWorldTexture(myShader, '*', vehicle) 
    end 
end 
  

File shader.fx

float red; 
float green; 
float blue; 
float alpha; 
  
technique simple 
{ 
    pass P0 
    { 
        MaterialAmbient = float4(red, green, blue, alpha); 
    } 
} 

Posted
Clientside script:
myShader = dxCreateShader('shader.fx', 0, 0, false, 'vehicle') 
dxSetShaderValue(myShader, 'red', 1.0) 
dxSetShaderValue(myShader, 'green', 0.0) 
dxSetShaderValue(myShader, 'blue', 0.0) 
dxSetShaderValue(myShader, 'alpha', 1.0) 
  
vehicles = getElementsByType('vehicle') 
for _, vehicle in ipairs(vehicles) do 
    if (getElementModel(vehicle) == 411) then 
        engineApplyShaderToWorldTexture(myShader, '*', vehicle) 
    end 
end 
  

File shader.fx

float red; 
float green; 
float blue; 
float alpha; 
  
technique simple 
{ 
    pass P0 
    { 
        MaterialAmbient = float4(red, green, blue, alpha); 
    } 
} 

thanks but i edit it to be for objects but now doesnt work

myShader = dxCreateShader('color.fx', 0, 0, false, 'object') 
dxSetShaderValue(myShader, 'red', 1.0) 
dxSetShaderValue(myShader, 'green', 0.0) 
dxSetShaderValue(myShader, 'blue', 0.0) 
dxSetShaderValue(myShader, 'alpha', 1.0) 
  
objects = getElementsByType('object') 
for _, object in ipairs(objects) do 
        if (getElementModel(object) == (1854 or 4550 or 1853 or 1855 or 1856)) then 
        engineApplyShaderToWorldTexture(myShader, '*', object) 
        end 
end 

  • MTA Team
Posted
myShader = dxCreateShader('color.fx', 0, 0, false, 'object') 
dxSetShaderValue(myShader, 'red', 1.0) 
dxSetShaderValue(myShader, 'green', 0.0) 
dxSetShaderValue(myShader, 'blue', 0.0) 
dxSetShaderValue(myShader, 'alpha', 1.0) 
  
objects = getElementsByType('object') 
for _, object in ipairs(objects) do 
        local model = getElementModel(object) 
        if (model == 1854 or model == 4550 or model == 1853 or model == 1855 or model == 1856) then 
                engineApplyShaderToWorldTexture(myShader, '*', object) 
        end 
end 

Hint: put that code into onClientResourceStart because the shader file "color.fx" might not be ready when the script starts (not downloaded yet)

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...