Bo3b's School For Shaderhackers
  1 / 68    
Edit: Lessons posted at [url]http://wiki.bo3b.net/[/url] with video links in each Lesson. Let's try an experiment, and see how we might all collectively benefit from more Shaderhackers. As long as we have some Shaderhackers, we'll have more games to play, and I want to encourage [i]anyone[/i] who is interested. If you have the motivation, I want to help as much as I can. This is an experiment, because I'm really not sure I'm the right person to teach shader hacking, but I'm probably the only person available to do it right now, so let's give it a try! That also means that I have absolutely no idea how to go about teaching this, so please bear with me as we stumble along. I never let not knowing how to do something stop me before, and I hope you won't either. As part of this, I expect to write up, um, course material, and probably make some videos of how to make fixes. That will also give us something we can use longer term. I'm going to start by suggesting that probably weekends are best for most people, and that in general you can't spend more than 3 hours a week or so on this. I think we can still make pretty good headway at that level, but please let me know if those assumptions are off for you. The key point here is that this will be spread out over many weeks, and not trying to do a big bang on a single weekend approach. Please let me know if you think a shorter, more intense strategy is better. Suggestions and comments are welcome. Let me know what works for you. I want to tailor it as much as possible to the people who are interested. As I noted earlier, the main pre-requisite for this course is an interest in puzzles. I really do not think any coding skills are necessary, because even as a professional software developer I found this to be particularly arcane, and very little of my prior knowledge helped. If you like puzzles, it is almost impossibly rewarding to make some crazy change to shader code, reload, and have it magically fix the image. The only thing more rewarding than that is sharing your fix with your friends here. :-> Let's start by getting a roll call of people who are interested. And, please start by letting me/us know what games you are personally interested in.
Edit: Lessons posted at http://wiki.bo3b.net/ with video links in each Lesson.


Let's try an experiment, and see how we might all collectively benefit from more Shaderhackers.

As long as we have some Shaderhackers, we'll have more games to play, and I want to encourage anyone
who is interested. If you have the motivation, I want to help as much as I can.

This is an experiment, because I'm really not sure I'm the right person to teach shader hacking, but I'm probably the only person available to do it right now, so let's give it a try! That also means that I have absolutely no idea how to go about teaching this, so please bear with me as we stumble along. I never let not knowing how to do something stop me before, and I hope you won't either.

As part of this, I expect to write up, um, course material, and probably make some videos of how to make fixes. That will also give us something we can use longer term.


I'm going to start by suggesting that probably weekends are best for most people, and that in general you can't spend more than 3 hours a week or so on this. I think we can still make pretty good headway at that level, but please let me know if those assumptions are off for you.

The key point here is that this will be spread out over many weeks, and not trying to do a big bang on a single weekend approach. Please let me know if you think a shorter, more intense strategy is better.

Suggestions and comments are welcome. Let me know what works for you. I want to tailor it as much as possible to the people who are interested.


As I noted earlier, the main pre-requisite for this course is an interest in puzzles. I really do not think any coding skills are necessary, because even as a professional software developer I found this to be particularly arcane, and very little of my prior knowledge helped.

If you like puzzles, it is almost impossibly rewarding to make some crazy change to shader code, reload, and have it magically fix the image.

The only thing more rewarding than that is sharing your fix with your friends here. :->


Let's start by getting a roll call of people who are interested.

And, please start by letting me/us know what games you are personally interested in.

Acer H5360 (1280x720@120Hz) - ASUS VG248QE with GSync mod - 3D Vision 1&2 - Driver 372.54
GTX 970 - GTX 760 Dedicated PhysX - i5-4670K@4.2GHz - 12GB RAM - Win7x64+evilKB2670838 - 4 Disk X25 RAID
Latest 3Dmigoto Release
Bo3b's School for ShaderHackers

#1
Posted 08/09/2014 11:56 PM   
Grabs a seat and a notebook! [quote="bo3b"]And, please start by letting me/us know what games you are personally interested in.[/quote]... so excited I kind of missed that point, glad I wasn't the only one. :) I guess if I had to whittle the games I'm interested in down to something, you've seen my Steam library, I'd have to go with Bionic Commando, Bionic Commando Rearmed and Rochard ... those were the first ones I was messing with BSE in, well after Mini Ninjas. It would have been Silent Hill: Homecoming ... who knows still might be, but it was extremely unstable, crashing all the time on me.
Grabs a seat and a notebook!

bo3b said:And, please start by letting me/us know what games you are personally interested in.
... so excited I kind of missed that point, glad I wasn't the only one. :)

I guess if I had to whittle the games I'm interested in down to something, you've seen my Steam library, I'd have to go with Bionic Commando, Bionic Commando Rearmed and Rochard ... those were the first ones I was messing with BSE in, well after Mini Ninjas. It would have been Silent Hill: Homecoming ... who knows still might be, but it was extremely unstable, crashing all the time on me.
#2
Posted 08/10/2014 12:14 AM   
Very interested
Very interested

#3
Posted 08/10/2014 12:32 AM   
Sign me up I'm interested
Sign me up I'm interested

Gigabyte Z270 Gaming 7 32GB Ram i7-7700K BPX MDNMVME80 240 GB M.2 NGFF NVME Solid state drive SSD 240GB (OS) GigaByte Extreme Gaming 1080 (single) Game Blaster Recon 3D Windows 8.1 X64 Pro with UPDATE 3 and Windows 10 X64 (separate SSD's)Cooler Master Cosmos 2 Case Corsair H100i GTX 1 Toshiba 5TB (Steam), 2 Seagate 4TB SSHD Drives 2 SanDisk 480 Ultra 2 SSD (games) Samsung UN46c7000 HD TV Samsung UN55HU9000 UHD TVCurrently using ACER PASSIVE EDID override on 3D TVs LG 55HU8500 backup

#4
Posted 08/10/2014 12:47 AM   
:: BELL RINGGGGG :: Ah, 'The School of Bo3b' - Shader Fixing 101 :: Puts Apple on Teachers .. err .. Desk? :: - Wait, that won't work, we need Windows for this right? Ok. - Will we require the use of TI-8x Series Graphing Calc's? (I'm Dating Myself Here) In all seriousness, yes, count me in I would love to learn, Thanks Bo3b, It's really quite valiant of you to step up to the plate like this and really help people to learn. The way I see it, My son and I have logged MANY hours of priceless fun enjoying the visual art that you, mike, helix etc and so on, have created.. It's only proper and fitting to try to give back, as I, 'we' all (hope you guys don't mind me lumping you all in there) are in your collective debt. I think maybe, you could 'prepare a lesson' to be worked on prior to a 'lesson' at a specific time. The key would be to gather as many of us as possible at the same time to work out a very specific task to which you have already worked out. At that point, a certain amount of time is given to come up with the solution, or we just do it step by minute step together by way of PM, IM or something.. I'm sure between us all that we can fine tune a course strategy an apply it, adjust it, and tweak it as we go. The more the ball starts rolling, the more we will be able to understand and actually do, on our own. It may become apparent that some of us are better/faster at various parts of the process and as time goes on there will be more people that can help to share their specialty with others that are a bit weaker in regards to said specialty. At this point i'm just rambling, but you get the idea. So, we wait a couple days to see who is interested and then set something up. Looking forward to this, ~Nutz
:: BELL RINGGGGG ::

Ah, 'The School of Bo3b' - Shader Fixing 101

:: Puts Apple on Teachers .. err .. Desk? ::

- Wait, that won't work, we need Windows for this right? Ok.

- Will we require the use of TI-8x Series Graphing Calc's? (I'm Dating Myself Here)


In all seriousness, yes, count me in I would love to learn,

Thanks Bo3b, It's really quite valiant of you to step up to the plate like this and really help people to learn.

The way I see it, My son and I have logged MANY hours of priceless fun enjoying the visual art that you, mike, helix etc and so on, have created.. It's only proper and fitting to try to give back, as I, 'we' all (hope you guys don't mind me lumping you all in there) are in your collective debt.

I think maybe, you could 'prepare a lesson' to be worked on prior to a 'lesson' at a specific time.

The key would be to gather as many of us as possible at the same time to work out a very specific task to which you have already worked out. At that point, a certain amount of time is given to come up with the solution, or we just do it step by minute step together by way of PM, IM or something..

I'm sure between us all that we can fine tune a course strategy an apply it, adjust it, and tweak it as we go. The more the ball starts rolling, the more we will be able to understand and actually do, on our own.

It may become apparent that some of us are better/faster at various parts of the process and as time goes on there will be more people that can help to share their specialty with others that are a bit weaker in regards to said specialty.

At this point i'm just rambling, but you get the idea.

So, we wait a couple days to see who is interested and then set something up.

Looking forward to this,

~Nutz

---- Core System Components ----

(MBD) EVGA® Classified™ (x58) E760
(CPU) Intel® i7™ '980x' (OC'd) @ 4.8Ghz
(CPU) Corsair® (CPU) Cooling™ (H50)
(MEM) Corsair® (MEM) Dominator(GT)™ 12GB @ 2000Mhz
(PSU) PC)P&C™ (PSU)'T12W' @ 1200w
(CSE) Cooler Master® Stacker™ (830)

---- (3D) Graphics Sub'Sys ----

(2x) EVGA® GTX'970 (SC) - Nvidia® SLi™
(1x) EVGA® GTX'660 (Ti) - Nvidia® PhysX™

(1x) ACER® (GN) 246(HL) - Nvidia® 3DVision™
(1x) ASUS® (VG) 248(QE) - Nvidia® 3DVision™
(1x) ACER® (GN) 246(HL) - Nvidia® 3DVision™

---- Audio & System Control ----

(1x) ASUS® - Xonar™ (HDAV1.3)
(1x) VL'Sys® - MPlay202+ 'GUI' & (RF) Remote

---- Storage (HDD's) & Media (ODD's) PB & REC ----

(1x) (SSD) Samsung® - 850(PRO) '3D'Vertical™
(1x) (2TB) Seagate® - Hybrid Series™
(4x) (2TB) W.Digital® - 'Blacks'™
(2x) (ODD) LG® BluRay™ - 'Play'n'Burn'

---- Nvidia® (WHQL) Drivers (x64) In Use ----

(NV®)DR - v347.88 (WHQL) - Primary (GTA V)
(NV®)DR - v350.12 (WHQL) - Testing (Stable)
(NV®)DR - v353.06 (WHQL) - All Other Titles

#5
Posted 08/10/2014 01:21 AM   
[quote="ImNutz4NvSLI"]the ball[/quote]Heh. Heh. He said ... The Ball. Heh. :) [img]http://www.moviepilot.de/files/images/0728/9742/Beavis-Butt-Head-header2_article.jpg[/img]
ImNutz4NvSLI said:the ball
Heh. Heh. He said ... The Ball. Heh. :)

Image
#6
Posted 08/10/2014 01:40 AM   
I'm really interested. But.. I have absolutely zero knowledge in any kind of coding.. or anything of that nature. I just play video games. If I can be taught basic concepts, to understand enough to improvise, then yes, (maybe) I could be of help. But really, I'd need a serious step by step learning course or process. However, even if I'm a complete simpleton to these matters, I'd read everything, and watch every video. I would, just to have the faintest grasp of what kind of work you geniuses put into all this. I've enjoyed the fixes, but have not been able to contribute one iota of help. A chance for a moron like me to comprehend sounds good.
I'm really interested. But.. I have absolutely zero knowledge in any kind of coding.. or anything of that nature. I just play video games. If I can be taught basic concepts, to understand enough to improvise, then yes, (maybe) I could be of help. But really, I'd need a serious step by step learning course or process. However, even if I'm a complete simpleton to these matters, I'd read everything, and watch every video. I would, just to have the faintest grasp of what kind of work you geniuses put into all this. I've enjoyed the fixes, but have not been able to contribute one iota of help. A chance for a moron like me to comprehend sounds good.

AsRock X58 Extreme6 mobo
Intel Core-i7 950 @ 4ghz
12gb Corsair Dominator DDR3 1600
ASUS DirectCU II GTX 780 3gb
Corsair TX 950w PSU
NZXT Phantom Red/Black Case
3d Vision 1 w/ Samsung 2233rz Monitor
3d Vision 2 w/ ASUS VG278HE Monitor

#7
Posted 08/10/2014 01:54 AM   
I'm Very interested too.
I'm Very interested too.

#8
Posted 08/10/2014 03:06 AM   
Count me in.
Count me in.

BenQ XL2420TX Monitor + GTX 1070 + i5-6600k + 16 GB RAM
Avegant Glyph
Acer H5360 Projector

Using driver 378.49 on Win7 x64

#9
Posted 08/10/2014 03:23 AM   
I'm totally interested. As far as recent games, I'm trying to get "The Fall" working well, and as a general - there are a ton of Dolphin games I would try to fix up (I know this is sort of a crazy outlier case.) Luigi's Mansion in particular I think would be cool, because I know the developers actually stated they originally designed the game to be in 3D to appear as if looking into a diorama house, but 3D was cut from the Gamecube and as such they couldn't do that. ALSO Shovel Knight, so I guess the list would be Shovel Knight (most reasonable) The Fall (probably possible, barely broken anyway) Dolphin general, Luigi's Mansion specifically to start.
I'm totally interested.

As far as recent games, I'm trying to get "The Fall" working well, and as a general - there are a ton of Dolphin games I would try to fix up (I know this is sort of a crazy outlier case.)

Luigi's Mansion in particular I think would be cool, because I know the developers actually stated they originally designed the game to be in 3D to appear as if looking into a diorama house, but 3D was cut from the Gamecube and as such they couldn't do that.

ALSO Shovel Knight, so I guess the list would be

Shovel Knight (most reasonable)
The Fall (probably possible, barely broken anyway)
Dolphin general, Luigi's Mansion specifically to start.

#10
Posted 08/10/2014 05:51 AM   
I think making video tutorials is a great way to show people, like myself, how to fix shaders. I would like to learn as well. Btw Bo3b , this really is a wonderful thing that you are doing here. Thank you for your willingness to teach others how to fix games.
I think making video tutorials is a great way to show people, like myself, how to fix shaders.
I would like to learn as well.

Btw Bo3b , this really is a wonderful thing that you are doing here. Thank you for your willingness to teach others how to fix games.

#11
Posted 08/10/2014 06:31 AM   
I'll give it a shot.
I'll give it a shot.

#12
Posted 08/10/2014 06:49 AM   
I'm interested, would be nice to have a steam group with chat. When it comes to games Redlynx various Trials games comes to mind.
I'm interested, would be nice to have a steam group with chat.

When it comes to games Redlynx various Trials games comes to mind.

Core i7 4790K, Corsair H80, Geforce GTX 980, 16GB Ram, 11TB HD + SSD
Creator of D3D hook dlls and GPU assembler for shaders.
Proud contributor to 3DMigoto it's complex but beautiful.

Steam: www.steamcommunity.com/id/Flugan
Happy to meet new people from the community.

#13
Posted 08/10/2014 06:59 AM   
OK, great! Glad to see so many people interested. Of the people who expressed interest in specific games, they all lean toward DX9 games, so let's take that as the initial goal and we'll use HelixMod instead of 3Dmigoto. That's completely OK, because HelixMod is much more stable and fully featured. All the principles that we learn with HelixMod applies to 3Dmigoto, the sequences of magic incantations just uses different words. Since DX9 seems to be the right choice for now, I'll also suggest that we all start with the game The Ball, to get it rolling. Not least because we get to say The Ball. :-> Actually, I thought of this one before because I already know how to fix a couple of things (always good for the teacher to know at least one thing), and there is a free demo, which means we can all get a copy. And, it's busted in 3D in that annoying way with a small number of effects that ruin it. There's no real value for fixing The Ball itself, but I think there is value to have us all look at the same thing to start. For anybody concerned whether they can do this or not, a good metric is whether you've done anything moderately complicated like an EDID override, or finding and setting bizarre settings in .ini files for FOV changes, or adding a Mod like the ENB mod to GTA. This is the same sort of thing, where you'll need to recognize patterns, and need to be accurate on the stuff you type to make it work. Like most all of these modder tools, if you do something wrong you get very little feedback, it just doesn't work or crashes instantly. We'll have each other to bounce ideas off of, so if something is not working, we'll be able to find typos and things easier than usual. The first two classes are clear, and after that I'll think of something. 1) Installing the debug version of HelixMod, making sure it works, and hunting shaders. 2) Finding a specific broken shader, and disabling it. As far as the structure goes, please let me know if you have any preferences? For example, we could use eqzitara's walkthrough, as a sequence of steps to follow to the end. Or I could make a video of the basic steps as a sort of lecture style sequence. Or I could try to make it more quiz like where I give most of the steps but require something unknown as an answer. Chat is OK too, but also too informal I think. But maybe we all agree upon a time, and join a chat to talk through things like being in a room. If we decide to do a chat, I'd recommend we just use the NVidia 3D Vision Gamers Steam group, since it's already setup and has chat. Whatever we decide, we'll try to keep it fun. It's not going to be 'read these 500 pages before class.' I feel like I'll need some sort of structured tool where people can check in to say they've finished X, with their results. I don't think the forum software is well suited for keeping track. I lean slightly toward a Wiki of some form, because everyone can edit to suit. I'll be honest here that I have no idea what I'm doing, but I'm always willing to wing it and see what we can do. As you can probably tell already, I'm much more interested in doing something, anything, than trying get it perfect. I'm open to suggestions, but if there is no real consensus, concern, or preference, I'll just decide based on past classes that I've taught and my best judgment.
OK, great! Glad to see so many people interested.

Of the people who expressed interest in specific games, they all lean toward DX9 games, so let's take that as the initial goal and we'll use HelixMod instead of 3Dmigoto. That's completely OK, because HelixMod is much more stable and fully featured. All the principles that we learn with HelixMod applies to 3Dmigoto, the sequences of magic incantations just uses different words.

Since DX9 seems to be the right choice for now, I'll also suggest that we all start with the game The Ball, to get it rolling. Not least because we get to say The Ball. :->

Actually, I thought of this one before because I already know how to fix a couple of things (always good for the teacher to know at least one thing), and there is a free demo, which means we can all get a copy. And, it's busted in 3D in that annoying way with a small number of effects that ruin it. There's no real value for fixing The Ball itself, but I think there is value to have us all look at the same thing to start.


For anybody concerned whether they can do this or not, a good metric is whether you've done anything moderately complicated like an EDID override, or finding and setting bizarre settings in .ini files for FOV changes, or adding a Mod like the ENB mod to GTA.

This is the same sort of thing, where you'll need to recognize patterns, and need to be accurate on the stuff you type to make it work. Like most all of these modder tools, if you do something wrong you get very little feedback, it just doesn't work or crashes instantly. We'll have each other to bounce ideas off of, so if something is not working, we'll be able to find typos and things easier than usual.


The first two classes are clear, and after that I'll think of something.

1) Installing the debug version of HelixMod, making sure it works, and hunting shaders.
2) Finding a specific broken shader, and disabling it.


As far as the structure goes, please let me know if you have any preferences?

For example, we could use eqzitara's walkthrough, as a sequence of steps to follow to the end. Or I could make a video of the basic steps as a sort of lecture style sequence.

Or I could try to make it more quiz like where I give most of the steps but require something unknown as an answer.

Chat is OK too, but also too informal I think. But maybe we all agree upon a time, and join a chat to talk through things like being in a room. If we decide to do a chat, I'd recommend we just use the NVidia 3D Vision Gamers Steam group, since it's already setup and has chat.

Whatever we decide, we'll try to keep it fun. It's not going to be 'read these 500 pages before class.'


I feel like I'll need some sort of structured tool where people can check in to say they've finished X, with their results. I don't think the forum software is well suited for keeping track. I lean slightly toward a Wiki of some form, because everyone can edit to suit. I'll be honest here that I have no idea what I'm doing, but I'm always willing to wing it and see what we can do. As you can probably tell already, I'm much more interested in doing something, anything, than trying get it perfect.


I'm open to suggestions, but if there is no real consensus, concern, or preference, I'll just decide based on past classes that I've taught and my best judgment.

Acer H5360 (1280x720@120Hz) - ASUS VG248QE with GSync mod - 3D Vision 1&2 - Driver 372.54
GTX 970 - GTX 760 Dedicated PhysX - i5-4670K@4.2GHz - 12GB RAM - Win7x64+evilKB2670838 - 4 Disk X25 RAID
Latest 3Dmigoto Release
Bo3b's School for ShaderHackers

#14
Posted 08/10/2014 09:29 AM   
[quote="TsaebehT"][quote="ImNutz4NvSLI"]the ball[/quote]Heh. Heh. He said ... The Ball. Heh. :) [img]http://www.moviepilot.de/files/images/0728/9742/Beavis-Butt-Head-header2_article.jpg[/img][/quote] (Beavis) "I am 'The Great Cornholio"!! I need fixes for my shaders! Do you have any overrides? Are you threatening me? The Helix-Moder - HE WILL GIVE ME FIXES!! (ButtHead) "Settle down bung-hole - he's gonna teach us to make our own fixes" -- huh huh "dumbass!" - Pretty fitting that Bo3d's thinking of "The Ball" as our first task, I wonder if we influenced that? - In any case, I like, and have played the game, it sounds good to me! ~Nutz
TsaebehT said:
ImNutz4NvSLI said:the ball
Heh. Heh. He said ... The Ball. Heh. :)

Image


(Beavis) "I am 'The Great Cornholio"!! I need fixes for my shaders! Do you have any overrides? Are you threatening me? The Helix-Moder - HE WILL GIVE ME FIXES!!

(ButtHead) "Settle down bung-hole - he's gonna teach us to make our own fixes" -- huh huh "dumbass!"

- Pretty fitting that Bo3d's thinking of "The Ball" as our first task, I wonder if we influenced that?

- In any case, I like, and have played the game, it sounds good to me!

~Nutz

---- Core System Components ----

(MBD) EVGA® Classified™ (x58) E760
(CPU) Intel® i7™ '980x' (OC'd) @ 4.8Ghz
(CPU) Corsair® (CPU) Cooling™ (H50)
(MEM) Corsair® (MEM) Dominator(GT)™ 12GB @ 2000Mhz
(PSU) PC)P&C™ (PSU)'T12W' @ 1200w
(CSE) Cooler Master® Stacker™ (830)

---- (3D) Graphics Sub'Sys ----

(2x) EVGA® GTX'970 (SC) - Nvidia® SLi™
(1x) EVGA® GTX'660 (Ti) - Nvidia® PhysX™

(1x) ACER® (GN) 246(HL) - Nvidia® 3DVision™
(1x) ASUS® (VG) 248(QE) - Nvidia® 3DVision™
(1x) ACER® (GN) 246(HL) - Nvidia® 3DVision™

---- Audio & System Control ----

(1x) ASUS® - Xonar™ (HDAV1.3)
(1x) VL'Sys® - MPlay202+ 'GUI' & (RF) Remote

---- Storage (HDD's) & Media (ODD's) PB & REC ----

(1x) (SSD) Samsung® - 850(PRO) '3D'Vertical™
(1x) (2TB) Seagate® - Hybrid Series™
(4x) (2TB) W.Digital® - 'Blacks'™
(2x) (ODD) LG® BluRay™ - 'Play'n'Burn'

---- Nvidia® (WHQL) Drivers (x64) In Use ----

(NV®)DR - v347.88 (WHQL) - Primary (GTA V)
(NV®)DR - v350.12 (WHQL) - Testing (Stable)
(NV®)DR - v353.06 (WHQL) - All Other Titles

#15
Posted 08/10/2014 12:57 PM   
  1 / 68    
Scroll To Top