Physically Based Lighting viewport shader for 3DS Max in the works! Still screwing around with different BRDFs and whatnot. Coming soon! And a tutorial on asset creation!
Will it work in 3ds Max 2013/14? How physically based is it? What phenomena does it account for?
-Any version of 3DS Max should work!
-It's fairly physically based. Uses various bits from papers I've read up on.
-Specular and diffuse are both energy conserving, all done in linear space.
-It has a geometry term/shadow based on a Smith-Schlick shadowing function.
-Has slots for a ambient cube(irradiance), and a reflection cube, which it blurs based on your gloss.
-Specular Power goes from 0-2048 range. ( setting is 0 to 1 )
-3 Light support(Omni).
-Has basic tone mapping to keep things nice and clean looking.
-Takes Diffuse, Specular, Gloss and Normal maps.
Will it have a special UI like Xoliul shaders and if so, will that work in max 2013/14? I hear that there are problems with this kind of thing when using the newer nitrous viewport versions of max.
From my understanding of PBR, I never got why you would need the second cube map. (The ambient irradiance one) Couldn't that be generated from the lowest mip level of the reflection cube? Can someone link me to some documentation that explains why its necessary? is it a performance thing or is it used to model a sepperate phenomenon that I am not aware of?
Thanks for the reference, I looked some more and found this one which I felt did a good job explaining.
So basically, the Irradiance cube map is the same as the specular cube map except it is first precomputed in such a way as to have the each pixel account for all the light visible to its normal direction's hemisphere, scaled by the cosine law, (aka the irradiance) and this is what would otherwise not be accurately represented by simply using the lowest mip of the specular cube map.
In addition, the irradiance cube map will be sampled directly based on the world space normal of the pixel being shaded, while a specular cube map lookup will be based on the reflection vector -- the viewing direction on the surface normal.
Yep, that's about the general idea in short. Naturally, you could skip all of that if you don't have access to a proper way of getting an Irridance map, and simply get in some shader Hemispherics into your shader instead and/or use a Fake HDR setup (you take luminance of your cube, contrast/bright it abit and voila, done.)
Hello All,
Here is what i am working on, it's game Molecats,
indie-game puzzle with hand-draw textures, weird gameplay.
working with unity3d (me-code + designer).
Thanks for the reference, I looked some more and found this one which I felt did a good job explaining.
So basically, the Irradiance cube map is the same as the specular cube map except it is first precomputed in such a way as to have the each pixel account for all the light visible to its normal direction's hemisphere, scaled by the cosine law, (aka the irradiance) and this is what would otherwise not be accurately represented by simply using the lowest mip of the specular cube map.
In addition, the irradiance cube map will be sampled directly based on the world space normal of the pixel being shaded, while a specular cube map lookup will be based on the reflection vector -- the viewing direction on the surface normal.
Am I understanding this right?
That is correct. You can also do irradiance cubemaps by a SH order 5 calculation, which is still very accurate and very very fast to compute. Using the lowest mip doesn't generally blur it enough anyways . I also blur my specular cubemaps based on their BRDF.
If you don't know what to do, there is a script I would like to see one day : a vertex counter for game assets in Maya, that would be able to give you the final vertex count that a game engine will have when importing your meshes. http://www.polycount.com/forum/showthread.php?p=934301#post934301
I didn't have the time to build this little script, but if you have the time...
The biggest challenge I had was how to capture the feel and style of the original artists. To do this, I developed a custom lighting model that blended lighting information with a height map texture before sending it through a real-time color gradient. I'm only using a handful of 512 normal and height maps for the entire level. The electrical arcing uses only a cloud noise texture.
Physically Based Lighting viewport shader for 3DS Max in the works! Still screwing around with different BRDFs and whatnot. Coming soon! And a tutorial on asset creation!
I am working on a collection of scripts for Photoshop that could be used to speed your interaction with the layers palette. The main idea was to make the scripts and use them as keyboard shortcuts. I am putting this here just to see if anyone has the need of this kind of interaction.
The scripts are:
1.toogleVisibility of the selected layers....
2.selectParent ... in case that you have selected one layer that's inside a layerSet the script will select the parent layerSet
3.toogleCloseOpenSet ... this script will close or open the selected leyerSets
4.selectSibilings .... it add to the selection the siblings lyers
5.selectOnlySibilings .... select only the sibilings
6.selectBackward ... with this script I've tried to adjust the selectBackward command from Photoshop that works only on visible layers, my script will select the hidden layer as well:
7.selectForward ... with this script I've tried to adjust the selectForward command from Photoshop that works only on visible layers, my script will select the hidden layer as well
8.toogleShowOnlySelected .... this script shows only the selected layers, I've tried to adjust the show only layer from Photoshop, the default option will leave visible only the layer that you Alt+click the eye, and will hide the rest, but if it is on a hidden layer you won't see anything, my script is showing the parent layerSets as well. And also you can view more than one layer.
9.callColorPIcker ..... this script is used to open the Photoshop color picker, I created it just to use it as a keyboard shortcut.
10.searchLayersByName .... this script opens a window where you can type the layer name that you want to select and it will select on the closing of the window the resulting selected layers
11.toogle_selectRGB_selectMASK_showMask ... I've created this just to use it with a keyboard shortcut. First it select's the RGB channels of the layers, then it selects the Mask and last it shows the mask(just like Alt clicking on the mask in the layers palette)
great, I'm glad that some of you would like to use the scripts I've made, I will make them public as soon as I am finishing the testing and documentation.
Thanks! This looks just like what I need. I wonder if this can be turned into a doxygen filter. Then all the docs of my project would be in one doc system.
Um, this might be a little bit random, but just wondering if anyone here (or anyone they knew) would be interested in pairing up and developing a ALL NEW IMPROVED PHOTOSHOP BRUSH PALETTE
As an artist i can't believe how ancient and lacking in features it is, and has been for years.
Got lots of ideas for what artists want, just need a friendly techie type to make it happen
Think there could be a whole lot of grateful texure/concept artists/illustrators out there if something like this was available.
Any takers?
(i know its a long shot, but pm me if your interest is piqued! If not, forget i said ANYTHING )
Could you guys explain what you mean by PS Clunky brushes?
I too hated PS brush system, but after getting a cheap wacom tablet, almost all the issues I had were gone, especially in CS6. Not to mention, custom tailoring personal brush sets via the brush system before hand (kinda like setting up menu system in ZB) would also void the default issues it had.
I'm not saying that buying specifically a wacom is the solution, but if you guy paint a better picture (pun intended) on what the issue actually is and ballpark what you would like to be solved, maybe people could bring better feedback?
The brush editor works just fine, it's the preset manager that's lacking. Reordering, renaming, deleting and adding brushes is a pain in the ass. I didn't add any suggestions because, from pixelherder's post I assumed he had plenty of artist feedback and was in need of programming help (of which I can give none), but I'd love to be delete multiple brushes at once, for starters.
Could you visualize the problem + a suggestion ? I am quite busy, but maybe if I understand more what you need, I can find the motivation to free up some time
It's been a while since I've had trouble with it myself cause I've been pretty much using one single brush since the beginning of this project but I'll ask the resident illustrators here at the studio and gather suggestions.
Could you guys explain what you mean by PS Clunky brushes?
I too hated PS brush system, but after getting a cheap wacom tablet, almost all the issues I had were gone, especially in CS6. Not to mention, custom tailoring personal brush sets via the brush system before hand (kinda like setting up menu system in ZB) would also void the default issues it had.
I'm not saying that buying specifically a wacom is the solution, but if you guy paint a better picture (pun intended) on what the issue actually is and ballpark what you would like to be solved, maybe people could bring better feedback?
The brush editor works just fine, it's the preset manager that's lacking. Reordering, renaming, deleting and adding brushes is a pain in the ass. I didn't add any suggestions because, from pixelherder's post I assumed he had plenty of artist feedback and was in need of programming help (of which I can give none), but I'd love to be delete multiple brushes at once, for starters.
The major issue is organisation and categorisation, so some ideas i have include
- Search > its be great to type in "rust" or "dirt" etc and have all the appropriate brushes show up
- TABBED BRUSH SECTIONS > The monolithic list of brushes that photoshop uses is pretty unwieldy. I've always wanted to have it split up into more manageable sections e.g. "General" "Dirt" "Grunge" "Organic" "Mechanical"...whatever you like really
- You could even combine Search with Tabs and create tabs that just show brushes with specific search terms e.g. DIRT INDUSTRIAL METAL
...also stuff like RECENT tab, and MOST USED...
And then theres a list of less essetial, but "Nice to have's"...
- Better Brush Highlighting > i STILL find it difficult to sometimes tell what brush i have selected in the Palette. Just make it more obvious from a glance!
- Less dependence on going into the preset manager to do things > I should be able to select multiple brushes, move, reorganise etc from the main brush palette
- Move the brush stroke preview window from the brush palette, to the Brush Preset Palette. Like it used to be in cs4...
- Custom Brush Icon Display size...why not have a slider at the bottom of the window that you can slide and set up the display size to your liking...tiny 16x16px or massive 256x256
Umm, yeah - so thats a few of the things i've got in mind.
I use photoshop every day and this is the one area that constantly grates. I'm sure there are workarounds for a lot of these things, but i dont see why it couldnt be just a LITTLE more elegant, user friendly and productivity enhancing!
*EDIT*
After a bit more rumination, i've had a few more ideas for some more ambitious features...theres so much that could be done! So if anyone does want to collaborate on this then drop me a line. I've got a stable of top-notch concept artist chomping at the bit to try something like this out!
when I get home I would have to see if I can even get the right kinda data our of the API to do things like the brush search and user defined filter tabs.
The API lacks a lot of features expecially when it comes to directly controlling tools.
Spent most of the weekend working on my Toolbox project. It's basically a custom editor for CryENGINE aimed towards being super extensible and user-friendly.
Progress over the weekend has led to the ability to create and render levels, as well as a basic docking system.
I've been working on a tool that generates flowmaps using a fluid simulation. It's a plug in for Unity. I've submitted it to the asset store, I'll post a link when that goes live. There's some more info here http://www.superpositiongames.com/products/flowmap-generator/, with a Unity webplayer demo.
Replies
Hey sorry was busy with crunch at work and kinda stopped working on this. Will finish it up and post it.
Will it work in 3ds Max 2013/14? How physically based is it? What phenomena does it account for?
http://www.creativecrash.com/maya/script/nightshade-calculator
Why? Because I was bored.
@NIghtshade : Haha, that's awesome. x]
-Any version of 3DS Max should work!
-It's fairly physically based. Uses various bits from papers I've read up on.
-Specular and diffuse are both energy conserving, all done in linear space.
-It has a geometry term/shadow based on a Smith-Schlick shadowing function.
-Has slots for a ambient cube(irradiance), and a reflection cube, which it blurs based on your gloss.
-Specular Power goes from 0-2048 range. ( setting is 0 to 1 )
-3 Light support(Omni).
-Has basic tone mapping to keep things nice and clean looking.
-Takes Diffuse, Specular, Gloss and Normal maps.
From my understanding of PBR, I never got why you would need the second cube map. (The ambient irradiance one) Couldn't that be generated from the lowest mip level of the reflection cube? Can someone link me to some documentation that explains why its necessary? is it a performance thing or is it used to model a sepperate phenomenon that I am not aware of?
Another example here, at page 80+ http://www.slideshare.net/guerrillagames/lighting-of-killzone-shadow-fall
Thanks for the reference, I looked some more and found this one which I felt did a good job explaining.
So basically, the Irradiance cube map is the same as the specular cube map except it is first precomputed in such a way as to have the each pixel account for all the light visible to its normal direction's hemisphere, scaled by the cosine law, (aka the irradiance) and this is what would otherwise not be accurately represented by simply using the lowest mip of the specular cube map.
In addition, the irradiance cube map will be sampled directly based on the world space normal of the pixel being shaded, while a specular cube map lookup will be based on the reflection vector -- the viewing direction on the surface normal.
Am I understanding this right?
Here is what i am working on, it's game Molecats,
indie-game puzzle with hand-draw textures, weird gameplay.
working with unity3d (me-code + designer).
here small video @ youtube
https://www.youtube.com/watch?v=X20VsPnr-co
and tech screens, what behind
(large http://vidroid.com/_tmp/unity-mt.jpg)
more screenshot and some info you can find in our site Molecats
thanks.
That is correct. You can also do irradiance cubemaps by a SH order 5 calculation, which is still very accurate and very very fast to compute. Using the lowest mip doesn't generally blur it enough anyways . I also blur my specular cubemaps based on their BRDF.
https://seblagarde.wordpress.com/?s=cubemapgen
Yeah things just hit a new low watermark at work so I did that while waiting for new tasks -_-
I didn't have the time to build this little script, but if you have the time...
The biggest challenge I had was how to capture the feel and style of the original artists. To do this, I developed a custom lighting model that blended lighting information with a height map texture before sending it through a real-time color gradient. I'm only using a handful of 512 normal and height maps for the entire level. The electrical arcing uses only a cloud noise texture.
that is super nice!! how long are you working on this now?
This is awesome!
When is the release date?
I am working on a collection of scripts for Photoshop that could be used to speed your interaction with the layers palette. The main idea was to make the scripts and use them as keyboard shortcuts. I am putting this here just to see if anyone has the need of this kind of interaction.
The scripts are:
1.toogleVisibility of the selected layers....
2.selectParent ... in case that you have selected one layer that's inside a layerSet the script will select the parent layerSet
3.toogleCloseOpenSet ... this script will close or open the selected leyerSets
4.selectSibilings .... it add to the selection the siblings lyers
5.selectOnlySibilings .... select only the sibilings
6.selectBackward ... with this script I've tried to adjust the selectBackward command from Photoshop that works only on visible layers, my script will select the hidden layer as well:
7.selectForward ... with this script I've tried to adjust the selectForward command from Photoshop that works only on visible layers, my script will select the hidden layer as well
8.toogleShowOnlySelected .... this script shows only the selected layers, I've tried to adjust the show only layer from Photoshop, the default option will leave visible only the layer that you Alt+click the eye, and will hide the rest, but if it is on a hidden layer you won't see anything, my script is showing the parent layerSets as well. And also you can view more than one layer.
9.callColorPIcker ..... this script is used to open the Photoshop color picker, I created it just to use it as a keyboard shortcut.
10.searchLayersByName .... this script opens a window where you can type the layer name that you want to select and it will select on the closing of the window the resulting selected layers
11.toogle_selectRGB_selectMASK_showMask ... I've created this just to use it with a keyboard shortcut. First it select's the RGB channels of the layers, then it selects the Mask and last it shows the mask(just like Alt clicking on the mask in the layers palette)
http://www.scriptspot.com/3ds-max/scripts/maxscriptdoc
Havn't tried it yet, but it looks simple enough.
Really awesome, brilliant it is.
Thanks
Thanks! This looks just like what I need. I wonder if this can be turned into a doxygen filter. Then all the docs of my project would be in one doc system.
As an artist i can't believe how ancient and lacking in features it is, and has been for years.
Got lots of ideas for what artists want, just need a friendly techie type to make it happen
Think there could be a whole lot of grateful texure/concept artists/illustrators out there if something like this was available.
Any takers?
(i know its a long shot, but pm me if your interest is piqued! If not, forget i said ANYTHING )
Photoshop's brush manager is unbelievably clunky, I'd love to see somebody do it right. Make it happen, man!
I too hated PS brush system, but after getting a cheap wacom tablet, almost all the issues I had were gone, especially in CS6. Not to mention, custom tailoring personal brush sets via the brush system before hand (kinda like setting up menu system in ZB) would also void the default issues it had.
I'm not saying that buying specifically a wacom is the solution, but if you guy paint a better picture (pun intended) on what the issue actually is and ballpark what you would like to be solved, maybe people could bring better feedback?
The major issue is organisation and categorisation, so some ideas i have include
- Search > its be great to type in "rust" or "dirt" etc and have all the appropriate brushes show up
- TABBED BRUSH SECTIONS > The monolithic list of brushes that photoshop uses is pretty unwieldy. I've always wanted to have it split up into more manageable sections e.g. "General" "Dirt" "Grunge" "Organic" "Mechanical"...whatever you like really
- You could even combine Search with Tabs and create tabs that just show brushes with specific search terms e.g. DIRT INDUSTRIAL METAL
...also stuff like RECENT tab, and MOST USED...
And then theres a list of less essetial, but "Nice to have's"...
- Better Brush Highlighting > i STILL find it difficult to sometimes tell what brush i have selected in the Palette. Just make it more obvious from a glance!
- Less dependence on going into the preset manager to do things > I should be able to select multiple brushes, move, reorganise etc from the main brush palette
- Move the brush stroke preview window from the brush palette, to the Brush Preset Palette. Like it used to be in cs4...
- Custom Brush Icon Display size...why not have a slider at the bottom of the window that you can slide and set up the display size to your liking...tiny 16x16px or massive 256x256
Umm, yeah - so thats a few of the things i've got in mind.
I use photoshop every day and this is the one area that constantly grates. I'm sure there are workarounds for a lot of these things, but i dont see why it couldnt be just a LITTLE more elegant, user friendly and productivity enhancing!
*EDIT*
After a bit more rumination, i've had a few more ideas for some more ambitious features...theres so much that could be done! So if anyone does want to collaborate on this then drop me a line. I've got a stable of top-notch concept artist chomping at the bit to try something like this out!
The API lacks a lot of features expecially when it comes to directly controlling tools.
Progress over the weekend has led to the ability to create and render levels, as well as a basic docking system.
Based on this concept I did a while back.
So has anybody tackled this concept for Max yet? I find myself envying Blender users ;-)
[ame="http://www.youtube.com/watch?v=gEV7TxZQIsY"]Flowmap Generator Features - YouTube[/ame]