I keep getting reports about XoliulShader 2 not work properly in max 2013 and Max 2014. This is a known issue. In short, this is the response:
Autodesk has completely broken shading in Max 2013 and 2014. I can not and will not fix this. You should go back to Max 2012 if you want the optimal XS2 experience.
Now some technical details for those who wonder.
Autodesk has been working on their own Viewport Display Driver to replace the (admittedly aging) DirectX9 renderer. This new Nitrous driver is their main focus, and has broken support for my custom shader.
Autodesk’s focus on Nitrous has resulted in bugs being introduced in DirectX9 for Max 2013 which are of yet unfixed for 2014. I have informed the Product Manager for 3DS Max, Frank Delise, he acknowledged my reply and would pass it on, yet no fix has happened.
The problem specifically is that tangent data is no longer passed to shaders by the application in DirectX9 mode. When displaying the tangent data as color, this image by Nico Ulbricht shows the problem (same debug shader in both versions of Max):
As is clearly visible, Tangent data is returned as a constant for the entire model. This results in incorrect shading.
Now, the worst part about all of this is that it does not just break external shader support; the problem is also visible when using the standard, built in “hardware display” shaders, a core feature of Max, created by Autodesk themselves. I can only guess that DirectX9 development has completely taken a backseat these days…
Custom shaders do seem to work to some degree in Max 2014, I will investigate this and see what is possible. For now, my shader does not work properly with it.
So the Borderlands 2 guns look amazing. I found the Nerf Spectre, which is a bit of a rare gun, to match well with Hyperion’s angular shapes. The yellow and black scheme has turned out fantastic, this is definitely a step up from all the previous guns.
I might do a few more Borderlands 2 inspired guns…
Not all that terrible looking at it now. I had spent a few months converting existing GTA:SA cars to Crashday before I attempted this, I had even already learned to UV when I had to redo textures on some cars (I remember manually painting Ambient occlusion once LOL).
This is the key piece of code. If you don’t set bakeEnabled, it won’t bake. Easily overlooked. Bakechannel I’m not sure of the default, but you most probably need to set this explicitely. nDilations was my problem: this is the “edge padding” value: not explicitely setting it results in useless bakes! There is not a single warning on this in the Max help anywhere!
bp.removeAllBakeElements() --clear all to be safe and clean
dbe = DiffuseMap()
dbe.enabled = true
dbe.outputSzX = 128
dbe.outputSzY = 128
For completion’s sake, here’s the rest of the essential code. The Bake elements have VERY generic class names such as “DiffuseMap”. They have to be enabled explicitely again.
The filename and filetype properties of the bake element are again very important: failure to set these and your bake element will not be able to create a bitmap. You’ll get a non-descriptive “Error Creating Bitmap” message. It doesn’t actually save them to that location though…
Also, very important to note: Edgepadding, or the ndilations value, is not applied when you set just “.tga” as filetype. If you set “filename.tga” it will apply them. The actual purpose of filetype vs filename is very vague and unclear.
Hopefully that will help out anyone who’s running into this same issue!
Its been years since I did actual game-like programming, but thanks to Rafael at work who told me about Flixel and using Actionscript to get started. I never knew it was this easy, I thought you needed to know flash and all that, but it really is a lot like the 2D C++ “GameEngine” I learnt to program with in university. Only much easier, faster and less limiting. I’m not saying C++ is slow and limited, but for someone who codes for fun, I couldn’t care less if c++ allows more control and all that.
It’s the start of a spaceship game that should have everything random generated (well except for the names). I based the spaceship generation code on Dave Bollinger’s PixelSpacehips. (site’s dead, hence wayback). Keep refreshing, it’s different every time! It also cycles between 5 types of country naming types, US, Japanese, Russian, German and French (it’s so fun coming up with the names).
Plus, I just found out you can do shaders in Actionscript, so now I can manipulate graphics faster and even easier!
Since I moved to Bromley and got a new motorcycle, I’ve been spending almost every weekend riding in the countryside. On one of my last rides I saw so many great views, I decided to go back and make a little photoserie about it.