░██▓
▒▓███████░
░▒█████████▀ ▀████░
░▒█████████████████▓ ▀████▒
▒█████████████████████████▓ ▀█████▒
░▓█████████████████████████████████░░▀██████▒
░▓███████████████████████████████████████████████████▓░
██████████████████████████████████████████████████████████████▀
███▓░░ ▀█░▒▒▒░░░░▒▀█████████▀▓▒▒░░▒███████████████████▀
███ ████████▓▓▒░░░░░░▒▒▒▓▓████████▀
███ ▒█████████████████████████████
██▒ ▄█████████████████████████████▄
██▒ ▄█████▀▓▓▓▓▀██████████████████████▄
██ ██░ ░▓▓▓▒░ ░░ ░ ░░ ▒▒▒▒▒▀████
▒███ ░ ▄░▄████████▄▒░░▒░░░▄████████▄ ▓░
▒█████░ ██░██ ░░▒▒▒▒██▒█▓███▒▒▒▒▒▒░▀██▒░▄
░███████░ ██ ▀ ▄▀▀▀▀▀▄ ▒███▒ ▄▀▀▀▀▀▄ ▀ █▄
█████████ ██ ▒█▒ ▄ ▒▓ █ █▀▒ ▄ █▄ ▒█
█████████ ▒██ █▓ ▀█▀ █░ ▓█ ▀█▀ █░ ██
░▒█▓█ ██ ░█ █▓ ░ ░█ █░ █▄
██ ░▓▒█▓░░▓██ ░▓██▒ ▓█▒ ▒█▒▒ █
░█▒ ▓█▓████░ █████▒ ░█████▓█░ ▄██
░██▄ ▒▒░░░ ▒██ ▒▒▒▓▒ ███
███▄ ▒ █▒█
██▄ ░█▓░█
░███▒░████▒░ ░▒ ░▓██▓▒█░███░
▓█████ ▒█░░▒████████████████▓▓██▓▒▒▒██ ▓█████
█████▓ ░░▒▓▒░░ ░▓████▓▒ ▓█████
█████▒░██▓██▓█▒ ░█░▓█▓▓█▒▒█████
████▓▒██▓███▒██ █▄ ▄█ ██░▓██▓██▓▓████
▒███░ ██▓██▒░░██ ███▄▄▄▄▄▄▄▄▄███ ██▒ ▓██▒██▒ ███▒
▒██ ████ ██ ███████████████ ██ ░ ██▒█░ ██▒
██░ ██░██ ██ ███▀▀█▓▓▓█▀▀███ ██░ ██░██ ░██
▒██ ██▒ ▒██░ █▀ █▒▒▒█ ▀█ ███ ░ ▓░█▒ ██▓
███ ▒█▒░ ▒▓██ █░░░█ ██▓▓ ▒ ██ ███
▓██▓ ▓▓ ██▓ █▒▒▒█ ░██ ░█ ▒███
███ ▒█ ▓██▒ █▓▓▓█ ░███ ██ ███
███ ░█▒ ███▓ ▄███████▄ ▒███░ █▓ ███
▒██ ██▒ ░▒███ ▀▀▀▀▀▀▀▀▀ ███▒▒ ░██░ ██▓
██ ▒███ ███▓ ▒███░ ████ ██░
█▒ ████ ░░ ██▒ ▒██ ░ ████ ▒█
▒███▓░▒▒▓█░░ ▒░ ░▒ ░ ██▒▒▒▓███▓
░▒▒▒▒▒▒▒░░ ░▓▓▓▓███▒ ░▓▒▒░ ░░░▒▒ ▒████████ ░░▒▒▓▓▓▓▓▒▒░
▒▒░▒░▒▒▓▓███▓▓▓▒░ ░███▓▒▒▓█▓░▒░░▒▓▒▓▒▒▒▒▒▓░▒██▓▒▓███▓ ░▒▓▓▓▓▓▓▓▓▒▒▒▒▒▒▒▓
▒█████████▓▓▒▒▒▒▒▓██▓ ▓██████▓▒ ░██▓▓██▓████▒ ░████████▓ ▓█▓▒▒▒▒▓▓▓██████████░
░███████▓▓▓█████▓▒░ ▒████████████ ▒█▓▓ ▒▒▒██ ████████████░ ▒▓█████▓▓▓████████
▓▓▓▓███████▓▒▒▓████▒███▓█▓██████░ ████▓█████░██▓██▓██████▒███▓▒▒▓██████▓▓▒▒░▒
░██▓▓▒▒░▒▒▒▓███▓▓▒▒▓░▓▒██▒██░██▓░ ██████▒█ ░▒██ ██░██░░░▒▒▒▓███▓▒▒▒▒▓▓█████
▓████████████▓▓▓▓█▓▓▒░ ░█ ▓█ ██ ██▒ ▓▓ ▓██ ██ █▒ █░░▒▓▓██▓▓▓█████████████▒
███████████████████████▓▓░░▓░ ▓██████ ░██████▓ ░▓░▒▓██████████████████▓████▒
░▓▒▓▓▓▒▒▒▒▒░░░░▒▒▓▓██████████▓██████▓█████████████████████▓▓▒▒░░░▒▒▒▒▒▓▓▓███▓▓░
███████████████████▓▓▓▓▓▓▓████████░▒█░ ░█▒████████▓▓▓▓██████████████████████
█████▒▓▓▓▒░██████████████████████▒░█ ▒█▓█████████████████████████████████
▄██████▄▄ █▓░▒▓▓███▓▒
▒██▒░░▒▒▓█████████▓░ ▓█░ ░▒▓
▒░ ░█ ▒██████████▓ ░ ▒██▓ █░ ██ ░▓ ▓▓
▒ ▓██▒ ▒▓▓██▓ ▒█▒ ▒███▒ ███ ░█▓ ░█████░ ░██▒ ░███▓
██████░ ░▓███ ▒█████░ ░▓███▓▓███▒ ░███████▒ ░████░▓█████
██▓ ▓███░ ▒███▓ ░ ███░ ▒█████████░ ░██ █████▒ ░███▒ ░████
▒███░ ░██▒ ▓██▒ ███░ ▒░ ▓███ ██▒ ████ ▒██▓ ░██▓
████▓ ██ ░ ████ ▒███░ ▓███ ▒███ ▒███ ████ ▓█▒
▓█████▒ ▓▒░████▒ ▓█████ ▒░ ████▒ ████▓ ░██ ████
▒██████████▓▓███▀ ▓█████░ █████▓ █████▀▒ ▀█████▓█▀ █████▒
▒▓███████████▀ ███▓ ▀██▀░ █████░ ▀█████ ██████▒
░▓████████▀ ▀ ▀▒ ███ ▀█▀ ▀██▀
RenderMan Techniques in Production (c) FxpHD
▄ ▄▀ ▄ ▄ ▀▄ ▄
▀█▄▄█▀ ▀▄▀ ▄▄▄▄▄ 2017-07-31 ▄▄▄▄▄ ▀▄▀ ▀█▄▄█▀
▀▓▄▀▀▄▄ ▄▓▀▓▀ ▀▀▄ ▄▀▀ ▀▓▀▓▄ ▄▄▀▀▄▓▀
▀▄▄ ░█░ ██▓▓█░▓░ ▄▓▄ ░█ ▄▄▄█▀▀▀▀▀▀▀█▄▄▄ █░ ▄▓▄ ░▓░█▓▓██ ░█░ ▄▄▀
░█▓▓▀▄▄▓▀█ ▀▀█▄▀ ▀ ▄█░ ▄█▀▀ ▀▀█▄ ░█▄ ▀ ▀▄█▀▀ █▀▓▄▄▀▓▓█░
▄ ▄█▓▓▀▀█▀ ▄ ▀ ▓▓██▄██▓░ .: I N F O :. ░▓██▄██▓▓ ▀ ▄ ▀█▀▀▓▓█▄ ▄
▓ ▄ ▀▀▀▒▓███▄ ▄███▓▒▀▀▀ ▄ ▓
Taught by Christos Obretenov, this course covers the use of the
software in production. Artists and Technical Directors will find this
course useful for expanding their shading knowledge in Renderman, as
well as learning some of the newer advanced ray tracing,
physically-based shading, and image-based lighting techniques being
used in production today. Coming out of the course the student will be
able to put into practice, in a production environment, the procedural
shading techniques we cover and understand their use more thoroughly,
as well as design a shading/lighting pipeline around the
physically-based shading and lighting paradigm.
Obretenov has worked in a variety of roles, designing and developing
shading software for Walt Disney's The Wild feature film, followed by
shading and lighting for Superman Returns, Spider-Man 3, Beowulf,
Christmas Carol, and Mars Needs Moms feature films.
The curriculum is broken up into three sections:
Part 1 - Procedural Shading
Why is procedural shading important and interesting? Dealing with
complex models and sets in production, its very useful to explore
shading solutions that can solve detailed procedural variation. We look
at all aspects of the pipeline from design, modeling, shader
development, and rendering to incorporate procedural shading variation.
In addition we explore procedural patterns for surface and displacement
shaders, creating complex organic shading solutions for things like
snow and ocean surfaces. We expose all the complex noise parameters and
clearly define each one.
Part 2 - Raytracing and Global Illumination
Finally we are seeing a large shift towards ray tracing in production.
With PRMan16Æs improved ray tracing features and speed, including the
radiosity cache, raytrace hider, and weighted sampling, we dive into
some of the newer production techniques.
Also important is making our scenes and shading efficient for ray
tracing, so we discuss different approaches to efficiency.
Also new in PRMan16 is the ôPhysically Plausible Shadingö paradigm,
including coshaders and multiple importance sampling. These are
advanced topics we explore in this section of the course.
Part 3 - Image Based Lighting
In CG film production, we rely on captured HDRI maps to drive realistic
lighting response from the environment.
In the course we test multiple unclipped HDRI Lightmaps using fully
raytraced importance-sampled shading. With proper unclipped HDRI maps
and importance sampled energy conserving shaders as our tools, we
demonstrate how we can properly configure materials that are consistent
and physically correct under different lighting conditions. Topics
covered include showing the requirement of high contrast lighting
environments to correctly setup materials, ie low contrast lighting
environments will not be sufficient for materials to be tuned across
all lighting scenarios. Also key is making sure our BRDFÆs are
normalized and energy conserving to be able to set material properties
(balancing of diffuse and specular) that hold across all lighting
environments.
In addition to importance sampling the HDRI dome light, in some cases
it is more accurate to ôcut outö the extreme bright spots in the HDRI
and place those on geometric ôarea lightsö. These textured area lights
are then placed in the correct position and size with respect to the CG
object and sampled during rendering, with the resulting cutout area
filled with a neutral color in the original HDRI. As is often the case
of the CG object not being in the exact space of the HDRI capture, this
cutting out and placing of the area light textures can be more
representative since the solid angle math is only accurate at the exact
spot of the HDRI capture. Also, the resulting importance sampling on a
given area light with super bright exposure can be more efficient than
sampling that same region on the entire dome. Most importantly, the
correct distance from object and size of highlight is preserved.
Educated at Simon Fraser University in Computing Science and Computer
Graphics, Christos started contributing to the Animation and Film
industry during "co-op" work terms at Mainframe Entertainment in
conjunction with Simon Fraser University. He continued his career by
designing and developing shading software for Walt Disney's The Wild
feature film, followed by shading and lighting for Superman Returns,
Spider-Man 3, Beowulf, Christmas Carol, and Mars Needs Moms feature
films. Recently co-founding LollipopShaders.com, Christos develops
procedural solutions to shading and lighting, currently experimenting
with Physically Plausible Shading and Image Based Lighting. He
currently resides in Vancouver, BC, Canada.
course syllabus
Class 1
Procedural Variation - Part 1 We jump right into our first topics:
procedural variation. We bring up two great examples of procedural
variation in action. a rust/metals shaders and a treeleaf shader that I
developed for the Disney feature film "Mars Needs Moms". We outline the
"id's" needed in the modelling pipeline that the shaders pickup in
order to drive our procedural variation: we launch Houdini and show how
these id's are put into our treeleaf example. We then look at the
Renderman RIB file that Houdini generated from our scene, and see the
id's attached to each object. We follow with a simple shader example
that picks up these id's and creates a noise value for each unique id
on each tree leaf.
Class 2
Procedural Variation - Part 2 We continue on with our procedural
variation topic, building on our "Tree Leaf" example. Previously we
built a very simple shader that picked up our "id" from the RIB file,
in this lesson we build a more comprehensive treeleaf shader that uses
this id to procedurally vary aspects of our shading. We can vary the
hue of the leaf color, specular roughness, opacity, and any other
attribute we chose. We look at the concept of the hue shift in
Photoshop, and build it into our shader, and we render from Houdini as
well as the RIB file.
Class 3
Image Based Lighting - Part 1 We start off this section with a
discussion of HDRI maps, and how important it is in a Physically Based
system to use raw, unclipped maps. We take an example of a map with an
unclipped sun captured, examine its values in Photoshp and Houdini's
Mplay, and show some renders with it as well as other unclipped HDR's.
We look at traditional workflows of clipping the HDR's to 8-bit and the
render results and their workaround solutions in production, as well as
the shaders involved with this workflow. This sets us up for next
lesson where we render the same scene but with PRMan's "Physically
Plausible" shaders and lights and see the resulting renders with the
same unclipped HDR's.
Class 4
Taking off from lesson 3 (Image Based Lighting, Part 1), we continue on
the topics of Image Based Lighting and Physically Based Shading. We
introduce the concept of Multiple Importance Sampling (MIS), where we
define importance sampling both the the material BRDF and the
physically-based light sources. Moving on, we look at the actual
implementation of our concepts in PRMan16+ (16, 17, à) with the new
"Physically Plausible Shading" paradigm introduced in PRman16; this
includes the new pipeline methods of lighting(), diffuselighting(), and
specularlighting(). We render some physically based glass with the
factory shipped glass.rib in PRMan, and look into our own physically
based scene with our van and our unclipped HDR light sources. In our
own scene we achieve our goal of rendering diffuse with no artifacts
from a raw unclipped HDR map. Inside our RIB file we go through the new
physically plausible shaders (plausibleMatte, plausibleDielectric,
plausibleConductor, and plausibleEnvlight).
Class 5
Continuing on from our last lesson, we use our Physically-Plausible
scene in multiple lighting environments to demonstrate how our ONE
material setup holds across ALL lighting environments. We then look at
how a clipped HDR, or incorrect lighting environment, always leads to
material settings that fail to hold across multiple different lighing
environments. Thus we argue that you can't "fully tune" a material
using the old traditional methods of clipped HDR's and
non-Physically-Plausible shading. To gain a deeper understanding of our
shading, we explore the details of our plausibleMatte,
plausibleDielectric, and other plausible shaders in our scene. We also
look at the Fresnel coefficient and how that mixes between our diffuse
and specular sampling inside our plauisbleDielectric shader. Finally,
we introduce the workflow of cutting out the unclipped sun in 32-bit
mode from our HDR texture, and placing it onto an arealight instead -
something we will continue in the next lesson.
Class 6
We continue with our Physically Plausible Shading, and Image Based
Lighting project. We move onto the topics of cutting out super bright
spots from our HDR and placing it onto an arealight, using the
plausibleSunlight shader, and placing it onto another
plausibleEnvlight. In our exploration we notice pros and cons of each
approach, and look at the shaders and RIB file implementation.
Class 7
We continue with our Physically Plausible Shading, and Image Based
Lighting project. We cover related Ray Tracing topics such as sampling
the hemisphere related to cone angle and solid angle. We do a "furnace
test" on our scene to confirm normalized BRDF's and energy conservation
in our materials and lights.
Class 8
We start on a new topic, procedurally generated noise patterns for
specific techniques in production. This technique can be used for many
organic patterns found in nature, we look at a complex ocean shader
first in this lesson. We start off with a render of our ocean scene,
compare renders with the different noise layers, and talk about the
concept of the noise functions, as well as sine and cosine patterns for
our base layer ocean. Then we spend some time in Houdini going over our
scene, the shader setup for both surface and displacement, and the
parameters in the shaders. Finally we look at the concept of modifying
our noise call to create a "Sharp Crested" noise layer by applying
absolute value calls, inverting and offsetting our noise function.
Class 9
We continue with our project in procedural noise patterns for our ocean
surface and displacement shader. We go step by step through some of the
displacement parameters we talked about in the last lesson, and render
with changes in each parameter, looking at both the coreocean
displacement and the sharp-crested displacement. We look at the source
code for a basic FBM layered fractal noise, as well as our modified one
we use in the ocean displacement. We also talk about some of the dicing
strategy options in PRMan and displacement bound attribute.
Class 10
In this final lesson of our procedural noise shading section, we
continue with our ocean scene. We introduce procedurally generated
"whitecaps" to our ocean that are generated based on the vectors of the
individual noise layers. We look at a final render animation with the
whitecaps, then overview the shader parameters in our Houdini scene,
and go into a lesson on the vector math that drives the shading. We
also look at our "noise time" parameter for animating our sharpcrests
displacement layer. In addition we look at how these very same
techniques can be used to simulate other patterns in nature such as
snow, and we look at a snow shader with its corresponding renders, as
well as the parameters in a Houdini scene.
▄ ▄▀ ▄ ▄ ▀▄ ▄
▀█▄▄█▀ ▀▄▀ ▄▄▄▄▄ ▄▄▄▄▄ ▀▄▀ ▀█▄▄█▀
▀▓▄▀▀▄▄ ▄▓▀▓▀ ▀▀▄ ▄▀▀ ▀▓▀▓▄ ▄▄▀▀▄▓▀
▀▄▄ ░█░ ██▓▓█░▓░ ▄▓▄ ░█ ▄▄▄█▀▀▀▀▀▀▀█▄▄▄ █░ ▄▓▄ ░▓░█▓▓██ ░█░ ▄▄▀
░█▓▓▀▄▄▓▀█ ▀▀█▄▀ ▀ ▄█░ ▄█▀▀ ▀▀█▄ ░█▄ ▀ ▀▄█▀▀ █▀▓▄▄▀▓▓█░
▄ ▄█▓▓▀▀█▀ ▄ ▀ ▓▓██▄██▓░ .: M E T A :. ░▓██▄██▓▓ ▀ ▄ ▀█▀▀▓▓█▄ ▄
▓ ▄ ▀▀▀▒▓███▄ ▄███▓▒▀▀▀ ▄ ▓
Type .... : Instructional Video
Genre ... : Bookware
Disks ... : 67
URL ..... : https://www.fxphd.com
▄▀ ▄ ▄ ▀▄ ▒▓▓█▀▒
▀▓█▄▄▓▒ ▀▄▀ ▄▄▄▄▄ ▄▄▄▄▄ ▀▄▀ ▒▓▄▄█▓▀
▀▓▄▀▀▄▄ ▄▓▀▓▀ ▀▀▄ ░ ░ ▄▀▀ ▀▓▀▓▄ ▄▄▀▀▄▓▀
▀▄▄ ░█░ ██▓▓█░▓░ ▄▓▄ ░█ ░▒ ▄▄▄█▀▀▀▀▀▀▀█▄▄▄ ▒░ █░ ▄▓▄ ░▓░█▓▓██ ░█░ ▄▄▀
░█▓▓▀▄▄▓▀█ ▀▀█▄▀ ▀ ▄█░ ▒▓▄█▀▀ ▀▀█▄▓▒ ░█▄ ▀ ▀▄█▀▀ █▀▓▄▄▀▓▓█░
▄▄▄█▓▓▀▀█▀ ▄ ▀ ▓▓██▄██▓.: I N S T A L L :.▓██▄██▓▓ ▀ ▄ ▀█▀▀▓▓█▄▄▄
█▓▒ ▓ ▄ ▀▀▀▒▓███▄ ▄███▓▒▀▀▀ ▄ ▓ ▒▓█
▒█▓▒█ █▒▓█▒
█▓▒ ▓ A) Unpack this release using your favorite RAR unpacker. ▓ ▒▓█
▒█▓▒█ B) Load up the tutorial, and expand your knowledge. █▒▓█▒
█▓▒ ▓ C) Sit back, and enjoy! ▓ ▒▓█
▒█▓▓█ ▄▀▄ ▄▀▄ █▒▓█▒
█▓▓ ▓▄ ▀ ▀ ▄▓ ▓██
▒▀█▓▓▒ ▄▀ ▄ ▄ ▀▄ ▒▓▓█▀▒
▀▓█▄▄▓▒ ▀▄▀ ▄▄▄▄▄ ▄▄▄▄▄ ▀▄▀ ▒▓▄▄█▓▀
▀▓▄▀▀▄▄ ▄▓▀▓▀ ▀▀▄ ░ ░ ▄▀▀ ▀▓▀▓▄ ▄▄▀▀▄▓▀
▀▄▄ ░█░ ██▓▓█░▓░ ▄▓▄ ░█ ░▒ ▄▄▄█▀▀▀▀▀▀▀█▄▄▄ ▒░ █░ ▄▓▄ ░▓░█▓▓██ ░█░ ▄▄▀
░█▓▓▀▄▄▓▀█ ▀▀█▄▀ ▀ ▄█░ ▒▓▄█▀▀ ▀▀█▄▓▒ ░█▄ ▀ ▀▄█▀▀ █▀▓▄▄▀▓▓█░
▄▄▄█▓▓▀▀█▀ ▄ ▀ ▓▓██▄██▓░ .: J O I N :. ░▓██▄██▓▓ ▀ ▄ ▀█▀▀▓▓█▄▄▄
█▓▒ ▓ ▄ ▀▀▀▒▓███▄ ▄███▓▒▀▀▀ ▄ ▓ ▒▓█
▒▀█▓▓▒ ▄▀ ▄ ▄ ▀▄ ▒▓▓█▀▒
▄█▄ FIND US, HELP US, JOIN US! ▄█▄
▀▓▓███▓█▄ ▄ ▄ ▄█▓███▓▓▀
▀██▀▀▓██▄▄▄▄█▀ ▄▄▄▄▄▄ ▄▄▄▄▄▄ ▀▓▄▄▄▄██▓▀▀██▀
I█ ▓█▀▀▀▀ ▄▓▓▀ ▀▀▀▓▄ ▀ ▄▓▀▀▀ ▀▓▓▄ ▀▀▀▀█▓ █▌
▀ ░ I▓▓▌ ▀▀▄▄ ▄▓▄ ▄▄▀▀ I▓▓▌ ░ ▀
▀▓▓▄ ▀▀▀▀ ▀▀▀▀ ▄▓▓▀
▀▀▀ QUALITY BOOKWARE! ▀▀▀