2009-06-03 22 views
8

चमक और विपरीतता लागू करने के लिए एक साधारण पिक्सेल शेडर स्क्रिप्ट प्रभाव क्या है?चमक और कंट्रास्ट के लिए पिक्सेल शेडर प्रभाव के साथ सहायता

मैं इस एक मिला, लेकिन यह सही होने के लिए प्रतीत नहीं होता:

sampler2D input : register(s0); 
float brightness : register(c0); 
float contrast : register(c1); 

float4 main(float2 uv : TEXCOORD) : COLOR 
{ 
    float4 color = tex2D(input, uv); 
    float4 result = color; 
    result = color + brightness; 
    result = result * (1.0+contrast)/1.0; 

    return result; 
} 

धन्यवाद!

+1

निश्चित रूप से अपने उदाहरण की अंतिम पंक्ति के बाद दूसरे स्थान में '1.0' से विभाजित के साथ परीक्षण किया गया कोई प्रभाव नहीं है ... –

उत्तर

22

क्या आप यह देख रहे हैं?

float Brightness : register(C0); 
float Contrast : register(C1); 

sampler2D Texture1Sampler : register(S0); 

float4 main(float2 uv : TEXCOORD) : COLOR 
{ 

    float4 pixelColor = tex2D(Texture1Sampler, uv); 
    pixelColor.rgb /= pixelColor.a; 

    // Apply contrast. 
    pixelColor.rgb = ((pixelColor.rgb - 0.5f) * max(Contrast, 0)) + 0.5f; 

    // Apply brightness. 
    pixelColor.rgb += Brightness; 

    // Return final pixel color. 
    pixelColor.rgb *= pixelColor.a; 


return pixelColor; 
} 

--- Shazzam छायांकर्ता संपादक http://shazzam-tool.com

+0

हममम। मैंने सोचा कि यह सवाल इस हफ्ते से था, अब मैं देखता हूं कि इसे एक साल पहले पूछा गया था। –

+0

... और 2013 में अभी भी एक मूल्यवान उत्तर है। मैं घूम रहा हूं कि संतृप्ति भी जोड़ना कितना मुश्किल है ... :) – Cesar

+2

@ सीज़र डॉन, मैं भी! (अगर आप smth अगर आप लोगों को पोस्ट करेंगे) – mlvljr

संबंधित मुद्दे