I posted a bunch of little tid-bits here and there as to how to do this, but I figured I might as well write it all in one place for peoples.
You will need:
- Render Style Editor
- RezInjector (or just the extracted RS folder)
==== Part 1: The 10sec Wallhack RS ====
- Click the "Configure Render Pass1" button
- Uncheck "Dynamic Lighting" - this allows for flat-ish shading.
- For "Blend Op" choose "No Blend" - this means the rendered pixel always gets displayed.
- For "Cull Mode" choose "No Culling" - this means it won't remove any polygons that aren't facing the camera.
- For "Z Buffer Test" choose " No Alpha Test" - this means it doesn't matter if there is something in front of the object or not.
- For "Z Buffer Op" choose "Read/Write" - this means that whenever it writes to the screen it also write to the buffer (this is useful later on).
Congrats, you now have a RS that will show people through wall!
=== Part 2: Adding Color ===
- Click the "Configure Render Pass1" button
- For "TFactor (ARGB)" choose "ff0000" - this is a color of our choice in XXYYZZ, where XX is red, YY is green, ZZ isblue.
- For "Color Op" choose "Select Arg2" - this will use the "Color Arg 2" option for the color to be rendered.
- For "Color Arg 2" choose "TFactor" - this uses TFactor as Arg2, and in combination with the last step, lets use choose the color to render without using texture chams.
Congrats, you can now see through walls, and everyone is a bright red.
(Note: Shown is a green version)
=== Part 3: Visible Char Color ===
- Click "Configure Render Pass 1"
- Change "Z Buffer Test" to "Less or Equal" - this means it will only write to the buffer when something is in front
- Change "TFactor" to 000000 - this will render eveyone black (for now).
- Click "Configure Render Pass 2"
- Copy everything you did in Parts1 and Part2 but now in Render Pass 2
- For "Z Buffer Test" choose "Greater" - this means it will only write when it is behind something
- For "Z Buffer Op" choose "Read Only" - this means it wont screw up the what is in front of what.
- Click "Configure Render Pass 3"
- Copy everything you did in Parts1 and Part2 again but now in Render Pass 3
- For "Z Buffer Test" choose "Less or Equal" - this means it will only write when it is the one in front.
- For "Z Buffer Op" choose "Read Only" - this means it wont screw up the what is in front of what.
- Change "TFactor" to "00ff00" - this will render in green
Congrats, you now have a 2 color cham, that can tell between people in the open (green) and people who are hidden (red).
(Note: Screenshot is taken from yodaliketaco's version.)
=== Part 4: Adding in the Sat Colors ===
- Click "Configure Render Pass 2"
- Change "Blend Op" to "Cs + Cd" - this changes the rendering from just writing the color, to combining two colors together. Color Source + Color Destination means we are taking the new (source) color and adding its value to the (destination) color that was already there.
- Change "TFactor" to "002020" - this is a dark teal-ish color
- Click "Configure Render Pass 2"
- Change "Color Op" to "Add" - this will add the Color Arg 1 and Color Arg 2
- Change "Color Arg 2" to "Texture" - this means that you have a brighter textured characters.
Congrats, you now should have something that looks like the Sat-chams !
(Note: This version has an added green-tint instead of the 2x Texture)
=== Part 5: Compile and Injecting ===
- After you are done with your renderStyle you click "File"->"Compile for Platform"->Direct3D
- Click "Start"
- Find your compiled RenderStyle[dot]LTB, rename it to DEFAULT[dot]LTB and inject into RS.rez (or optionally rename and place into the RS folder if you are using that method of modding).
Now you are done!
Enjoy.
Notes:
[Feel free to move this if you don't want "noob's" see it]
[I wrote it all at once without much proof reading, so let me know of any mistakes before I can't edit the post anymore.]