Sunday, June 29, 2008

Pynodes and NPR

This thread on Blender artists has some interesting node set ups using pynodes, most notably (for me) the halftone one, since I've been trying to get something like this for ages!
http://blenderartists.org/forum/showthread.php?t=125741&page=6

this is the blender pynodes cookbook.
http://wiki.blender.org/index.php/Resources/PyNode_Cookbook

some notes on writing renderman shaders
http://accad.osu.edu/~smay/RManNotes/WritingShaders/surf1.html

more renderman shader writing links
http://www.fundza.com/

someday I'll have a look through this and try to write my own but for now I'll just post it here! I need to finish a few projects first before I can start in on node experiments with a proper project! argh! Maybe I can se them for a game or something? GLSL shaders in real time? hmm.....

paper sculptures



I've always wanted to make an animation that looks like paper sculpture. Its not really natural media, because it requires a really good lighting model (mine looks pretty fake, the shadows are awful, and the models are a bit hard on the edges.
Mostly I'd be into bas-relief. It'd be pretty neat, but fairly hard to animate I think, though the lighting would be the toughest bit.

Sunday, June 1, 2008

Wibbles


This is a neat style, like water colours. The way I figure it, the effect can be reproduced by using Oyster's materials which do the charcoal/edge jitter effect, plus added to my edge expansion one. (from here)
To do this, it might be possible to make the vibrations a bit lighter? It may also be able to get the edges and getting the lines expanded like using a brush? What about finding the edge and making a bline/path with it? hmmm?

It might be possible to make a watercolour alike, which means using brushes to make strokes, what about blurring them brushes? Smearing over the paths somehow? What about leaving the camera open, or motion blurring it for ages?

Reebok/Nike style animation


This is based on an advert I saw in the internet once. Its pretty simple, just make the robots, and colour the faces with the different colours. They all have a maxed out ambient. Thats it.



The other thing I thought of, was the Spektor (um, that what his name is?) scribbles. They are kind of robots heads, half robot half rabbit really.

Also I think the Back To Mine album covers are very, very cool. I'm trying to figure out this, possibly using colours and doing an edge search, or cutting the people up, and using camera planes to do it, or even using transparent materials? hmm....

Saturday, May 31, 2008

International deviance



This is a cartoon I made as a fan video for Disasteradio, a local artist. I really like his stuff, and see him play as often as I can. Its a track from one of his albums, the story is really strong, and the video pretty much wrote itself.
Anyway, its here.
http://www.youtube.com/watch?v=c9LXeGg0BnA
Basically, the video was made in blender. The shapes are planes and bezier circles with an unshaded material on them. The shapes are kind of like cut-outs, the movement is all in the X and Y planes.

Friday, May 16, 2008

Oyster - way cool blender materials


Get it from here:
http://blender.blogchina.com/inc/tut-pencil.rar

it looks like this uses an animated material which deforms the mesh, in order to make multiple lines. Its really cool.

Update:
I've had a look at this, and its a combination of a bunch of stuff. There is a material with an IPO, which is basically randomised. This affects the scale of the object (size xyz and displace IPO's) This is also set to affect the normal and displace in the texture. It then uses a motion blur to run through the material IPO, which displaces the mesh and makes the outside lines. The charcoal effect is a cleer texture which looks pretty average on its own, but when blurred looks a lot like charcoal. It may be possible to texture it so it looks like crayon or brush strokes, but I'm not sure yet. I imagine each blur frame could be textured in that way somehow, but I'm not sure.

x-ray materials

Sonix did some really nice x-ray materials, however I can't find the link any more! its a 404 :( http://www.free-webspace.biz/sonix/Cars/Blender234CarMaterialLibraryR1.html
This is the blendernation post:
http://www.blendernation.com/2006/05/11/car-material-library/

Here is a link to a blender materials repository.
http://www.blender-materials.org/index.php

It would be really cool if there was a comp nodes/npr shader equivalent. It would also be better if comp nodes could be saved in full, ie the input and output nodes. Oh well....

Techniques and papers

http://graphics.uni-konstanz.de/forschung/npr.php some interesting stuff here to look at, I just had a brieff glance at the "etching" section, which looks easy and do-able.

somthing i found on google, a font of possible ideas to try:
http://209.85.173.104/search?q=cache:1vXETCMO1CUJ:www.cs.virginia.edu/~gfx/Courses/2004/RealTime/lecture12.NPR1.ppt+non+photorealistic+shader&hl=en&ct=clnk&cd=12&gl=nz&client=firefox-a

interesting techniques to try:
http://marctenbosch.com/projects_npr_shading.html

Pynodes

Blender pynodes look interesting. More information here:
http://wiki.blender.org/index.php/BlenderDev/PyNodes/API
and here:
http://wiki.blender.org/index.php/BlenderDev/PyNodes

ekakiya - illustration style render test


This looks awesome! I can't wait to have a go with it myself, I've been trying to do halftones for a while. I don't think Blender will do nice blended halftones, but oh well. It comes with comments as well!
http://blenderartists.org/forumshowthread.php?t=83298&highlight=sketch+shader

NPR texture tutorials

Blender:

Nick Tower blender stuff - awesome! I've had a play with the techniques in these tutorials, and they are awesome! It comes out really well.
http://pages.zoom.co.uk/nick.towers/tutorials/toon_shading_tutorial/toon_shading_tutorial.html

I couldn't get this to work (no reflection on the tutorial, I certainly plan to have another go) it uses textures for the effects.
http://matthieu3d.free.fr/TutoVira2/tut2en.html

A tutorial on anime-like textures for Blender. Its really good too, I've used them a couple of times.
http://mywebpage.netscape.com/ottoana/ANIME_TUT/TUTORIAL.html

There are probably more out there (specifically for Blender), I'll just have a look out for them.

other:
3d studio anime/manga character
http://www.3dtotal.com/ffa/tutorials/maya/non_photo_realistic_shading/realistic_shading.asp

shaders for Maya.
http://www.arcsecond.net/walkthroughs/nprTut.html

Thursday, May 15, 2008

External renderers for blender

Here is a list of free renderers which are compatible with Blender.

http://www.toxicengine.org/ - "toxic is a physically correct global illumination renderer" its for photrealistic rendering. but still, handy to know about.

http://www.aqsis.org/xoops/modules/news/ - A renderman compliant renderer.
I've downloaded this, I will play with NPR shaders with it sometime.

http://sunflow.sourceforge.net/ - another photrealistic renderer, this time in Java.

http://www.pointzero.nl/renderers/ - a list of renderers, I think it has ones for Blender on it as well.

http://shell.studenti.unina.it/~ospite/vrm/section/en/about.html - more of a plugin for Blender, I think. Its a vector graphic renderer.

Yafray (www.yafray.org) is a realistic rendering engine for Blender as well.

a free addon for Blender is: http://www3.sympatico.ca/emilio.aguirre/s2flender.html flender, a blender to flash (swf) converter. Latest version is 2.6, I used an older version, and it was pretty sweet.

blend 2 sketch, a pretty awesome looking converter which exports to Sketch (vector images) http://www.fauskes.net/code/blend2sketch/
Sketch manual:
http://www.frontiernet.net/~eugene.ressler/manual.html

Comics style rendering engine thing. This generates images with really hard blacks, which look like they come out of an old school comic book (like 2000 AD or something). Its quite nice looking, but a hard style to get right.
http://inkulator.sourceforge.net/index.php

Blender specific edge/npr rendering

Blender specific things, there are no doubt a couple I've missed, and a few I've blogged about before (pantograph, freestyle)

a free addon for Blender is: http://www3.sympatico.ca/emilio.aguirre/s2flender.html flender, a blender to flash (swf) converter. Latest version is 2.6, I used an older version, and it was pretty sweet.

blend 2 sketch, a pretty awseome looking converter which exports to Sketch http://www.fauskes.net/code/blend2sketch/
Sketch manual:
http://www.frontiernet.net/~eugene.ressler/manual.html

Comics style rendering engine thing. This generates images with really hard blacks, which look like they come out of an oldschool comic book. Its quite nice looking, but a hard style to get right.
http://inkulator.sourceforge.net/index.php

there was an older one, called SLiM, waaaay back. but i cant find it.

Edit:
I found it! here: http://www.geocities.com/pollythesheep/SLiM.zip wooo!

SliM thread
http://blenderartists.org/forum/showthread.php?t=14088

Renderman things

Renderman uses shaders to do stuff, and there are quite a few shaders out there if you look. There are also some free renderman compliant renderers out there too. renderman isn't a renderer, as such, its a shader description language.

http://area.autodesk.com/index.php/downloads_shaders/shaders_list/

http://txspace.tamu.edu/handle/1969.1/1125

the site is orange! they might be GLSL shaders.
http://www.3dshaders.com/home/

a google book, more to do with open GL shaders, but has some interesting NPR shaders
http://books.google.co.nz/books?id=eTU1SpAdH98C&pg=PA81&lpg=PA81&dq=non+photorealistic+shader&source=web&ots=2A0ifAmIsT&sig=ctjN9sWhh7F1ld6Hn6-RIb94eFo&hl=en#PPR12,M1

maya toon shader.
http://www.vrvis.at/vr/cgr4/cartoonshader/index.html

"Advanced Renderman: Creating CGI for Motion Pictures" has npr in it

http://www.ideepix.nl/work/recent.php?what=NonPhoto has a mention of techniques from this book, I wonder if my local university has it, or how much it is on Amazon....


EDIT:

www.renderman.org has shaders on it, I found this ages ago.]

BtoR is a blender to Rib (renderman) exporter.
http://www.stormwind-studios.com/metadot/index.pl?id=2015

Renderman compliant renderers (non-free, i'llpost some free ones later)
http://www.3delight.com/en/ - 3delight
http://www.sitexgraphics.com/html/air.html - Air
https://renderman.pixar.com/products/tools/renderman.html - Renderman/PRman/somethinglikethat...

Newsgroup Renderman FAQ
http://objectmix.com/graphics/147231-renderman-faq-monthly-posting.html

Wednesday, May 14, 2008

Non-free NPR renderers

I'm upgrading to kubuntu hoary from a gusty backup due to trying to get my phone to pair with my computer (don't ask, I have no idea what happened), which will take a while. I want to do an update once a week, at least, so this week I'm doing a brief roundup of non-free NPR renderers. These are just ones I've found on my travels around the internet, its by no means an exhaustive list. I don't have any interest in them really, other than trying to mimic the techniques.

First off, we have Illustrate! its for 3d studio. find it here It looks pretty. Apparently Aardman's Chicken-Run used it for previz, and Production IG use it for Ghost in the Shell: Stand Alone complex. Nice!

Jot is't exactly non-free, but you have to email them to get it. The web link is broken though, otherwise I'd have a bit of a play and some screenshots.

The reyes plugins have been around for a while, and they make a toon one, as well as a bunch of other plugins for 3ds max, for clothing etc.... http://www.reyes-infografica.com/

http://www.penguin3d.com/

not sure it does NPR, but probably not.
http://www.yafray.org/

Piranesi is a really nice watercolour renderer, it looks like stuff an architect would do.
http://www.informatix.co.uk/piranesi/gallery.shtml

This is a huge page of NPR links. Its pretty old though, and some of the links are dead :( Quite a bit of it seems to be algorhythms and such. http://www.red3d.com/cwr/npr/

oooh, http://portal.acm.org/toc.cfm?id=1274871&idx=SERIES963&type=proceeding&coll=Portal&dl=ACM&part=series&WantType=Proceedings&title=NPAR&CFID=27847381&CFTOKEN=89643736
"Proceedings of the 5th international symposium on Non-photorealistic animation and rendering", which includes such things as Team Fortress!

glsl shaders are in gameblender, not sure how to get them in a blender animation though.
http://www.bonzaisoftware.com/npr.html

according to this article, Poser has some NPR stuff in it. hurrah!
http://images.google.co.nz/imgres?imgurl=http://www.bellaonline.us/~digitalart/efrontier/Poser7/SketchOfMan.jpg&imgrefurl=http://www.bellaonline.com/articles/art52951.asp&h=296&w=439&sz=19&hl=en&start=581&sig2=MOJukFwDLYB8XpJWFzGx-Q&um=1&tbnid=O1nkqWkiudcOBM:&tbnh=86&tbnw=127&ei=9sAqSKyLPKCKpwSGwLSzBA&prev=/images%3Fq%3Dnon%2Bphotorealistic%2Brender%26start%3D576%26ndsp%3D18%26um%3D1%26hl%3Den%26client%3Dfirefox-a%26rls%3Dcom.ubuntu:en-US:official%26sa%3DN

finaltoon looks freakin sweet! check out the gallery, this is a page with some examples of line types.
http://cebas.com/products/feature.php?FID=306&PID=37&UD=10-7888-31-788

http://www.gdi.com.cn/product_detail.asp?BigClassName=SketchUp6.0(G)%D4%F6%D6%B5%B0%E6

http://algorithmicarts.com/gallery/ Made for maya, examples of the EVA renderer and the Expressive Effects plugins for Maya.

Wednesday, May 7, 2008

virtualbox + w2k + freestyle = argh!

I'm not too bad at computers, but I can't get virtualbox to recognise my win2k install disk at all. Though the floppy images work OK. I'l probably end up installing it on a spare hard drive and then imaging it off that, sigh.
In trying to install virtualbox the first time, I nuked my groups, bar virtualbox, so I had no sudo, cdrom access, nothing. Lucky I had a backup of my partition, so I restored from that. The update to Hardy barfed anyway, because I ran out of room (on a nearly 4 gig partition! sheesh!)

Anyway, this blog is supposed to be about Non-Photorealistic Rendering, so here is another dissection of a load of noodles I found on www.blenderartist.org in the forums.


Anyway, from top to bottom, the first node is for the background, the second (yellow) is for the colour of the sun, the next one along (the circle) is what the yellow is added to for the main bit of the sun , the face below that is the sun's features again , it gets added to the other sun bit (white with rays) which is coloured by the yellow. The red is added on top for some more colour, and then the part below is what is used to texture the yellow bits and the red bits, as well as the background a bit. The ramps are used to block certain bits of the texture from the mask, they are then passed through those parts and then composited together. This means you only need one texture to modify the whole lot.
I've tried making this myself, but it didn't turn out quite as good as this one is. I'm not sure if the pictures (any of them? all of them? none of them?) have an alpha channel which I'd missed out. Oh well. I get the main gist and could probably make my own if I wanted to. All in all, its a pretty clever idea :)
Sadly, I can't remember who made this, I'll have to hunt it up.


Edit:
I've got Freestyle to run on Virtual obx, in a win2k environment. It was mostly me being stupid (it needed the floppy images to install, plus you need to install the host extensions into the virtual machine, from the website). That aside, it keeps on crashing when I try to render it. Oh well, I'll have to wait, or get an older version which perhaps will work better.

Wednesday, April 30, 2008

Freestyle in Google summer of code

Yay! But I can't wait that long, no I'm going to install it on a virtualbox instead (sigh) so I'm hunting down appropriate anime names for it. Maybe Agent Paper from Read or Die? hmm.....

Sunday, April 20, 2008

Stencil shader



I think this one looks quite good, it looks like a stencil to me. It could probably do with a bit harder colouring, and the lines ideally need to be more pointy, but other than that, it works. What I would really like to do is add some randomness into the equation, like moving the stencil image a little in random directions, and comp in paint underneath, so it looks like it being sprayed onto the wall, and then painted over, then the next frame sprayed on top of that.....

Fat outlines



This is my first experiment, based a bit on the previously posted blend file, mostly borrowing the idea of expanding the lines to make the outline bigger. This file uses the alpha of the image, then expands it, and then blurs it, and makes it into a real colour in the colour channel, which is then pasted under the image. The image also retains the alpha channel too, for further comping.

Saturday, April 19, 2008

Node rendering




Ok, here is the first of my nodes posts. This is a dissection of an NPR noodles from Blender, by Blenditall.
The original post is out there somewhere, i'm not sure where.

Anyway, this is the node set up and final result:

The node set up uses the first two RGB curves to enhance the shadows and take the highlights out. The blur 10 x10 expands the edges of the lines out, and then the second 'u' shaped RGB curves harden the expanded edge (so its totally black), which is then softened at the edge by the final blur.
This is my version of the noodles, in case the one above is a bit blurry. Its probably wrong, but its pretty close. The lighting is important too, it needs to be above and in front of the object, relative to the camera, and quite powerful as well.

External Renderers

Not too much more right now, I'm off to buy shoes!

Anyway, I 've previously mentioned Freestyle as an NPR renderer (its specifically designed for it). It doesn't like to run under wine,and I'm not willing to take the time right now to piss about compiling it for linux, especially since I can't get it to work :(

Anyway, the other one I've found which is similar is called Pantograph. Its a couple of python scripts which convert renders to SVG (or something, anyway the output is SVG). So this is interesting, in theory you could change the line styles, add a bit of randomness to the lines, whatever. I've not had a play with SVG yet, so I don't know for sure.
But it sounds cool! Link is here:
I should have a bit of a play with it later and see what else I can get from it.

Another thing with potential is Renderman compliant renderers. There are quite a few free ones out there (i'll post a list later). Renderman was invented by Pixarm, and is a shader description language. I'm not sure if its a standard, but its quite popular, and worth looking into as well.

more texture based NPR

As well as the Jules Verne textures, from the same website I got a "sketch shader". I can't find the link now though, the one listed on the site doesn't go anywhere. I might host the blend on this site so they don't disappear.
Anyway, the sketch shader has 9 shaders, all of which are quite awesome. I've been trying to mod them to include a pop-dots style shader, but without much success.
Announcement post
The picture links are dead, though the site is still up. I have the blend file tucked away somewhere.

Here is another one by blenditall, its got the nodes setup, but I can't seem to get it right, I think it relies on lighting a bit as well.
() here are some pictures, including the node setup:

Texture based NPR


For want of a better term (i don't know the proper japanese term for it, no doubt there is one), but this style I'm calling "cute animal manga" (after "cute animal comics", the western style) is a texture based NPR style.
See the post here (its more of a general discussion really):


to quote Sago
"...the toonshaders combined with 1 sunlight always worked fine for me.
Sunlight energy 0.3
Materials:
Emitvalue 1.00 (you might wanna turn that down a bit for white objects, otherwise you can't see the shadowparts on 'em)
Toon difusse shader Ref 0.8, Size 1.5 and Smooth 0
If you wish to make the transition more gradient just increase Smooth (and maybe decrease Size a bit)."

"Jules Verne" textures
This is another texture based NPR, apparently doesn't work that well for animation though. It looks like a lithograph/woodcut style.
I tried to find a picture, but couldn't, though I've seen this before, and it looks really good.

Random Notes:
I've noticed that lighting can play a huge part in making an NPR render look authentic (or not crap, anyway). Sometimes its just using light to blow out the shadows and highlights for the renderer to pick up, or using light to make subtle shadows if you are going for a Disney/Don Bluth cel shaded style.

External renderer: Freestyle

There is also freestyle, a renderer (open source, too) which is compatible with Blender and makes some pretty awesome looking images. I can't compile it at the moment, but I'm updating to Hardy, so who knows, maybe I'll be able to do it. Its annoying there are no binaries out for it under Linux that I could find. :(
Other option is to install virtualbox and w2k and run it under that, but that seems a bit excessive.

OMG First post!!!1!!!1 etc




OK, so this blog is supposedly about my experiments in NPR rendering with Blender. Mostly I want them to be shaders, as I view this as better (less complicated, not "cheating", whatever) than fooling around with geometry, multiple layers etc.

we start with an awesome post at blenderartists.org, that looks quite a bit like water colour, and animates quite well:

blenderartists post
blend file here