Difference between revisions of "User:Blackjak"
From Bo3b's School for Shaderhackers
(→Lesson 1) |
(→Lesson 3) |
||
(3 intermediate revisions by one user not shown) | |||
Line 1: | Line 1: | ||
== Lesson 0 == | == Lesson 0 == | ||
+ | 3D Image Screenshot<br><br> | ||
[[file:TheBall01 50.jpg|700px]]<br /> | [[file:TheBall01 50.jpg|700px]]<br /> | ||
== Lesson 0.5== | == Lesson 0.5== | ||
+ | Quick Fix<br><br> | ||
[[file:TheBall02 50.jpg|700px]]<br /> | [[file:TheBall02 50.jpg|700px]]<br /> | ||
== Lesson 1 == | == Lesson 1 == | ||
+ | Edited Shader Code | ||
<nowiki>// Annoying ball light bloom effect | <nowiki>// Annoying ball light bloom effect | ||
// | // | ||
Line 67: | Line 70: | ||
// approximately 21 instruction slots used (1 texture, 20 arithmetic) | // approximately 21 instruction slots used (1 texture, 20 arithmetic) | ||
</nowiki> | </nowiki> | ||
+ | |||
+ | == Lesson 2 == | ||
+ | Disabling Bloom Effect<br><br> | ||
+ | Before:[[File:B Before TheBall03 50.jpg|700px]] | ||
+ | <br><br> | ||
+ | After:[[File:B After TheBall04 50.jpg|700px]] | ||
+ | |||
+ | == Lesson 3 == | ||
+ | Change Color of Bloom Effect<br> | ||
+ | <nowiki>//Bloom effect color change | ||
+ | mov oC0.x, c200.x | ||
+ | |||
+ | // Disable game-breaking bloom effect | ||
+ | // if Const1 = 0 disable effect, else leave it on | ||
+ | mov r30.x, c220.x | ||
+ | if_eq r30.x, c200.x | ||
+ | mov oC0.xyzw, c200.wwww | ||
+ | endif</nowiki> | ||
+ | [[File:B ColorChange TheBall06 50.jpg|700px]] |
Latest revision as of 02:35, 22 January 2017
Contents
Lesson 0
Lesson 0.5
Lesson 1
Edited Shader Code
// Annoying ball light bloom effect // // Generated by Microsoft (R) HLSL Shader Compiler 9.27.952.3022 // // Parameters: // // sampler2D Texture2D_0; // float UniformPixelScalar_7; // float4 UniformPixelVector_0; // float4 UniformPixelVector_3; // float4 UniformPixelVector_4; // float4 UniformPixelVector_5; // float4 UniformPixelVector_6; // // // Registers: // // Name Reg Size // -------------------- ----- ---- // UniformPixelVector_0 c0 1 // UniformPixelVector_3 c4 1 // UniformPixelVector_4 c5 1 // UniformPixelVector_5 c6 1 // UniformPixelVector_6 c7 1 // UniformPixelScalar_7 c8 1 // Texture2D_0 s0 1 // ps_3_0 def c1, 0.5, 1, -0.5, 0 def c2, 3, 0, 0, 0 dcl_texcoord v0.xy dcl_texcoord1 v1 dcl_texcoord2 v2.y dcl_texcoord4 v3.w dcl_2d s0 add r0.xy, c1.z, v0 mov r0.w, c1.w dp2add r1.x, c5, r0, r0.w dp2add r1.y, c6, r0, r0.w add r0.xy, r1, c1.x texld r0, r0, s0 mad_sat r0.y, v2.y, -c1.x, c1.y mul r0.yzw, r0.y, v1.xxyz mul r0.yzw, r0, v1.w mul_sat r0.xyz, r0.yzww, r0.x mul r1.xyz, r0, c4 mad r0.xyz, c4, -r0, r0 mad r0.xyz, c8.x, r0, r1 mul r0.xyz, r0, c4.w mul r0.xyz, r0, c7 mov r1.x, c2.x mad_pp r0.xyz, r0, r1.x, c0 mul_pp oC0.xyz, r0, v3.w mov oC0.w, c1.w // Disable game-breaking bloom effect mov oC0.xyzw, c1.wwww // approximately 21 instruction slots used (1 texture, 20 arithmetic)
Lesson 2
Disabling Bloom Effect
Before:
After:
Lesson 3
Change Color of Bloom Effect
//Bloom effect color change mov oC0.x, c200.x // Disable game-breaking bloom effect // if Const1 = 0 disable effect, else leave it on mov r30.x, c220.x if_eq r30.x, c200.x mov oC0.xyzw, c200.wwww endif