Inkscape to Blender

Hello all,

Inkscape is a free-and-open-source 2D vector program similar to Adobe Illustrator.  Think of vector graphics like Blender’s curve tools.  You can create a vector image (.svg) and scale it up ten bazillion percent and it will still be clean.  Unlike a .jpg or .png file that will fall apart at anything above 100% zoom.

For example:
Here’s an .svg file at 300×300 pixels (100% zoom):

Now here’s a tiny segment zoomed in to 1,000%:

And again at 5,000% (GIMP wouldn’t let me do 30k px which would be 10,000%):

When you combine Blender with Blender, you can do some neato things.  Instead of creating a logo using curves, or worse poly-modeling, you can quickly mock it up by importing the .svg file, like so:

Image made by Blender artist “K M”.


Image made by me! :p

Here’s one I recently made (not the best, but it served it’s purpose):

So, if I wanted to do something simple like the above AF logo, you could make it really quickly by setting it as the background image in Blender and either using curves, or more appropriately for this shape–polygon modeling, you could whip it up rather quickly.

But what if I told you for about the same amount of time as it would take to convert the AF logo .jpg file into the above Blender render, you could do either of the below images:

That makes using Inkscape more appealing, right?  Sure, sure, the images themselves aren’t the best renders–but let’s focus on the time-saving aspect here!  So why don’t we go ahead and make both of these.

Let’s start with the GE logo.  Download the GE .jpg file here: GE-Logo (uploaded by ingvar)

Inkscape
1. Open Inkscape

2. Go to File > Open > [find your image] > Open

3. Left-click on the image to select it.

4. Path > Trace Bitmap

5. In this image we only have two colors–white and blue–so were going to do “Multiple Scans” by colors, and set the Scans: to 2.
Depending on what kind of image you are trying to convert, you can do either multiple scans or a single scan.  Keep in mind, that if you import an .svg created with multiple scans into Blender, each of those scans will create a path–so if you have a full color image and make a 256-color scan, you’ll have 256 paths to deal with.  Single scan, on the other hand, may not give you the results you want.  In this image you can also do “Color quantiziation” with 2 colors and get a black-and-white result as well.

6. Un-check Smooth.  Do check Stack scans, and Remove background.  Our source image is pretty large, so we won’t need the benefit of smoothing to clean out the rough edges.  We’ll stack the scans so there won’t be a gap made, and we’ll remove the background since we don’t need the white part of the GE logo left over.

7. In the Options tab, uncheck Supress speckles, Smooth the corners to 1.00, and Optimize paths to 2.00.  This is a smoth, dual-tone image, so there aren’t any speckles to supress.  We want the corners as smooth as possible for Blender, and the more optimized (clean) the paths are the better–we want as few segments to mess with as possible.

8. Click Update, OK, then close the Trace Bitmap window (OK will not dismiss it).

9. Left-click and drag your new .svg out of the way.  Left-click select the .jpg logo and delete it.  Move the .svg back into place.

10. With the logo selected, click Save As, and save as a Plain SVG (rather than Inkscape SVG, since I tend to notice Plain SVG works better in both Blender and GIMP under most conditions.)

Blender

1. Open Blender, delete the default cube, go to your top view.

2. File > Import > .svg

3. After locating your .svg file you’ll see a teenie-tiny-itsy-bitsy little curve object that looks like our GE .svg.

4. Zoom in and take a look at your file to make sure there isn’t any bits like “Made by CrazyKid!” that you want cut out (be sure to credit CrazyKid in your final product, though–this image was uploaded by nipic user ingvar as part of his .ai file).

5. Select the curve object (I’ll call logo from here on out), and reset the origin to the center of the logo (Object Tools (left-hand panel) > Origin > Origin to Geometry (or Geometry to Origin to save you the next step).

6. Move the logo to 0x0y0z.

7. Now zoom the logo out 10-20x times (however large you want it).

8. In the path tab, you can extrude and bevel to your heart’s delight–however note that the amounts will have to be tiny.  I’m still trying to figure out a way to make them more “normal sized” increment amounts.  Applying the scale doesn’t seem to have any effect.  I also recommend boosting your resolution to more than 12 (48 is what I normally do).

9. If you bevel and the logo puffs out too much, you can compensate by making a negative offset.  This will create curve overlaps that we’ll have to manually fix.

10. This is what we got so far–not bad!

Okay, you’re saying, I could have also done that in Blender by using curves.  Well, I say, how about the University of Maryland logo?  That’s a bit more complex.
Grab the logo here: UMD Ball Logo
Image copyright University of Maryland (http://www.umd.edu/)

1. If I used the same settings as before, I get some odd artifacts–especially around the text:

So I had to adjust some of the settings as you see below:

(Note: I also boosted the number of colors on the first tab to four: a pass each for red, yellow, black, and white.)

2. After importing the .svg into Blender, you can see there are some areas that are still not swell:

So I did some moving vertex handles around here and there to clean that up.

3. After throwing on some textures and lighting in Cycles, this is what we come up with:

Not bad for a few minutes work.  Definitely a time saver trying to model each of those elements individually.

Creating .svg files and importing them into Blender are best for two-dimensional limited-color images like logos and text.  More complex images or items you anticipate making into more dramatic 3D elements are best served by poly-modeling, sculpting, or more advanced NURB-modeling from within Blender.

Speaking of text, this is one of the most useful features of Inkscape—text along a path.  Let’s quickly run through that, and afterwards you should be all set with the basics and ready to pursue some great Inkscape tutorials out there for more advanced .svg creation.

1. Create a path in Inkscape.  You by clicking you create a vertex with a hard angle, click and holding lets you have a smoother curve.

2. Click the text button and type something out.

3. First select the text, then select the curve.  Go to Text > Put on Path.

4. Now you can add your text how you see fit.  You can change the font, size, kerning, etc.

4.5 (Going to GIMP only): You’ll want to make your path invisible–do that by changing the alpha to zero.  Otherwise it’ll be part of the text image when you open the .svg in GIMP.

5. To make the text displayable in GIMP or Blender, you’ll have to convert the text from an object to a path.  Do that by clicking on Object > Object to Path.

6. Save as .svg and import it into Blender just as in the previous examples.  Same deal applies with the extruding, etc.

7. Add your textures, lighting, and camera angle–bam!

I hope you have found this tutorial useful!

Thank you. :)

~ ~ ~ ~

Annex:

I skipped over how I got the Cycles renders in the sample images above to, well, render the way they are in the sample images above. (That was a horribly written sentence, sorry.)

The lighting setup is entirely environmental.  After switching from Blender Internal to Cycles, you set up your environmental lighting by accessing the World tab and making the below changes:

And then you’ll get something similar to this:

Next, you’ll switch to the render tab, in the Film group you’ll check “transparent”.

And you’ll get this:

Now hit render, and you’ll get something nicer.  I have mine set to render 100 samples:

Adjusting the direction of the normal (the round white ball) in the World tab will give you radically different lighting.  Also, changing between Preetham and Hosek/Wilkie will give you different results as well.

Hope you found this annex useful!

Blender Sabbatical: Focusing on Python

In order to focus and develop my programming ability, I will be taking a year-long sabbatical from Blender.  I’ve enjoyed using Blender since I began with 2.48 in early 2009.  In fact, I’ve been dabbling in 3D since 3ds for DOS beginning in 1995 and then 3ds Max 7 in 2005.

3ds R4 for DOS

3ds R4 for DOS, circa 1995

My first foray into programming was with GW-Basic on a Tandy 1000 back in 1990.

image of a tandy 1000 personal computer circa 1990.

Tandy 1000, my first computer back in 1990.

We didn’t have a tutorial manual, but we did have a reference manual.  In retrospect, learning from the reference manual was probably the better way since there was no hand-holding or “first steps”–it just tossed you in.  If you didn’t know the terminology that went with a routine, you had to look up the referenced command or figure it out through tinkering.  I played with Basic until I got hooked on 3ds for DOS and left programming behind.  A few years ago I tried to learn programming again, but with limited success–and again while I was deployed with some minor gains.

GW-Basic screencap.

Screencap from Basic.

As a SNCO and active LDS member, I have a lot of duties that need to be taken care of preventing me from focusing on the various hobbies I wish to progress in.  My thinking is that by taking a year-long break from 3D/2D to focus on programming will give me gains that can be applied back into Blender/GIMP through scripts or code contribution.  Also, I’ve always wanted to recode Blender’s Video Editor to rival Sony Vegas (I don’t know much about After Effects, but let’s rival that, too!)

So, continue to look here for my musings, gains, and pains of learning Python during the next year–and I’ll pick up Blender in 2.7x!

300px-Python3-powered_hello-world.svg

Going Away Gift (Blender/GIMP/Plaster)

My unit recently got a new First Sergeant, and we’ll be saying goodbye to the previous one at a Squadron picnic on Friday.  He was the best First Sergeant I ever worked with, and because of that I wanted to make him a unique going away gift, rather than the typical plaques I make.  Since he’s rather rugged and “tough”, I figured a concrete ’1′ would be appropriate.  I couldn’t make him the ’1′ with the diamond because he’s not a First Sergeant Academy graduate, so I went with the ’1′ by itself.  His nickname is “Smitty”–so I was going to engrave that in there.  A concrete ’1′ with Smitty–totally original, right?  Well, turns out, not so much–more on that later.

Final product in a beauty pose.

The final product, ready for presenting! Read on to see how it was made.

I have an ABC Project Management approach I follow (which I’ll talk about another day)–but once I decide on a design it’s off to my favorite tools: Blender and GIMP!

I used Blender to make the ’1′ object using the font Sketch Book.  After beveling and extruding it, I converted it to a curve so I can make some shape adjustments.

Image of before and after '1' objects

Difference between edited ’1′ (black) and the original ’1′ (orange)

I then booleaned the other text objects made from Century Schoolbook and Blender system fonts (after converting them all to mesh objects–learning experience for me there!)  The resulting mesh was quite a bit messy, but it worked for the purpose intended.

boolean operation screenshot.

Messy result from boolean operations. It works though!

Using GIMP, I made a new concrete texture from three other textures on CGTextures.com.  The resulting texture looks a lot like #11, but has touches of #41′s divots and the roughness of #01.

Textures mixed in GIMP.

Three concrete textures were mixed together in GIMP, resulting in a new texture with features from all three.

Once the texture was ready to go, it was back in Blender to put the rendered mesh into an environment as if it was already made.  My first environment didn’t turn out the way I intended (the divots were too dark and overall just not appealing, so I came up with a second one.  They were both rendered in cycles and used the “beach probe” HDR file for environmental lighting.

First render.

The first environment was my computer desk–but I didn’t like that in the end.

Second render

The second environment was from a picture I found online. I just looked better–although the alignment of the ’1′ with the image is not correct, but close enough for this purpose.

Next was to sell the idea to the Commander for approval to proceed!  He took a look at the render, kindly overlooked the bad shadow or alignment inconsistencies in the render and gave it the go-ahead.  He did ask to drop the word “Interim” and just keep “First Sergeant” on the second line–easy fix.

Now, time to build the thing!

I debated using wood, clay, concrete, or plaster to make the gift–none of which I have ever used before.  No matter which route I took, it would be a learning experience for sure.

I love carving green floral foam! It’s so… fluidish!

I played around with wood and clay, but found plaster easier and cheaper to work with.  Having decided that plaster is the way to go, I did two tests, casting and coating, to determine which route would be best.  I carved out a small ’1′ out of green foam and coated it.  I also made a small block casting to see how that works–and to make something to practice carving into.

The coating didn’t turn out too swell, obviously!

For carving practice, I used a safety pin (no joke!) and carved out my Church’s logo.

It took forever to do this with the safety pin, but it turned out fairly good for me being a first time user and all.

All excited an ready to go, I bought a Dremel rotary tool and detailing bits on impulse after watching a few YouTube videos with folks using it.  The idea was that it would help me carve the letters, smooth the edges, and do all the beveling needed.

Setting the Dremel aside for now, I took an electric wand and cut the ’1′ shape out through three sheets of 1″-thick foam. When using a wand to cut foam, you have to let the tool move at its own pace–if you try to force it, you’ll make uneven cuts and break the tool (which I’ve done before–this particular model is not the toughest, but it’s all I have at my local store).

I then stacked the foam and poured my mix into it. I beat my hands around the mold to shake the bubbles out, but my mix was (too) thick that I didn’t have much problem with the bubbles. I think most of the air was forced out between the foam layers, so that worked. After pouring it I placed weights on the mold to keep it still and prevent leaking. I then let it sit for two days.
Smitty_casting

After breaking the mold:
Smitty_unpacked

I then cleaned up the edges and smoothed them out. I printed out the text and traced the lettering onto the plaster using carbon paper. The carbon paper turned out to be unnecessary, since the tracing dug a slight groove into the plaster that made it easy to see the outline.
Smitty_cleaned

Using a car dash removal tool, I carved in all the letters. I ended up not using the Dremel for the letters after all, since the dash removal tool worked just fine. I found it best to use a soft touch and do multiple rounds, rather than try to push harder and risk going over the lines.
Close-up of bottom letters

The Dremel tool did help cutting off much of the excess. I then used wood carving tools, a metal ruler, and a crafting scalpel to finish it all off. Plaster is an amazingly easy to carve, yet solid material. I ran the ruler’s edge up and down the length of the ’1′ to level out the sides, which worked rather well.
Tools used to finish carving.

Now came time for painting!

The first thing I did was do two coats of sealant to make the material take the paint better and prevent too much absorption. I’ve never dealt with plaster before this, so I wasn’t sure if that was going to be a big issue or not–but better safe than sorry. I then covered the letters in corn starch so the paint wouldn’t get inside.
Carvings coated with corn-starch

I applied three acrylic colors (tan, white, and gray), using sea sponges. The first coat was a hearty 50/50 white/tan mix. I then medium-firmly dabbed 80/20 gray/white, then a final softly-dabbed coat of the tan mix. I then blew the corn starch off and bam!
Smitty_final_portrait

The bottom letters turned out nice–although I think I dug the “First Sergeant” in too deep.
Close-up of the bottom text.

And here is the detail on the larger letters. After digging in the outline, I did a sweeping motion to dig in the center, giving it a nice texture.
Close-up shot of the letters.

All-in-all, I spent about $250 on this project–but most of that went to the Dremel which I’ll be using in future projects.  About $70 came from donations from the Airmen and the rest was out-of-pocket for me.  This was all done in my off-time as well–so don’t worry, no tax dollars were spent on this project!

Oh, and remember when I said “A concrete ’1′ with Smitty–totally original, right?  Well, turns out, not so much“… my wife mentioned it looked more like a tombstone than anything else.  I mentioned what she said in BlenderWorld’s forums, and user Yodaman921 let me know that, yes indeed–it does look like a tombstone.  And you know what’s really creepy?  The name on it is Smitty, too. :S
Sponge Bob version of the concrete '1'

We’ll be giving the gift to the outgoing First Sergeant on Friday, we’ll see if he likes it or not.  I hope y’all enjoyed it, and thank you for reading along!

Notepad++ on Mac OSX (Update)

[Please read the comments below for instructions on how to install Wine on your Mac using WineBottler.]

[For folks in the Military, this method will also enable you to run Lotus Forms Viewer on your Mac OSX.]

I have used Notepad++ over the past two years or so for playing with HTML, Python, and recently Java when using my Windows desktop or Bootcamp partition. I enjoy that Notepad++ colors the tags and contents according to their type and function.  You can select which programming language format for Notepad++ to track from an extensive list accessible from a drop-down menu.

When I use Mac OSX, though, I was using TextEdit, the bundled application that ships with OSX similar to Window’s Wordpad.  It finally dawned on me that I can use WINE to run the Notepad++ .exe file in MacOSX–sure enough, the Notepad++ v6.1.2 Installer worked like a charm and I now have a fully-functional Notepad++ on OSX.

For those not familiar with WINE, it is a free program that allows Window’s software to run on Linux and OSX.  Not all programs will run, and not all will work 100%–however most programs I have, including Microsoft Office 2003 running on Linux, work without problems.  I highly recommend installing WINE on your Linux or OSX systems if you don’t have it installed already.

The reason I didn’t use a similar program from the App Store is because I am comfortable with Notepad++ and wanted to test it on WINE.

Oh, and in other news I have returned from overseas, and am happy to be back home in the United States!  I haven’t touched Blender since December–and so much development has happened with Blender in 2.6x that it will take me a long time to catch up!  So I may not have any Blender-related postings this year. :(

Second Year Using Blender Showreel

The above video contains most of my Blender and GIMP work from March 2010 until May 2011. I am not looking for employment, so this showreel is less resume and more showing-off. Special thanks to all the folks at BlenderNewbies, BlenderCookie, BlenderArchitect, and countless other Blender tutors out there. Of course, thanks also goes to the Blender and GIMP developers for making these programs available. Music is called “They’ll Remember You” by John Ottman, copyright 2008 by Varèse Sarabande.

More Cycles Settings

In the below Velvet setting example, you can see that both Sigma and Fresnel have a similar effect:

Glossy Setting example:

How to adjust the bump-map strength:

The bump map in Cycles is listed under the displacement tab.


As of right now (early May ’11) it doesn’t look like you can load an image as the displacement map, but you can use the standard Blender procedural materials (clouds, marble, ect).

You can adjust the map size using the “size” setting in the image above just as you would under normal Blender Internal, or using the nodes:

So on to the meat of this tip, how to adjust the strength.

Since there doesn’t seem to be a setting for strength, we’ll use a mix node with the displacement material on one noodle-entry and an empty slot on the other:

The ‘mix’ node can be found under the ‘add > color > mix’ option (shift+A). By moving the factor (“fac:”) we can set the strength of the bump map.

Simple and easy! :thumbup:

Default strength:

(click for full size)

Mix factor set to 0.2:

(click for full size)

Cycles Glass Settings

[Update: These settings were written for and earlier version of Cycles and are no longer relevant for 2.6x builds.]

Glass Roughness and Fresnel Settings
In all tests the glass was colored pure white (255/255/255).

Roughness: 0.0
Fresnel: 0.3

Roughness: 0.025
Fresnel: 0.3

Roughness: 0.05
Fresnel: 0.3

Roughness: 0.1
Fresnel: 0.3

Roughness: 0.2
Fresnel: 0.3

Roughness: 0.4
Fresnel: 0.3

[b]Roughness: 0.6
Fresnel: 0.3

[b]Roughness: 0.8
Fresnel: 0.3

Roughness: 1.0
Fresnel: 0.3

Roughness: 0.1
Fresnel: 0.0

Roughness: 0.1
Fresnel: 0.2

Roughness: 0.1
[b]Fresnel: 0.4

Roughness: 0.1
[b]Fresnel: 0.6

Roughness: 0.1
Fresnel: 0.8

Roughness: 0.1
Fresnel: 1.0

Follow

Get every new post delivered to your Inbox.