Monday, November 25, 2013

Book Covers

My next final this quarter is from my photography fundamentals II class, which focused on the digital side of photography, that being Lightroom and Photoshop CC.  Thankfully at our school, we get he entire CC suit for free as students.  Unfortunately, as soon as we graduate, it expires.  So while I have it, I'll use it.

Many of you may already know I am very familiar with Photoshop already.  I used to work at National Geographic doing image editing, everything from retouching to restoration and archiving.  I even managed to do some heavy compositing work for outside customers.  I also worked freelance for several years doing everything from cataloging to wedding albums and more.  So when I started taking a class on the fundamentals of Photoshop, I was skeptical I'd actually learn anything.  Well, I'm sure my fellow students got more out of it than I did, but I did actually learn some techniques and workflows that are very useful.

The hardest thing about this class for me was having to actually take my own photographs for everything.  Usually I'm handed a photograph, which already looks awesome because a professional took it, and I just have to make it look awesomer.  However, now I had to work with my own pictures, and discovered how hard it is to make something look good when it wasn't taken properly in the first place.  Several of these photographs turned out to be a little less than perfect, but that is why I am at school, to get better.  And once again I've learned a thing or two about taking pictures especially with the intent to take them into Photoshop to manipulate them later.

So for my final project, I had to pick 4 of the top New York Times Best Sellers and create new book covers for them.  I came up with 4 ideas, and 2 of them had to be redone (it's hard to go from a widescreen format way of thinking to a vertical book cover format).  The books I chose were Sycamore Row, Ender's Game (I do not support the ideologies or politics of the author), Identical, and The Racketeer.  These are not official, and only student work and I have no affiliation with the authors or the publishing houses or the New York Times.  I researched a little about each book to get an idea of what the story was about (I did not have the time to read the books themselves), and based my pictures off of that.

I will be posting more of my Photoshop work from earlier in this quarter soon.  So for now, Enjoy!

Saturday, November 23, 2013

Plant Shader

One of my final projects was to create a "shader" in Renderman for a plant.  The idea of a shader is essentially all the colors and patterns of a surface as well as the way the light interacts with it.  In short, it is a tool that the user adjusts that makes 3D objects look like what they represent.  So a rock will have a rock shader, a tree with a tree shader, and so on.  But in reality, these shaders are rarely so specific.  Most shaders are adjustable to look like a variety of things, and you can stack things on top of each other to change the look.  It gets really involved actually.  But to actually write a shader out by hand means you have far more freedom to make something look exactly like what you want, and for a very specific purpose.  As such, we were learning how to make an organic plant shader.  We actually had to go out and buy plants to study the patterns and figure out how to recreate the look with a coded shader.

I admit my shader is not as refined as I would like it to be.  I intend to take it further and add what are called "octaves", which is really just another level or two of detail, to really refine the shader.  I also want to refine the controls, but overall I am pleased with what I was able to come up with.  I would love to learn how to implement things like image based lighting and ambient occlusion into the shader, so I may have to study this on my own.  There is so much more to learn for shader writing, and I really enjoyed it so I wouldn't mind diving into this more.

So for now, here is a final render of my shader.  All aspects of it (including the interaction of light and shadow, the transmission of light, the backside colors, and so much more) are developed by me, and I hope to take it further.


Monday, November 18, 2013

Painting geometry and MEL scripts (Poplate)

I just added a new post to my other blog, Last Light Film Blog, where I talk a little about a MEL script I made a few quarters ago which was designed to allow me to randomly place as many different geometry files on a surface while controlling various aspects such as collision detection and scaling.  Long story short, my script had too many bugs to use in my forest scene for my senior film, so i decided to use another tool I recently discovered called the Paint Geometry tool.  No this tool doesn't let you paint on geometry (there are plenty of other ways to do that already, I prefer Z Brush or Mudbox myself).  Rather, this tool allows you to literally paint geometry on the surface of any geo you want.  So you could paint 3D bears on a sphere, grass on a plane, or in my case, a forest of pine trees on a mountain.

I decided to use this tool but there are a few issues with it I still need to work out.  First of all, it allows penetrating geometry, which may not be a problem in my case since the trees are all far away, but I will have to spend the time to see if it is noticeable and fix it if it is.  It also only allows one geometry to be painted on, which means I had to repeat the process with a different geo to get some variety.  Luckily it also supports randomizing scale and rotation, and even translation, but it does each axis by itself.  This means I could potentially have a flat tree, which is not desirable.

So while I am still using this tool for now and have made adjustments to make sure it looks good, I have decided to still look into fixing my existing script, "Populate".  Populate will allow me to chose how many trees I want (or how dense I want it), how close together they are (for collision detection), select from as many ma and mb files as I want (and eventually obj, fbx, and alembic), and allow me to not only have random rotation on one or more axis, but also control random scaling in one of 3 ways, uniform scaling, diameter vs height (x+z vs y), or each axis separately.  I don't have to time right now to fix this... it is finals week, but during the winter break I want to take another look at this code and get a final fully functional version out there and then share it on here for anyone to use.

I will provide more documentation on Populate when I get the chance to refine it.  It does have some specific requirements for the importing geometry, and I would LOVE to have it use rib archives or even instances of an object instead of just geometry, to fit the user's needs.  For now, enjoy a screenshot from the opening shot of my final film (not lit or textured yet).

Thursday, November 14, 2013

ACM SIGGRAPH Student Chapter

Hi everyone!
As some of you may know, I am currently the Vice-Chair of the SCAD Atlanta ACM SIGGRAPH Student Chapter, and one of the things we are trying to do is peer-education.  As such, I am teaching a short workshop on Adobe Photoshop, specifically a brief introduction and then working with selection tools, masking, and layers.  With any luck, I'll briefly go over non-destructive workflow habits as well.  So for right now, I am posting a few images I found online that we will use for the workshop.  And for all the SIGGRAPH members joining for the first time, welcome!

So the first files here are all the images we used in the demo to go over making selections, masks, and working with layers and layer order.  I touched a little on the idea of adjustment layers, but there were so many things I would still have loved to show, I may need to do more demos later.

At the bottom you can see the final SPACE COW image.  I do not own the rights to any of these, I only found them on Google Images for use in learning Photoshop.  See if you can make a space cow...

Monday, November 4, 2013

Patterns and Tartans and Weaves, oh my!

Short post for now...
So back to the shader writing, I have finished a shader (which may still need editing) that has been inspired by weaves, tartans, and patterns.  I used sine waves to make subtle patterns in the background, diagonal lines, and layers and layers of stuff.
This was harder to make than it looks, plus it is editable in Maya so you can change things like the colors and the thickness of the stripes.