Marbles
Assignment: Make a scene with marbles using some OSL shaders. The scene should include grass, concrete, and the marbles, along with a background HDR.
WIPS
I set up my marble scene using primitive spheres, and I modeled a swirl for the inside of some of them.
I used an OSL Concrete shader for the groundplane, and I used XGen for the grass in the background, and an HDR for the lighting and bakground. The majority of the marbles in my early WIPs used the glass preset, aside from the colorful one on the left that I used an image projection for.


I was using these images as my references for my marbles and the concrete, but due to the nature of having to use internet sources OSL shaders for the most part, it was difficult to actually replicate the references.



I then used a color ramp to color in the orange and green striped marbles. On top of that, I adjusted the grass a bit more, and got some more fine tuning on the pavement. I also added a scratches OSL to the marbles, but I think because of the scene being on such a small scale it's not incredibly visible. It's more visible on the opaque marbles than on the clear glass ones.

Green striped marble

Concrete

Orange striped marble

I then edited the orange and blue marbles to use a swirl OSL shader


Next I changed one of the clear marbles to use a flakes OSL


Final
Then I changed the grass from all xgen to half xgen and half modeled. The modeled grass was done using deformers and MASH on two different modeled pieces of grass to distribute them. Afterwards, I put everything into Nuke and composited it with the z depth feature in order to add some blur to the background so it would look like it was out of focus.

Troubleshooting
It took me a little while to figure everything out with the OSL shaders, and some of the ones I wanted to use just straight up did not work. I think that a lot of the OSL shaders online assumed that I had more experience and knowledge with OSL than I actually had, so I had to resort to not using the shaders that I wanted to.
The concrete shader was also kind of strange to work with in that it had a few parts that didn't really do anything. It had an option for 'pebbles' which didn't make any difference even when I turned it all the way up. It also had an odd 'sand' option which just superimposed a camouflage-like image of "sand" over the texture. Regardless, I was unable to find another concrete OSL so I just turned off the sand and pebbles and continued to work with what was left.
​
Final Thoughts
In general I felt like I was out of my depth with this project, and it was certainly a learning experience. I feel like I learned a lot and I worked adequately through the problems that I had with my project.
​
Overall I don't think I really liked working with OSL that much. Though I suppose part of that could be chalked up to the high render times and the need to frequently re-render in order to experiment. I don't think that my computer was adequately equipped to handle it.
​