gta5 death screen

  • Konuyu açan Konuyu açan hasanmacit
  • Açılış Tarihi Açılış Tarihi
  • Yanıt Yanıt 27
  • Gösterim Gösterim 950
Keşke benim de böyle bir death screenim olsa
 
Kod:
Genişlet Daralt Kopyala
float transitionValue : register(c21);
sampler texLastPass : register(s0);

float4 DeathCam(in float2 t : TEXCOORD0) : COLOR
{
    // Calculate zoom factor for a longer zoom effect
    float zoomFactor = lerp(1.0, 1.0, saturate(transitionValue / 5.0) * 0.01);

    // Adjust texture coordinates for zoom
    float2 center = float2(0.5, 0.5);
    float2 texCoord = (t - center) / zoomFactor + center;

    float4 color = tex2D(texLastPass, texCoord);

    // Calculate grayscale value
    float gray = dot(color.rgb, float3(0.299, 0.587, 0.114));

    // Interpolate between color and grayscale based on transitionValue
    float factor = saturate(transitionValue / 5.0);
    float3 finalColor = lerp(color.rgb, float3(gray, gray, gray), factor);

    // Vignette effect with increased strength
    float2 vignetteCoord = t - center;
    float len = length(vignetteCoord);

    float vignette = smoothstep(0.3, 0.85, len) * factor * 1.5; // Increased strength

    finalColor *= (1.0 - vignette);

    return float4(finalColor, color.a);
}

bumu? :rolleyes:
 
Kod:
Genişlet Daralt Kopyala
float transitionValue : register(c21);
sampler texLastPass : register(s0);

float4 DeathCam(in float2 t : TEXCOORD0) : COLOR
{
    // Calculate zoom factor for a longer zoom effect
    float zoomFactor = lerp(1.0, 1.0, saturate(transitionValue / 5.0) * 0.01);

    // Adjust texture coordinates for zoom
    float2 center = float2(0.5, 0.5);
    float2 texCoord = (t - center) / zoomFactor + center;

    float4 color = tex2D(texLastPass, texCoord);

    // Calculate grayscale value
    float gray = dot(color.rgb, float3(0.299, 0.587, 0.114));

    // Interpolate between color and grayscale based on transitionValue
    float factor = saturate(transitionValue / 5.0);
    float3 finalColor = lerp(color.rgb, float3(gray, gray, gray), factor);

    // Vignette effect with increased strength
    float2 vignetteCoord = t - center;
    float len = length(vignetteCoord);

    float vignette = smoothstep(0.3, 0.85, len) * factor * 1.5; // Increased strength

    finalColor *= (1.0 - vignette);

    return float4(finalColor, color.a);
}

bumu? :rolleyes:
dene bakim o mu
 
Kod:
Genişlet Daralt Kopyala
float transitionValue : register(c21);
sampler texLastPass : register(s0);

float4 DeathCam(in float2 t : TEXCOORD0) : COLOR
{
    // Calculate zoom factor for a longer zoom effect
    float zoomFactor = lerp(1.0, 1.0, saturate(transitionValue / 5.0) * 0.01);

    // Adjust texture coordinates for zoom
    float2 center = float2(0.5, 0.5);
    float2 texCoord = (t - center) / zoomFactor + center;

    float4 color = tex2D(texLastPass, texCoord);

    // Calculate grayscale value
    float gray = dot(color.rgb, float3(0.299, 0.587, 0.114));

    // Interpolate between color and grayscale based on transitionValue
    float factor = saturate(transitionValue / 5.0);
    float3 finalColor = lerp(color.rgb, float3(gray, gray, gray), factor);

    // Vignette effect with increased strength
    float2 vignetteCoord = t - center;
    float len = length(vignetteCoord);

    float vignette = smoothstep(0.3, 0.85, len) * factor * 1.5; // Increased strength

    finalColor *= (1.0 - vignette);

    return float4(finalColor, color.a);
}

bumu? :rolleyes:
shader kullanıyor musun karşim sen
 
Sanırım kodlama dilinden dolayı sordu. Çünkü kodlama dili C++ değil. Metin2 yapısı C, C++, Lua ve Python tabanlı çalışıyor biliyosunki. Ama bu kodlar High-Level Shader Language dilini kullanıyo yani kısaca HLSL, dolayısıyla kullanmak için .hlsl dosyalarına ihtiyaç var. Yani bu şekilde metin2 de kullanılamaz.
Açıkcası grafiklerle vs hiç uğraşmadım, shader vs @Denizeri24 daha detaylı açıklayacaktır ama merak ettim doğrusu hiç görmedim hlsl dosyası metin2 srclerinde vs.
 
Uyarı: Bu konu açıldığından bu yana baya zaman geçmiş.
Muhtemelen daha fazla tartışma gerekli değildir ki bu durumda yeni bir konu başlatmayı öneririz. Eğer yine de cevabınızın gerekli olduğunu düşünüyorsanız buna rağmen cevap verebilirsiniz.
Geri
Üst