Blender 2.8 LANPR [GSoC 2018]

Hey guys sorry I’ve been away for a while from here. Here I come to post the latest update as I conclude this time’s GSoC Project! :slight_smile: Thanks everyone for supporting this project and giving me feedbacks!

Conclusion page on Blender Wiki:

@erickBlender Hello, manual hasn’t made its way into master trunk, so I kept a copy on my website (including images on how to use it)!NPR/2018Summer/Docs/

the document patch is here:

This is no longer needed now :slight_smile:

I’m afraid this will be later implementations. I have plans to stay around a lot longer with LANPR in blender, so when I had time I can implement these features. (which is not much work compared to the main functions)

That will be slow. Writing a direct C code for svg output will be a lot faster.

Here are some output images from the latest development. (Don’t know why the images are scaled…)


Fantastic work, the last pictures are awesome !! Thank you very much for those features, I’m looking forward to see the GP baking !

1 Like

How will this integrate into a render? Say I have a character with toon-shading and I only want the character to have outlines, but not the background. Or is it still too early to talk about using LANPR in a scene?

Currently, you have to create a scene for EEVEE render and duplicate it for LANPR render.
Then, you can mix both render in a third compositing scene.
LANPR render can have a transparent background. You can use alpha over node.

Maybe in future, you could switch between LANPR or Freestyle as a post-processing render.
But actually, it is not impossible to make a mix.

Thanks. It reminds me of how I used to set up hair for Cycles characters before hair rendering was added.

Developers said there will be an viewport composition engine. Probably in development, but I don’t know exactly. However keeping code in one seperate engine is the best way for 2.8 to handle currently.

1 Like

Looking at all the outlines, it is easy to see the form of hard surfaces where there are sharp edges. But I wonder if there is a way to draw topology of curved surfaces? Like a topographical map but using distance from object centre?

That is probably going to be another feature but it will be much later…

Maybe if you just render intersecting lines (this possible?) and use regularly spaced planes aligned to each contour. Else I had a mesh slicing script somewhere or Stackexchange has examples for rendering Cycles contours.

Big ups Yiming. :+1:

Need help guys,
Im having a hard time compiling the latest build,I keep having issues with opensubdiv 3.3.Im really not used to compiling stuff I usually use the simple intructions from blender wiki and it works.Now i spent 3 days trying to build opensubdiv library (needed a lot of new dependencies I wasn’t sure i needed) and if I copy the built library inside Blender lib folder and still get tons of errors related to opensubdiv when tryng to build Blender.Im an artist I really know nothing about this side of things.Could somebody share a build? or help me through the process with opensubdiv 3.3. Thanx

1 Like

@xp8110 I tried to build today and it doesn’t compile in Win 7 64, here is the full log

@Christian_Michelin @ericblender Oh, it looks like a OpenSubDiv error. I’m checking it.
@ericblender If you disable OpenSubDiv in CMake will it be ok?

This problem should be solved now. It is suggested you compile with WITH_OPENSUBDIV set to true, but now it should work either way. Thanks for the report.

Hi, about building OSL3.3, there’s indeed some issue with that…

If you would compile it yourself, you should copy OSD’s lib and include folder into blender’s, not just libs. blender is now undergoing OSD migration, some times I even get errors.

I can share a build later. today I just fixed some stability issue.

It doesn’t help :frowning: I tried WITH_OPENSUBDIV true and false but still it doesn’t compile.
here is the full log WITH_OPENSUBDIV ==on

From the error it liiks like you didn’t use the OpenSubDiv 3.3+ version libraries and header files.
It may take a while to set up if you don’t have that, but anyway I’m going to upload a relatively stable windows build today :slight_smile: .

thanx alot :wink: that would be great.

Do you know if 2.8 master will be updated to OSD 3.3 soon?

Hello everyone, here’s today’s build of blender2.8 LANPR branch!AkHWjiagaDuPrDe441GlAIRqE6ku

Developers are re-writing the APIs and maybe also upgrading, but when will it be ok I don’t know.


testing right now.The rendering speed for animation is amazingly fast :slight_smile:
Here are some of the issues I found while testing:

-with Software rendering the camera seems to be offset in the renders its either the position or the field of view is changed a little bit,it does not respect original camera (with Dpix it renders ok)

-Tiny little gaps appear in some lines on some frames when rendering,when playing animation it makes it Flicker a little bit.

-Also when camera gets too near of objects alot of intersections that are backside appear.

-when using Dpix a lot of times I get ghost image of the intersections from previous frames in viewport. It does not go away unless I switch to another renderer and switch back to Lanpr.

-I cannot set thickness above 1.0 for intersecting lines.

Anyway,its still incredible devellopment in such a short amount of time.Great work!!! :slight_smile: I will keep testing.

I read that you adapted multisample functions. Is there a way for user to increase AA/sampling values ?

1 Like