Author Topic: NWShader  (Read 9327 times)

Legacy_pkpeachykeen

  • Jr. Member
  • **
  • Posts: 89
  • Karma: +0/-0
NWShader
« Reply #60 on: September 07, 2010, 02:04:07 am »


               Nope, not stopped yet. I've been busy and haven't had much time to put into this, but I spent the last few hours tackling the two most obnoxious bugs and think I might have them fixed. Need to tweak some XML-related stuff (TinyXML is being a pain building at the moment), but those issues should mostly be taken care of.

I've also upgraded my dev system to Visual Studio 2010, so I may upgrade NWShader to use the Visual C++ 2010 runtimes. However, those require XP SP3 or better (which everyone should have, but I know a few people refuse to progress '<img'>) so I'll probably be building the releases under VC 2008 for a while. The static analysis built into VS2010 is awful nice though, it's pinpointed a half-dozen memory leaks and a few other possible issues that I never would have caught. I ran CppCheck and am looking into setting up regular PreFast (or whatever it is) analysis to make sure the code-base is of the highest possible quality.

Anyway, uploading some updated code to the SVN right now. I'll be doing more on my end in the next few days, then see about releasing an update.

My next goals are shiny water and/or scriptable GUI. Both are definitely possible, but I haven't gotten either to look good yet. '<img'>

Water will be simple material shaders with high and low quality version available. I'm looking into simple shiny water (specular), with normal-mapped waves (possibly animated) and varying opacity (fresnel and depth fog). Eventually I'd love to add reflection, refraction, shore foam, caustics and dynamic waves, but that'll be a huge undertaking.

GUI will probably be MyGUI (if I can make it work here), which is a fully scriptable, full-featured XML-based GUI toolset. It does need input hooks, so I'll have to take care of that first (have code around here somewhere to handle it). I'll be tying it tightly to the script system and enable both server-to-client commands and client-to-server replies, thanks to some help from Skywing. It'll probably have a basic system for response checking (for example, when the user clicks a button, it'll just send "|nwshader gui click buttonName" to the server as a chat message). It'll be scriptable and dynamic, though, as much as I can make it.

Edit: And I may have missed any posts on the official NWS forums. They had died down a bit and I somehow stopped getting email updates, so I forgot to check them. Been keeping up a goodly chat/email discussion on this though. I got the code back out after Zebranky started sending me patches (guessing it was a hint). '<img'>
I'll try to check back there and reply to anything I missed.

Also, I've received a fully translated copy of the manual (in Italian) thanks to dark_ansem, so I'll be packaging the next release with complete manual and GUI texts in Italian. If I can find anyone(s) to translate the manual and texts to Spanish, French and German, that would be wonderful. If not, Google will have to do.<><>

               


                     Modifié par pkpeachykeen, 07 septembre 2010 - 01:19 .
                     
                  


            

Legacy_thirdmouse

  • Newbie
  • *
  • Posts: 14
  • Karma: +0/-0
NWShader
« Reply #61 on: September 15, 2010, 11:36:26 pm »


               My ATI card chooses for me. Not that it was a vote!
               
               

               
            

Legacy_pkpeachykeen

  • Jr. Member
  • **
  • Posts: 89
  • Karma: +0/-0
NWShader
« Reply #62 on: September 19, 2010, 06:08:19 pm »


               I've changed the depth format and things appear to work, I need to do more testing. Fixed up the GUI crash, for good I hope.



I've also added a few features, like filtering shaders (don't display debug ones, and the regex used to filter is tweakable) and a few other GUI tweaks. I'm also making it more accessible, with support for resizing.



Got a few other things on the list, hopefully I can get enough time this week to get it all built and start testing.
               
               

               
            

Legacy_pkpeachykeen

  • Jr. Member
  • **
  • Posts: 89
  • Karma: +0/-0
NWShader
« Reply #63 on: September 30, 2010, 07:37:23 pm »


               I has made a wee little patch:

https://sourceforge....nwshader/files/



The latest patch (0.2.3.0) depends on the latest Chronepsis download as well. It's a simple patch of the DLL and GUI.



Still testing it, works nicely on my system and everything appears to work.



The config error is fixed, hopefully for good this time. Reworked the config file format to be proper XML. You will lose any settings, but it should be much more stable. A few user requests have been added in, including saving the last tab and a customizable filter for the shader list.



In the core, I think I fixed the depth issues and did a few other tweaks. I'll be doing more if this does in fact fix the issues.



Send any test reports my way, with logs and screens if they contribute.
               
               

               
            

Legacy_Dark_Ansem

  • Full Member
  • ***
  • Posts: 148
  • Karma: +0/-0
NWShader
« Reply #64 on: September 30, 2010, 07:38:57 pm »


               you're always the best '<img'>
               
               

               
            

Legacy_R-TEAM

  • Jr. Member
  • **
  • Posts: 51
  • Karma: +0/-0
NWShader
« Reply #65 on: October 01, 2010, 02:01:45 pm »


               Hi,



thanks for the patch '<img'>

The engine self works fine ... but (again :\\ ) the config GUI sucks '<img'>

Store the screensave format randomly false and save only the first selected shader ....

Have setting this with an texteditor - now it works nice ....



Regards

R-TEAM
               
               

               
            

Legacy_Jez_fr

  • Sr. Member
  • ****
  • Posts: 460
  • Karma: +0/-0
NWShader
« Reply #66 on: October 01, 2010, 06:05:42 pm »


               Thanks to continue working on this Peachy =)

I do have a problem though. I don't see any change at all ingame XD
I followed exactly the installation procedure (easy enough) so I have chronepsys 0223 + patch 0230, have every files copied in main NWN folder, along with NWNShader folder. I think that's correct.

With default installation I don't see any change at all once ingame. So I tried the NWNShader GUI, and checked Fullscreen shaders and Material Shaders boxes. Still no change.

Do I have this correct? or do I need to add some shaders by hand (where?) or did I missed something, like maybe does it require the camera hak to work?

And what can I check ingame to be certain that NWNShader is working?

Thanks for any help in advance! ^^
               
               

               


                     Modifié par Jez_fr, 01 octobre 2010 - 05:08 .
                     
                  


            

Legacy_pkpeachykeen

  • Jr. Member
  • **
  • Posts: 89
  • Karma: +0/-0
NWShader
« Reply #67 on: October 02, 2010, 12:04:49 am »


               R-TEAM: So no crash now? That was my main goal for this, to prevent the crash that had been a problem for 223.
I haven't found a solution for the screenshot directory/format being blank. I haven't been able to find a definite pattern or fix; even the code Zebranky sent me didn't solve the problem entirely. As long as it doesn't crash now, that's a step.
As for the shader flaw, I did a lot of tweaking with the shader list, so it's not surprising it's not fully working. I'll take a look on that too.

Jez_fr: Well, my biggest goal was a success if it doesn't crash. '<img'>
To test if it's running, delete the file nwshader.log and run the game. If the log is recreated, NWShader ran. you can see the settings and what exactly happened in the log file.

As for no shaders, again, I'll take a look at it. Not sure why, I based the code very closely after the last version (223).

As far as requiring the camera hack, no, NWShader does not require the camera hack. In fact, if you use NWShader, there's no need to use the camera hack: NWShader includes an improved version as an option.

You're actually safer using a byte-perfect version of the original engine with temporary patches performed by NWShader than using a hacked engine: NWShader's edits only last as long as the game is running and don't change any files. NWShader is capable of performing the same patching technique as the camera hack, simply in a safer and more flexible manner. It's also possible to apply other patches in the same manner, so anyone wanting to improve a particular function can replace it with their own code. Eventually I hope to expose a full API for patching the engine, but that'll be a bit in the future.
               
               

               


                     Modifié par pkpeachykeen, 01 octobre 2010 - 11:10 .
                     
                  


            

Legacy_Nostrebor

  • Newbie
  • *
  • Posts: 43
  • Karma: +0/-0
NWShader
« Reply #68 on: October 02, 2010, 07:16:46 pm »


               Hi,

I just installed nwshader ( chronepsys 0223 + patch 0230) on Windows 7 64-bit. The nwshader.xml is not compatable with nwshader gui.  As a result all of the values are set to something that does not work.  After I set them nwshader appers to work fine.
               
               

               
            

Legacy_Nostrebor

  • Newbie
  • *
  • Posts: 43
  • Karma: +0/-0
NWShader
« Reply #69 on: October 02, 2010, 07:25:15 pm »


               By the way, After I set the values, I was very impressed by nwshader.  Are there any materials/shaders that make wolf's hair look better.  My kid likes wolves.
               
               

               
            

Legacy_pkpeachykeen

  • Jr. Member
  • **
  • Posts: 89
  • Karma: +0/-0
NWShader
« Reply #70 on: October 02, 2010, 10:39:30 pm »


               I haven't done anything to wolves yet, but it's possible to make a fur or other effect shader. I'll have to play with that.



For reference, do the shaders work on your system, Nostrebor? I'm trying to pin down what patch broke, if it did break anything.
               
               

               
            

Legacy_Nostrebor

  • Newbie
  • *
  • Posts: 43
  • Karma: +0/-0
NWShader
« Reply #71 on: October 03, 2010, 02:49:19 am »


               

pkpeachykeen wrote...

I haven't done anything to wolves yet, but it's possible to make a fur or other effect shader. I'll have to play with that.

For reference, do the shaders work on your system, Nostrebor? I'm trying to pin down what patch broke, if it did break anything.



The shaders don't seem to do any thing, but I don't know if my configuration file is correct. 
               
               

               


                     Modifié par Nostrebor, 03 octobre 2010 - 01:54 .
                     
                  


            

Legacy_Nostrebor

  • Newbie
  • *
  • Posts: 43
  • Karma: +0/-0
NWShader
« Reply #72 on: October 03, 2010, 04:08:15 am »


               

pkpeachykeen wrote...

For reference, do the shaders work on your system, Nostrebor? I'm trying to pin down what patch broke, if it did break anything.


I have attached the log file.  There seems to be a few errors (is there anyway to keep the forum from reflowing the file.  Bullets worked but there should be another way):


Long List removed
               
               

               


                     Modifié par Nostrebor, 03 octobre 2010 - 11:19 .
                     
                  


            

Legacy_Nostrebor

  • Newbie
  • *
  • Posts: 43
  • Karma: +0/-0
NWShader
« Reply #73 on: October 03, 2010, 04:38:57 am »


                I think the NWNShader GUI is not correctly writting selected shaders to the "nwshader.xml".  I selected the bloom.cgfx and depthoffield.cgfx shaders, but the xml file has:
  • </Settings>
  •   <Shaders>
  •     <Shader number="0" file="shaders\\bloom.cgfx" />
  •   </Shaders>
When I exit and restart the GUI even this entry is ignored (no shaders are selected)
               
               

               
            

Legacy_pkpeachykeen

  • Jr. Member
  • **
  • Posts: 89
  • Karma: +0/-0
NWShader
« Reply #74 on: October 03, 2010, 05:29:15 am »


               Whoa. Any way you can condense that log (or even edit it out, now that I've gone over it)? Bit long. '<img'>



There is a known issue with the shader list, causing them not to be properly written. I'll be fixing that and verifying both ends work correctly. I added a filter to the list, which seems to be having a few unpleasant side effects. Should be easy to take care of, and the loading and drawing code should still work.