Professional Documents
Culture Documents
3D ATTACK May2006
3D ATTACK May2006
April 2006
Page 23-27 Projector and Proximal Usage Tutorial by Bram van Gerwen
Hi Attackers! GOODIES
Boy. have we been busy this past month! So All of your goodies for this and previous
much to do and so little time. Considering it's issues of 3D Attack - The CINEMA
Spring, I suppose I shouldn't be surprised by this. 4D Magazine can be found
As we all know, Spring brings newness of life, so here: www.3dattack.net/goodies/
it's only right that it would bring new things to 3D
Attack. ADVERTISING WITH 3D ATTACK
Last month we announced that we have been If you would like to advertise with 3D Attack send
appointed re-sellers for all Vital Disclosure training us an e-mail requesting our media kit and rate
products. Well, now we can add UNITY and card. 3dattack@3dattack.net
Dosch Design to the list. That's right, now 3D At-
tack are carrying the UNITY game engine and REVIEWS
Dosch Design products in the 3D Attack Shop.
If you would like 3D Attack to evaluate and review
Feel free to visit: your product, or if you are a member of the press
http://www.3dattack.net/shop/index.php and would like to evaluate and review the 3D At-
to check out the great stuff available through 3D tack line of plug-ins for CINEMA 4D, feel free to
Attack. contact Thomas Pasieka at:
3dattack@3dattack.net
Also, be sure to register for the 3D Attack New
Letter. By filling out a simple for we can keep you Contact Information
updated on what's happening with 3D Attack. You 3D Attack
can find this form in the upper right corner of the 158 S. Saginaw St.
3D Attack Shop page Chesaning, Michigan 48616 - USA
http://www.3dattack.net/shop/index.php. E-mail: 3dattack@3dattack.net
3
Editor Notes!
Please Read
http://www.3dattack.net/forum/showthread.php?t=5179
35.00
26.25
17.50
8.75
Professional 0
Freelancer
Hobbyist
4
Interview with Carlos Agell Sogbe
By Tavy Ann Pasieka
6
Interview with Carlos Agell Sogbe
By Tavy Ann Pasieka
7
Interview with Carlos Agell Sogbe
By Tavy Ann Pasieka
8
Interview with Carlos Agell Sogbe
By Tavy Ann Pasieka
ject in CINEMA is its material creation interface. Tavy: You are living in South America, Venezuela
It’s simple, well organized and powerful. The idea to be exact. Is CINEMA 4D a prominent 3D Ap-
that you can produce almost any material with plication in the lower half of the Americas? Do
procedural mathematical calculations with no you see it growing in professional use in your part
need of bitmaps it’s amazing. of the world?
Tavy: What are your thoughts on the new Mo- Carlos: Although Venezuelan people are known
Graph Module? Is this something that you will be for being very technologically oriented, in the CG
adding to your arsenal of weapons? Field we are quite old fashioned. Most people
uses 3DSMax since it’s the standard for CG Crea-
Carlos: Although I would like to expand my skills tion as AutoCad is for cadd drawing. But in the
on animation in the near future, my work is most last years CINEMA 4D has grown strongly among
related to static images (architecture, stage de- the new generation of artists, particularly in the
sign, and illustration), so MoGraph is not one of architecture field.
my immediate priorities at the moment. However, I
love Jenna and the power it gives, and after I’ve I have close contact with the Cadd Lab of Archi-
been seen lots of tests of MoGraph and see that it tecture Faculty at the Universidad Central de
has like ten times the possibilities and control of Venezuela (the oldest and most important Archi-
Jenna, it is certainly a tool that I will try in the not tecture School in our country) and CINEMA has
so distant future. became more and more the software of choice of
the students that start to produce CG images for
its projects. Probably for the easy learning curve
and its professional looking render.
9
Interview with Carlos Agell Sogbe
By Tavy Ann Pasieka
Windows, Doors, roof structures, roof tiles, etc. staff. The ability to generate convincing images in
Also, a visual snap interface similar to Cadd a short time with materials and lighting has im-
packages as VectorWorks would be great. Much proved the workflow a lot.
of these functions are possible through third party
plug-ins, but I would like to see a single complete I am also working on a project to develop a set of
solution by MAXON well integrated into the CIN- procedural shaders based on all the knowledge
EMA 4D interface. I’ve acquired in all these years oriented towards
architecture, interior and industrial design users. I
Tavy: Are you currently working on any projects am planning to finish it for the third quarter of this
you tell us a bit about? year.
Carlos: I’m now working on a stage design for a Tavy: Thanks so much for taking some time for
new television show for Sony Entertainment Tele- 3D Attack and our readers. It’s always entertain-
vision, where CINEMA 4D has played a decisive ing and informative to get to know the Artists
role in the way I show my work to the production working in the CINEMA 4D Community. We are
10
Interview with Carlos Agell Sogbe
By Tavy Ann Pasieka
Cheers,
Carlos
Or in my CGTalk portfolio:
http://curaremac.cgsociety.org/gallery
11
Penguin With Rubber Glove Hat Tutorial
By Mark Gmehling
Hi there Attackers. In this tutorial I'd like to show manager. This way I'm able to get an even egg
you some beginners modeling and texturing stuff. shape very fast- I right click on the sphere-mesh
Next to that we'll have a look at some more ad- and choose "current state to object" from the pop-
vanced Mocca soft IK features in the second part up menu. A copy of the sphere is created and I
of this tutorial in the next magazine. can get rid of the origin sphere with the lattice de-
former by selecting it and pressing backspace or
Last month Thomas Pasieka asked me to do a delete. PIC_01
penguin-modeling tutorial. While surfing the web,
to have a look at reference images, I remembered Now I switch to top view (F2) and adjust the top
the penguin from Wallace & Gromits "The Wrong row of points to a more circular flow because I
Trouser"- A simple but very charming character.
I'm assuming you know the last work of Aardman
Animation Studios- the Oscar winning "Curse of
the Were-Rabbit" If you don't know the older Wal-
lace & Gromit shorts, I recommend you watch
them- you'll surely like it. A scene I liked very 01
much in their "The Wrong Trouser" movie was
when the penguin was disguised as a chicken by
dropping a rubber glove on his head. In this issue
I'll show the modeling and texturing part and a
little scene setup and in the next issue we will
have a look on a simple rigging setup using
mocca soft IK to make the rubber glove fingers
jiggle around when the penguin moves his head. want to extrude the penguin's neck out of these
So here is a short brief of what I will be covering: polys. For this I use the "glide tool"(M~O) instead
of just moving (E) it, because it moves the points
I. Modeling: (Block-) Modeling a penguin dis- following the meshes surface and this way I don't
guised as a chicken out of primitives. destroy the even mesh topology. If you don't own
II. Texturing: Setting up some shaders. Rel.9 you won't find the glide tool in your structure
III. Lighting: Setting up a simple environment- menu. Just move (E) the points in place. It's not
scene. that important in this case.
The penguin’s body is built out of a hexahedron To model the bill I change to front-view (F4)- live
sphere set to 12 segments. I make it editable(C) select the two polys shown in PIC_03 and extrude
and drop a FFD Lattice deformer in it to adjust the (D) these- by using the scale-tool (T). I shrink
shape to my liking by tweaking the lattice points them to define the bills tip and set the z-size of
with the rectangle selection tool (make sure you the two extruded polys to 0 in the coordinates
disabled "select visible only in its attributes). No- manager's size field. To sharpen the edge from
tice that you have to switch to point mode and the head to bill I use the knife tool (K) in loop mode
lattice deformer needs to be selected in the object and insert a loop at the bills origin (Notice that you
13
Penguin With Rubber Glove Hat Tutorial
By Mark Gmehling
02 04
have to be in point mode to do this without having and extrude (D) them to define the length of the
the area selected where you want to do a cut!). In first rubber finger (I need to scale (T) the tip
side-view (F3) I move (E) the bills-origin-points to smaller). To tweak the main shape I mainly work
my liking. To check the rounded geometry I alt- in side view (F3)- using the rectangle selection
click a hypernurbs object (Alt-clicking makes the and the knife-tool (K) to subdivide the four ex-
actually selected object child of the object you alt- truded shapes. To fine-tune the finger I use the
click). PIC_03 move tool (E) to tweak the points. I use the same
procedure to create the other three fingers- Check
PIC_05 to see what I've done. (You may notice
03
05
14
Penguin With Rubber Glove Hat Tutorial
By Mark Gmehling
09
07
II.Texturing:
The last part that needs to be modeled are the Before I setup the materials and the poly selec-
wings or let's say arms. It's quite the same proc- tions I need to assign different materials to one
ess I did with the feet. I select the polys shown in mesh so I make the symmetry object editable.
PIC_06 and extrude them inner (I) to define the Now I setup some materials for the penguin. Be-
arm origin. Then I extrude them (D) to define the cause the penguin mainly is one mesh, except of
arm length and finally I use the knife tool in loop the eyes, I set up polygon-selections for the bill,
mode to subdivide the shape in order to have feet, torso-area and rubber-glove-head to assign
some points I can tweak to get an arm shape that different shaders later:
I like. PIC_08
15
Penguin With Rubber Glove Hat Tutorial
By Mark Gmehling
10
13
16
Penguin With Rubber Glove Hat Tutorial
By Mark Gmehling
testlow jpg you'll find in this tuts tex folder (good- new material too- call it "SNOW" and use 100%
ies) set to 20% mixed strength - finally the specu- white in the color channel, place the ambient oc-
lar channel with width:50%, height:72%, clusion shader in the diffusion channel, set the
falloff:-22% and inner width:28%. reflection channel to 50%, add a naki-noise with
1000% global size in the bump channel and finally
To the eyes I assign the black penguin material. I add a 2D circular gradient in the alpha channel to
ctrl-drag a copy of it and disable the bump chan- get a nice transition between floor and back-
nel. This material acts as "closed eye"-state. For ground object. Just check the
the open eyes I create another copy - name it PENGUIN_PART_1.c4d file found in the goodies
openeyes and use the environment channel and folder for this tutorial if my explanation about the
the specular channel. In the second part of this materials were too short here.
tutorial, in the next issue, I'll use these two eye
materials to animate blinking eyes. For the lighting I create a 24 segments icosahe-
dron sphere- make it child of a Lumen object
(found in the plugins under 3d Attack- if you don't
III.Lighting: have it just download Lumen Lite here:
http://www.3dattack.net/shop/index.php?plugin=2
For setting up a scene I create a disc object act- from the 3D Attack shop site) and create a omni
ing as floor to catch some shadows and a back- light set too 2% intensity. The omni needs to be
ground object with a gradient material assigned to child of the Lumen object too and voila! The
act as a sky. The lighting setup consists of a light scene is lightened well when you render. For
dome -faking radiosity and a target light only re- shadows I place the target spotlight I created be-
sponsible for shadows. fore to my liking and enable shadow catcher in
the details tab of this light's attributes. I hope my
To build the light dome I use the Lumen plug-in explanations were understandable for beginners
here, but for the simple effect needed in this case and you had fun following the tut. Check the
the free Lumen Lite plug-in penguin_blink.avi in the goodies folder to see
http://www.3dattack.net/shop/index.php?plugin=2, what I want to show in the next issue. If you have
or the free Place on Points plug will do a perfect questions, don't hesitate to ask via the 3D Attack
job too. Take a look at PIC_15 to check the scene forum or private message.
setup:
CU on board and Keep Attacking - Mark
15
17
Cloth Explosion
By Chris Schmidt aka Kico
19
Cloth Explosion
By Chris Schmidt aka Kico
Excellent! I now have my Here we go... what really drives the explosion.
Platonic all ready to blow up. Under the 'Object' menu in the particle drop down,
But I still need a floor for it to I create an 'Attractor'. In the Attribute Manager
collide with, and maybe an- under the 'Object' tab I change the 'Strength' to
other object in the scene to -6000 to really give it a bit of oomphf. Under the
show a little extra collision 'Shape' tab, I change 'Shape' from 'Cube' to
detection. I move my Platonic 'Sphere'. Next I take the Attractor and Move it up
a bit higher, maybe around 150 on the Y-axis, to the same place the Platonic
150 on the Y Axis. is. Select the Cloth tag, and under the 'Expert'
Tag, drag and drop the Attractor into the 'Include'
Then I create a 'Plane' object. Only parameters I parameter.
change on the Plane is the 'Width' and 'Height'
both from 400 to 4000 so there is enough room to This is really the meat of this tutorial. Everything
catch the bits. Then I create a 'Cube' and move it else is really just playing with same engine and
up 100 on the Y Axis and -250 on the Z Axis so it's making it a bit fancier. I can at this point hit play,
above the Plane and not intersecting with the Pla- and see the Platonic fly apart. Parts will strike the
tonic. Cube and all the bits will fall to the Plane thanks
20
Cloth Explosion
By Chris Schmidt aka Kico
to the built in gravity in the Cloth Tag. (Pic004) After having made similar explosions a few times,
Now let's blow the bits with some wind. First thing, I find it's very quick to set up. There is a lot of
we need more time to work with on the timeline, room for variation and new ideas, so the key is to
so I hit Ctrl-D to open up 'Project Settings' and play around with it.
increase the 'Maximum' to 300. There are two
ways I could make wind. A useful trick is to use 'Calculate Cache' so your
explosion will play back close to real time.
One would be to make a 'Wind' object from the
Emitter drop down menu in a very similar fashion Hope you all find this tutorial helpful and fun, it's
to the attractor I used. The way I will do it now will been both for me!
be to use the built-in wind of the Cloth Tag. The
setting for the wind will be set under the 'Forces' Chris Schmidt (Kico)
tab.
21
Projector & Proximal Usage
By Bram van Gerwen
This tutorial will show you how to use the Projec- except for the added position controls to compen-
tor and Proximal effect in a simple scene. The sate for the lacking visual.
goal is to learn how these effects can be used in
an actual scene. So we'll take it a bit further than That means that a problem with the Projector ef-
the manual explanation. fect is that you can't see a visual representation of
the projection like you would with any other tex-
ture. To keep track of your projections you need to
Using the Projector Effect make some notes of the dimensions of our object.
This way we won't need to see a preview as you
The Projector effect purpose is to be able to use can just enter these numbers into the projection
different forms of texture projection within one dimensions.
material. Let's see how we can put that to use in a
scene. Open the 'VaseStart.c4d' file to begin. You can get the number of your object by select-
ing the parent object, in this case the Hy-
I've created a vase on which we are going to put perNURBS object of the vase and setting the
different textures with the Projector effect. Click Scale/Size field in the coordinates manager to
the Vase material and load a Projector into the 'Size +'. This is just general advice when using
texture field. Click on the projector name or the the Projector, at the moment we won't be applying
preview to enter its properties. Again we see an a projection that needs any of these numbers.
empty texture field, load a Tiles shader into the
projector here. Set the Projection of this projector To determine where the middle point of our pro-
to Spherical. You'll notice that all these properties jections are we'll use a simple plane. Create a
are exactly the same as in a normal texture tag Plane object and rename it to something like
23
Projector & Proximal Usage
By Bram van Gerwen
'Height Gauge'. Now when we need to know Projector into the texture field, name it 'Reflection
where the centre point of a projection needs to be Projector'. We're going to use another Tiles
simply move the plane to the desired height and shader to get our reflective properties. Now is
copy its Y value to the projection properties. when the projector begins to show its use.
Back to the Tiles shader, go into its properties and We could have done the previous circles by just
set the Pattern to 'Circles 1', we want the round creating a tiles material and dropping that on our
lower part of the vase to display circles. Set the vase and giving the texture tag spherical projec-
colors 1,2 and 3 to some nice variation of orange tion. But then any reflection pattern we put in the
and yellow and enable 'Randomize Color'. reflection channel would also be wrapped around
this sphere projection, which is not what we want.
We set the projector for this tiles shader to Name the projector in the reflection channel 'Re-
Spherical earlier, which would be logical as the flection Projector'. We want our tiles pattern to be
underside is a near sphere. Now we need to know equally distributed along the length of the vase,
the middle point of that so set the Projection to
near sphere to let our Cylindrical. Now enter
spherical projection fall the tiles shader you just
as much into place as loaded and set its Pat-
possible, move the tern to 'Waves 2', set its
gauge plane to ap- 1,2 and 3 colors to
proximately the middle white and light greys
of the round part. The and enable 'Randomize
middle is somewhere Color'. Of course in the
around -88 in my case, reflection channel black
it doesn't have to be means non-reflective
precise. and white means fully-
reflective.
If you make a quick
render now you'll no- So now we'll get vari-
tice the circles con- able reflective waves
verging at the neck. separated by non-
Which means that the reflective lines, to make
our spherical projection the lines a bit thicker
is nicely set at the 0 change the Bevel Width
location. We just de- to 48 percent. When we
termined the middle of make a quick render
the round part is -88, so we need to set the Y po- now we can see the effect mapping correctly
sition of the projector to -88. So get back to the along the vase with cylindrical projection, but it
projector properties end set the second Position looks a bit vague and scaled-up.
field to -88, this field represents the Y-axis. If you
render now you'll notice the circles falling correctly To make our reflection waves a bit smaller and
around the round part, but they are still a bit too crisp change the middle Size field in the reflection
stretched. We can fix this easily by setting the projector settings to 50 percent. This will squash
Tiles X to 3 and the Tiles Y to 2. The circles look the texture creating more lines.
much better now. Lastly go into the Basic tab of
the projector and name it 'Circles Projector'. Let's finish off the Projector chapter by giving it a
nice bump map, applied withy Cubic projection.
Now let's create some nice reflective properties. You guessed it right, load a Projector into the
Enable the Reflection channel in the basic proper- Bump channel but this time put a Noise shader
ties of the material. In the Reflection tab load a into the projector, name the projector 'Bump Pro-
24
Projector & Proximal Usage
By Bram van Gerwen
jector'. Try to make a habit of giving shaders and Plane' material, go to the Color channel and load
textures specific names, it will make you life a lot a Layer shader into the Texture field. We need a
easier in complex scenes or when animating the layer shader to put a color under the proximal ef-
shaders. fect first, else we'll only see black.
Set the noise type to Cell Noise and set its Global So add a Color shader as the first layer, make the
Scale to 200 percent. That's enough for the noise, color green. Then add a Proximal effect above the
now go back to the bump Projector settings and color shader.
set its Projection to Cubic if you haven't already
done so. Now lastly in the Bump tab set its Set the blend mode of the Proximal effect to Dif-
strength to 100 percent to make it well visible. ference, that way when the object interacts with
the plane the green will be inverted and match the
When you render now you can see our square purple on the cube. Now click on the small pre-
bumps being neatly distributed over the entire view picture of the proximal layer to enter its
mode, disregarding the other projections. Of properties.
course this vase is just a quick example of the
projector usage, its up to you to make something You can see that the objects field is still empty
good using this technique. For reference check and so the color proximal effect will react to noth-
out the 'VaseFinished.c4d' file. ing. Drag the Color Cube object from the objects
manager into this field and enable the Use Edges
option.
Using the Proximal Effect.
The proximal effect will now use the objects
The proximal effect is of importance when we edges to calculate the distance from the proximal
want to influence a color or transparency depend- to the object. Then set the Blend Mode to Lighten,
ent on the distance from another object. For in- this will make sure that the fade from green to
stance we can have a material change color right purple will be soft instead of hard.
at the place where an object passes through it
while maintaining the original color on the rest of Make a render around frame 120 and you can
the texture. Or you can use a spline on a texture see the proximal effect change the color. It might
to give it a transparent band exactly where the seem vague at to how this fade is achieved by the
spline is. Or use the spline to limit a bump map on proximal effect. It does this by using the blotch
the texture. you see in the proximal preview. This vague circle
is placed multiple times along the edges/surfaces
I sometimes see questions on forums on how to of the interacting object and according to how it is
apply the proximal effect so I decided to show you set up will calculate the blending effect.
two easy ways to use it, one with objects and one
with a spline. For instance if you change the End Distance the
circle will become smaller, thus making the blend
Let's start with applying it using an object. Open effect seem very thin, or if you lower the Intensity
the 'ProximalStart.c4d' file to begin. I've created a the effect will become less obvious and will be
simple scene with a plane and three cubes mov- completely gone at 0 percent.
ing through the plane. We're going to add a
Proximal effect to the material on the plane so it Now that we know how to make the proximal ef-
reacts in different ways to the objects passing fect react to objects we can easily apply it to other
through it. channels within this material. Go to the Transpar-
ency channel of the Proximal Plane material and
The first thing we want to happen is that when the load a Proximal effect into the Texture field there.
Color object passes through the plane the mate- We won't need a layer shader here as we want to
rial should change color with it. Click the 'Proximal effect the transparency directly.
25
Projector & Proximal Usage
By Bram van Gerwen
Click on the proximal preview to enter its proper- applied almost the same as a normal object with a
ties. Drag the Transparency Cube object from the small difference to take into account. To show you
objects manager to the Objects field, enable Use the spline method we're going to remove some of
Edges, set the Blend mode to Lighten to get a the bump map on this plane with the provided
smooth fade and set the Intensity to 70 percent. spline. You can draw your own spline if you want
The intensity is set to 70 percent to make the ma- but its not necessary.
terial not completely transparent when the object
passes through it. Click on the 'ProxBump' material, go to the Bump
channel. I already put up a Layer shader with a
If you want to check out what it looks like ani- Noise layer in there. Just like with the color we did
mated and don't want to bother waiting 2 hours for earlier we now need a layer of bump to make the
the animation to render just check out the proximal react to. Now add a Proximal effect
'ProximalObjects.mov' movie I pre-rendered for above the noise layer, set its blend mode to add.
you.
The enter its proper-
Now that we under- ties, drag the Bump
stand how this effect Limit spline into the
works nothing stops objects field, enable
us from applying it to 'Use Vertices', set its
the reflection channel. blend mode to
Go to the reflection Screen. Also de-
channel and load a crease the End Dis-
Proximal shader into tance to 50 percent
the Texture field. In and the Intensity to 50
the proximal proper- percent to get a sub-
ties drag the Reflec- tle fade. The plane
tion Cube to the Ob- will look like Picture 2
jets field. Enable Use when rendered now.
Edges, Set the Blend
Mode to Lighten and If you render now you
leave the rest at de- can see the effect but
fault. If you are curi- there is something
ous you can experi- wrong. As I explained
ment with the Blend earlier the splotch in
modes and how they the proximal preview
affect the render but is used to calculate
usually Lighten is the the fading and placed
best way to go. along the object in
question. But with the spline we run into the prob-
As you can see in the animation the proximal lem of it only putting a splotch on every point on
blends the reflection nicely showing the clouds the spline.
sky object I put in the scene. See picture 1 for a
still of the three effects. Of course this is just one That includes intermediate points. At the moment
material, try creating a scene with multiple objects the Intermediate points of the spline are set to
reacting to each other. Its very good for special Adaptive, which generally puts a lot of extra
effects, points on the corners and not much on the
straight parts. Simply set the Intermediate points
Now I will show you how to use the proximal ef- of the spline (in its properties) to Uniform to
fect with splines. Open the evenly distribute the intermediate points along the
'ProximalSplineStart.c4d' to begin. The effect is spline.
26
Projector & Proximal Usage
By Bram van Gerwen
27
Interview with Will Frazier aka GruvDone
By Tavy Ann Pasieka
28
Interview with Will Frazier aka GruvDone
By Tavy Ann Pasieka
tradeshow N.A.M.M. (the National Association of was letting me stay with him while I figured out my
Music Merchants), when I get to put together a next step. He had a G3 iMac with a copy of Bryce
long animated sequence that plays as the intro to installed on it, and it was there I got my first taste
performances and demos in our big New Product of 3D. I basically made weird abstract stuff…
Theatre. This year, I made a 90-second movie- stills that would take days to render. It was cool,
trailer style animation. And with the Media Team but I was quickly reaching my limits with it. It was
newly in place, we were able to Score, Master then that this same friend bought a G4 iMac off of
and Composite all in house. The end result was eBay, and when it came, a license for CINEMA 4D
pretty good, and was met with a very positive re- XL 7 came with it.
sponse by all who saw it. Our future endeavors
will no doubt only get better. I started doing any tutorial I could find, and quickly
fell in love with the power and speed of CINEMA.
Tavy: When did you first discover your knack for Toward the end of that year (2002) I made my first
3D? What was the deciding factor that led you to little animation. It was a short little piece de-
choose CINEMA 4D as your preferred 3D applica- signed around Roland’s Tag Line at the time “The
tion? Shape of Music”.
Will: About a year before getting hired at Roland, I did not work for Roland at this point, but made
I was in a rather dark place in my life. The com- this animation at the behest of my friend. Roland
pany that had brought me out here had vanished actually liked it and bought from me. The money I
in the wake of diminished retail strength following got was enough to buy my first Mac, and my own
9/11. Additionally, I was recovering from an acci- copy of C4D R8. The animation got me noticed
dent in which I was struck by a car while riding my and no doubt aided in my eventual hiring a few
bicycle. The resulting injuries left me unable to months later.
walk for the better part of a year. A friend of mine
who has worked for Roland for about 15 years, Tavy: Do you have any formal education or train-
whom I met while working in retail and befriended, ing in the arts?
29
Interview with Will Frazier aka GruvDone
By Tavy Ann Pasieka
Will: Regrettably no. I feel that many areas I Tavy: Other than CINEMA 4D and various other
have struggled with would have been much easier 3D applications, what other software applications
if I hadn’t had to be entirely self-taught. In some should one become skilled in to enhance their
ways it has been nice to be able to discover possible career in this industry?
things without the hindrances of the ‘rules’ that
some people tend to get buried under when pur- Will: I have used Cinema almost exclusively.
suing a formal education, but I would like to have However, as I mentioned above, in the past year I
obtained some traditional art skills and design have really been making a push to be more self-
basics. I think doing so would have given me contained, and have taken up Final Cut Pro, Mo-
fewer growing pains in my first couple of years. tion and After Effects.
Tavy: Often, on various CG Internet forums, I Really, it comes down to what area of 3D you
read posts where members ask, “How do I get my want to work in. It is always good to be at least
foot in the door in the CG Industry?” What would familiar with the tools other people in the pipeline
be your advice to these aspiring artists? are using, so you know how to best cater to that
software(s) strengths. So, if you were working
Will: Well, my situation in this regard is rather with a web designer, it would be good to learn
unique. If I could take anything away from it to some basic Flash, for example.
30
Interview with Will Frazier aka GruvDone
By Tavy Ann Pasieka
Typically being in a pipeline enables one to grow Lao Tzu’s Tao Te Ching, “The traveler with one
as strong as possible in one particular area, while eye fixed on his destination, only has one eye left
freelance work definitely requires a much broader with which to find his way”. In other words, just
set of skills. Just figure out what direction you pay attention to where you are, do what you have
want to go, and learn at least basic proficiency in to do, and the rest will fall into place.
the main tools required for that area.
Tavy: We are all inspired by the work of others
Tavy: As a professional I’m sure you work with and the world around us. Who are some of your
deadlines all the time and, from personal experi- favorite CG Artists and what is your main source
ence, I know the client quite often gives you very of inspiration?
little time to accomplish what they need done. Do
you work well under pressure? Will: Wow, that’s actually a tougher question to
answer than I first thought…. I see so much qual-
Will: Pressure is never comfortable, but you have ity work, and often, sadly, I have no way of know-
to learn to deal with it in this business. The key to ing who’s it is. I mean, in films, you get a long list
meeting deadlines really lays in organization, time of animators on the team, but I have no way of
management, and communication. If you have knowing which one of those people did that thing
these attributes, deadlines are a lot less stressful. that just truly blew my mind. I see amazing stuff
in television commercials all the time, but alas, no
But, when the pressure from above comes, the credits roll for the commercials. And I am reluc-
trick is to turn that stress into focus. Take all that tant to point out some of my favorites from around
anxious energy and channel it into your productiv- the forums, as I don’t want to exclude anyone.
ity. Don’t even think about the deadline. Doing so
makes it that much harder to meet. One of my My favorite works are those that have a rather
favorite expressions applicable to this comes from dark edge to them, that push the boundaries of
31
Interview with Will Frazier aka GruvDone
By Tavy Ann Pasieka
32
Interview with Will Frazier aka GruvDone
By Tavy Ann Pasieka
Tavy: What enhancements would you like to Tavy: When you’re not busy working, what do
MAXON implement in future releases of CINEMA you do for relaxation and enjoyment?
4D?
Will: Work really does eat up much of my time,
Will: I would love to see an overhaul to the Dy- but since I am blessed with a job doing something
namics module. In the past year or so Maxon has I enjoy, it really isn’t too bad.
given us Clothilde and Hair, 2 Solutions that rely
heavily on things like collision detection, gravity, When I can get away I really enjoy spending time
and wind. The implementation of these things is with my Wife, and/or friends; but when alone, my
really intuitive and easy. The Dynamics Module, attention turns to music.
on the other hand is bulky and difficult. It has
changed little since it was first introduced, and is Actually, for me, the biggest catharsis comes from
certainly due for a revision. singing. When I am driving alone, I am always
listening to a CD, and just belting it out (yes, I am
I hope that the power of Cloth and Hair portend to one of those people).
the future physics simulation capabilities of CIN-
EMA. Some of the minor things I wanted to see I don’t pick up the guitar as much as I used to, but
actually came to fruition with the announcement when I do, I find it an effective escape as well.
of the 9.6 upgrade; the animated texture support Pushing all that energy through me in the per-
in the editor, and the start and end growth pa- formance of a song just cleanses me emotionally.
rameters of Sweeps being among them. There is
one other small enhancement I would like though, Tavy: Thanks again Will. This was a real pleas-
and that is the ability to name your object buffers, ure for 3D Attack and our readers. I’ll give you
thus making post work of scenes with numerous the last word.
buffers easier to manage.
33
Interview with Will Frazier aka GruvDone
By Tavy Ann Pasieka
B o oth 2 6 4 0
34
Editor Speeder Upper
By Rui Batista
Everyone loves speed. In this sped up world, it No, not the black liquid one, in cups. Actually, it
seems, fast is never fast enough. And we, the may have been a job for that type of coffee if I
ones that deal with computers on a daily basis, hadn't come up with a solution with the other type
know how true that is. But we are never satisfied. of C.O.F.F.E.E. ;)
Oh, no siree! If we get a computer twice as fast as
the previous one we owned, we manage to force So, I created a C.O.F.F.E.E. expression that
it with a work load that is, at least, three times as could "idle" a selected percentage of objects in-
demanding as before. So, we keep on complain- side a hierarchy. And I say "idle", because it
ing on how slow the computer is. would hide polygonal objects and turn off proce-
dural objects, depending on what they are. This
And here I am, writing all this philosophical would give me the biggest possible speedup. Op-
mumbo-jumbo when I'm one of the head- tionally, I would also like to turn off render of po-
complainers ;) lygonal objects as they were hidden in the editor
(procedural objects, if turned off, will not render
I don't even have much to complain about as I anyway).
have a pretty fast machine. My computer has four
processors, and that is excellent for rendering. Then, being a smart-ass guy, I thought...
But, unfortunately, multi-processing has no influ- Mmmmmm, this expression may have to deal with
ence when we are in the editor building our LOTS of objects inside a hierarchy. If it has to do
scene. all the calculations each time I change something
in the scene, I may not be gaining all the possible
To get some speedup in the editor we must give speed. So, after it has done its dirty work, I should
back on some things (display accuracy, texture be able to turn it off. And, so I added another op-
display, faster display modes, etc), or do some tion. Yes!! If I were working in a juice shop, I
clever trickery. And that is what this article is all would be the guy that squeezes the very last drop
about: clever trickery! of liquid out from the fruit!
Some time ago I had to create a scene with, liter- My expression also rotated the objects in a ran-
ally, thousands of objects. After the first few hun- dom way (it was required) but, after finishing the
dred, I started to notice a slight lagging. Not com- project I streamlined the expression to turn it into
pletely crippling, but annoying. We, humans, are a general purpose tool. So, off we go, to create
hard to please beasts, aren't we? our SpeederUpper expression thingy!
Each bunch of those thousands of objects could The actual code you will be typing is this one (See
be placed inside a Null and I could turn off the picture on the next page).
editor display of the Null, but that was of no help.
Why? Well, since all my objects were Instances, I present it here for you to follow along with the
what I really wanted was to turn them off tempo- forthcoming explanation. Don't worry, I will explain
rarily, not just hide them. to you all the lines of code in excruciating detail.
Now, to type the C.O.F.F.E.E. code, you need to
Also, while laying them down on the scene, I had have an object.
to do so, taking into account the placement of any Create a Null. Name it something you feel is clear
previous objects already there. So, turning the enough for your purpose. It's inside this Null that
whole bunch off was no option and manually turn- you will place all the objects that usually hog your
ing off some while leaving others on, and keep editor.
managing this, was a tremendous chore. Aren't
computers supposed to be great at repetitive, te- To this Null you must add four UserData parame-
dious work? Couldn't I devise a way to automate ters. I assume here that you know how to add
the process? Mmmmmmmm, this looked like a job UserData parameters to any object. After all, you
for... COFFEE!! are following a tutorial that aims to teach much
35
Editor Speeder Upper
By Rui Batista
main(doc,op)
{
36
Editor Speeder Upper
By Rui Batista
var, we can declare as many variables as we The variables percent1 and percent2 will store
want but, to keep things clean and tidy, we should the percentages of hidden objects that are set by
try to declare just a few at a time and also joining the UserData sliders.
them by purpose or similar function. Also, their
name should be clear enough about what they will The variable temp will be used as temporary
be used for. storage. Very useful, as you will see.
There is nothing stopping us from calling sit- The variable hide will contain the "decision" of
ting_bull to a variable that will serve to hold a wether we should hide and object or not.
texture, but that would be plain silly. When you get
back to your script, a few months later, looking at Finally, the variable render will determine if a hid-
sitting_bull, inside your code, will mean nothing den object (in the editor) will be hidden in the ren-
to you. der too.
Even worse, someone else could be using your Now that we have declared all the variable we will
script and looking at variables named sit- need, let's start the actual actions.
ting_bull, monkey_wrench, lollypop, and so on,
would only prove how much you need profes- First we need to know how many objects are in-
sional counseling. Also, try to keep variable side the Null. To do so, we initiate the count vari-
names as short as possible. Why? able with the value of 0 (zero). Now, we load the
first object inside the Null into the obj variable.
Well, you are going to work with variables inside This is done with the command GetDown().
your script and having to type something like
my_beloved_variable_that_will_store_my_ma But, GetDown from what? From op!! Remember
gnificent_texture each time you need it, lets face what op was? It's one of the variables that CIN-
it, it is a pain in the... well, you know where. Vari- EMA 4D already provides for us and it's the one
able names must start with a letter or underscore that points to the object that contains the
and can contain letters, numbers and the under- C.O.F.F.E.E. expression tag (in our case, the
score symbol. So, after the first { we type: Null). So, op->GetDown() means "from the ob-
ject pointed by op, get the first object inside
var obj,type,coffee_tag; (down) it".
var on,count,current;
var percent1,percent2,temp,hide,render; This value is stored inside the obj variable. What
if the Null contains no objects inside it? Well,
The variable obj will store objects. It will point to then, the op->GetDown() will return a value of
objects inside your scene. The variable type will Nil. No, Nil is not a special kind of Null :) Well,
hold a value that will tell us what type of object come to think of it, it is! Nil, is a programming
another variable is pointing. The variable cof- term for NOTHING WHATSOEVER! Its kind of a
fee_tag will point to the C.O.F.F.E.E. tag that virtual Null.
holds the script that is running (we will see why
we need that, later). Now we must go through all the objects inside the
Null, adding one to the counter as long as we
The variable on will hold the value of the ON Us- find objects.
erData parameter.
So, we prepare a cycle. This special type of cycle
The variable count will be used as a counter is called a while cycle and it runs as long as a
(DAH!!!). specific expression is true. As soon as the ex-
pression becomes false, the execution jumps out
The variable current, just like the variable obj will of the cycle and goes on with the code after it.
hold objects. So, our while cycle is the following:
37
Editor Speeder Upper
By Rui Batista
This way you can make long commands go over We must, now, run through all the tags and check
a single line and, as long as the "termination for a C.O.F.F.E.E. tag. What better than our friend,
character" is not reached, everything is treated as the while cycle? So, here is the code:
a single command. Some stuff doesn't require a
"termination character", like main(doc,op) or while(!instanceof(coffee_tag, CoffeeExpres-
while(obj) because those are not really com- sionTag))
mands. {
coffee_tag = coffee_tag->GetNext();
Ok, what happens if obj->GetNext(); goes over if(!coffee_tag)return;
the last object of the list? In that case, obj- }
>GetNext(); will return a value of Nil and we all
know what happens when obj is equal to Nil,
38
Editor Speeder Upper
By Rui Batista
on=coffee_tag#ID_USERDATA:1; while(obj)
{
Now we check its value.
We now need to get the current percentage, as-
if (!on) return; sociated with the current object. Meaning that the
first object inside the Null will be equivalent to 0%
This means that, if NOT on, we can return be- and the last one will be equivalent to 100%. Actu-
cause the expression is turned off. ally, we will be using values between 0 and 1, with
the 1 being equivalent to 100%.
But if the on variable is true, we get all the other
values into their correspondent variables: We get that value by dividing the current object
number (initiated at zero) by the total number of
percent1=coffee_tag#ID_USERDATA:2; objects inside the Null, that we have, safely,
percent2=coffee_tag#ID_USERDATA:3; stored inside the count variable.
render=coffee_tag#ID_USERDATA:4;
temp=(float(current)/float(count));
I know that many of you are stubborn/distracted/
rebellious enough to set the lower value of per- We store that value in the temp variable since it is
centage bigger than the higher value of percent- no longer needed for anything else. But wait! Why
age. the float before the variables current and count?
Well, the current and count variables are storing
Come on, don't try to deny it. I know you guys!! ;) integer values.
So, to allow for the code to work perfectly, even if An integer value is a number without a decimal
some of you devious minds try to misbehave, I point. Something like 2,10, 34 or -5, as opposed
included the following code: with something like 2.13, 10.01, 34.009 or -5.97. If
we simply performed a division between two inte-
39
Editor Speeder Upper
By Rui Batista
ger values, the resulting value would also be an dering off too) because there is no way to turn
integer. In our case, we would only get 0 for all those off. For primitive objects, as soon as they
objects before the last one and 1 for the last ob- get turned off, they will not render too. Now we
ject. That is DEFINITELY, not what we want. So, decide what to do, with:
we force the calculation to be performed as a
float. Floats are numbers with decimal points if(type==PolygonObject|type==LightObject)
and, placing the word float before a variable
forces it to be interpreted as a float. We now used another type of logical operator.
This one, instead of calculating something AND
Now we perform a logical calculation. Not that something_else, calculates something OR
everything before was not logical, but this particu- something_else.
lar expression is considered to be logical because
it involves comparisons and a logical operator: The OR operand is the inconspicuous | sign. Yes,
the little vertical bar. And, with the OR operator, its
hide=temp>=percent1 & temp<=percent2; enough that one of the values - on the left or on
the right - is true for the whole expression to be
So, the left side of the logical expression is true.
temp>=percent1 and it stands for "is it true that
the value of temp is larger or equal to the value of So, if the type of object is a Polygon object or a
percent1?". This will return a value of true or Light object, the following code, between the {
false. and the } is executed. Oh, by the way, we need to
use == to check for equality because a single =
The right side of the logical expression is stands for assigning a value. So, a==b stands for
temp<=percent2 and it stands for "is it true that checking if a is equal to b, but a=b stands for as-
the value of temp is less than or equal to the signing to a the value of b.
value of percent2?". This also returns a value of
true or false. We combine both with an & opera- {
tor. o b j # I D _ B A S E O B J E C T _ V I S I B I L I T Y _ E D I-
TOR=hide+1;
This is a logical operator that means AND. The obj#ID_BASEOBJECT_VISIBILITY_RENDER=2-
resulting value of an AND operation is only true if (render*!hide);
both sides of the expression are true. So, if the }
value of temp is between the value of percent1
and percent2, the hide variable will get a value of So, if the type of object is a Polygon object or a
TRUE. If not, the hide variable will get a value of Light object we set the objects editor visibility pa-
FALSE. rameter to a value of hide+1.
Now we get the actual type of object we are deal- Remember that hide was zero if the object should
ing with so that we can decide what to do. not be hidden and 1 if it were to be hidden? So,
the editor visibility will either be 1 (0+1) or 2 (1+2).
type=getclass(obj); Why? Well, the editor visibility parameter can
have three values:
This stores the type of object (its class) into the
type variable. Why do we need to know what type 0 - Force Visibility
of object we are dealing with? 1 - Force Invisibility
2 - Unchanged
Because, for primitive objects we only need to
turn them off but, for polygonal and light objects, Need I say more? ;)
we must hide them (and, optionally, turn their ren-
40
Editor Speeder Upper
By Rui Batista
else
o b j # I D _ B A S E O B J E C T _ G E N E R A-
TOR_FLAG=hide;
current++;
obj=obj->GetNext();
Rui Batista
41
Importing and Exporting Geometry from CINEMA 4D
By Jamie
The real trick question when exporting geometry move the center of each object to the bounding
from CINEMA 4D is; “what will it look like on the box center. This is useful for selecting and textur-
other side?”, “what properties of my file will I ing objects in CINEMA 4D and makes it a good
lose?” These are the main questions at hand and choice for Architecture in CINEMA 4D.
for some of the more common conversions and
formats, I will answer the questions for you right .3DS
here in this article. First off we will have a list of This format has some serious issues and most
some of the export formats and a brief description people think that it’s the best format to exchange
of what is so special about each one. Certain for- data between 3DS Max and other programs. This
mats are not going to be included in this list e.g. is not so at all. When exporting models with cer-
Allplan, as I can’t test them out. tain characteristics, the format just does not play
by the rules. On Okino’s Polytrans webpage, they
Let’s say that you have just completed a model for mention that it is very outdated and mangles your
a client and they need it for 3D Printing or use in mesh in certain ways; your mesh is triangulated,
Maya or 3D Studio Max… Maybe Lightwave 3D is Phong Shading is lost and wherever your UVW
the software they will be using it in or perhaps it is mesh ends, the actual mesh will be split. This
some other 3D application. There are a series of forces you to optimize the mesh once it is im-
factors that you need to consider before exporting ported into 3D Studio Max and that can cause
the model for them. Especially if it has been UV some undesirable results depending on the com-
textured. plexity of the model. The good news is that your
pivot points (object axis) will be preserved once
Now for a brief description of the export formats; the model is imported into 3D Studio Max.
.STL
Export Formats Stereo Lithography… This format was basically
intended for 3D printing. If you use a Z-Corp 3D
CINEMA 4D .xml Printer, you will be able to export directly from
This format seems to be an attempt at backwards CINEMA 4D to the Z-Print software and view or
compatibility with CINEMA 4D Version 6. The print your model. This format does not save
manual does not say much about it, and I have Phong Shading or UVW coordinates.
found it to be a bit buggy in my experience. The
manual mentions that it may be useful to plug-in .WRL (VRML)
developers. It seems to preserve most CINEMA This format is by far my favorite format. I believe
4D properties including editable primitives and that it was originally intended for creating virtual
SweepNURBS objects etc… your UV coordinates worlds on the internet. It does what all the other
and Phong tags will also be preserved. On a formats won’t when it comes to preserving hierar-
standard model with a UV texture, you will not chy. The .WRL file format preserves UVW coordi-
lose any of the important data. nates, Phong Shading, object hierarchy, and Ob-
ject axis location and orientation! (pivot points)
.DXF
This format is the format that I consider to be the .OBJ (wavefront)
‘most’ of the formats. The file size is the largest, The Alias / Wavefront OBJ format is another one
the hierarchy & color support is the best and you of my favorites. It preserves all the important stuff
lose the most data from your CINEMA 4D objects and is by far the most reliable format out there! I
when exporting. It is one of the oldest universal have never had problems with an OBJ file. The
formats. only downside is that the object axis location and
orientation is not preserved.
I usually use it as a last resort. The DXF format
does not support UVW coordinates and it does
not preserve any special Phong Shading. It does
42
Importing and Exporting Geometry from CINEMA 4D
By Jamie
Here is one scenario; you have just modeled a If someone needs a model for 3D Printing, then
character and you need to export it to your col- the choice is really easy. Just use the .STL file
league for use in Maya. If your character is a ro- format. If the client is using the Color version of
bot and it has lots of pivot points, your format of the Z-Printer, and your model is UVW mapped
choice should be the .FBX format. The reason then you must use the .WRL format as this format
behind this choice is that the .FBX format pre- will preserve the UVW mapping information.
serves all of the object axis points. It preserves
position and orientation. Hierachy
The hierarchy your model has when exporting is
All of the pivots for the arms and other limbs will also important when exporting. The easiest way
be exactly where they are supposed to be. It for me to explain this is using CINEMA 4D to
should even import your textures! If your charac- Maya. In the following image I have a motorcycle
ter is a single mesh and is already UV textured that I have modeled in CINEMA 4D and I have
using BodyPaint 3D, you will be better off using exported it to Maya via the .OBJ format. Notice
43
Importing and Exporting Geometry from CINEMA 4D
By Jamie
how differently the model imports when the hier- some scene elements from Lightwave. Remem-
archy is changed. ber that CINEMA 4D can only import the Light-
wave format. If you need to get animation into
Maya or 3DS Max from CINEMA 4D, then the
.FBX format will do just fine.
Conclusion
Exchanging data between our 3D programs today
is not a simple task and even though you can ac-
complish a great deal with the built in formats that
many 3D programs ship with, it is always good to
have an alternative import / export solution. I have
found a very useful little shareware program that
does a great job at exchanging 3D file formats. It
will even save some proprietary formats such as
Maya, Truespace, Lightwave and Softimage XSI.
Jamie Hamel-Smith
Animation
The Lightwave format supports animation very
well, and it will also import lights, cameras and
44
Spotlight on Deschamps Thibaut
Featured Artist of the month
45
Spotlight on Deschamps Thibaut
Featured Artist of the month
46
Best of CINEMA 4D - Gallery
Selected Art by 3D ATTACK
Blend, Moderator/Writer
3d@i-blend.com
Website:
http://www.3dattack.net
Plugin Page:
http://3dattack.net/shop/index.php?page=10
52