PDA

View Full Version : NPR Line creation test!!! Challenge



paulhart
01-18-2018, 06:16 PM
I am starting a new thread to initiate a challenge. In my other thread, I was bemoaning the absence of demo/videos of good variable line using NPR in Lightwave. Feeling overly dense, I went into the DEMO Scenes that come with 2018 and looked at their line work. All well and good, except they all just used a Turbulence effect on the Taper of the lines. This does generate a nice variable line, BUT . . . not one of them showed any effort to respond to light source, in the line rendering. The Cel Shading, responds just fine to the light source, but NADA, ZIP relationship of the lines to light source. Major disappointment!!! I checked out one of RH's videos to see if I could adapt the settings to the line, working with Light Info, Item Info, even tried a Null, nothing, Normalized, piped through the Dot Product, nothing seems to work. I can make this work in Blender just fine, but it is a Post Process currently and I love the way the Lightwave does it on screen, in Real Time, which is great for artistic tweaking. No Japanese animation would be considered without a light responsive line!!
So, .. .. here is the challenge. I am attaching a simple scene, just a sphere, graded cel shaded, on a plane, with a portal light. I am including the Object file, with the Scene file but this can be easily created on the fly by anybody, so you don't have to download the file, but my Node setup is as shown in this image.
I will be happy to have someone demonstrate the limits of my knowledge. Newtek employees and Beta testers are welcome, as is anyone else.
Let the challenge begin!!
139580

hypersuperduper
01-18-2018, 11:57 PM
Use an incidence node. Light dir > incidence > taper that should work

Ztreem
01-19-2018, 01:58 AM
This is one way of doing it.

139590

Skonk
01-19-2018, 02:28 AM
What is it you're trying to recreate by having the edges respond to light?

Cel shading and line edges are generally designed to represent the effect of hand painted cels, so the inked edges would have no response to light in the real world anyway; the thickness being based on pressure more than anything else.

So not sure why you would have expected the demo scenes to have edges that are modified by light direction.

hypersuperduper
01-19-2018, 04:11 AM
What is it you're trying to recreate by having the edges respond to light?

Cel shading and line edges are generally designed to represent the effect of hand painted cels, so the inked edges would have no response to light in the real world anyway; the thickness being based on pressure more than anything else.

So not sure why you would have expected the demo scenes to have edges that are modified by light direction.

A typical cartooning technique is to have the outlines of a shape that are away from the light a little thicker than those toward the light. It is a subtle way to give a simple line drawing a little bit of substance and weight.

paulhart
01-19-2018, 09:56 AM
hypersuperduper, Thank you for responding, as I was beginning to think all those years of inking drawings in art class were a hallucination. ZTreem, thank you, I will try it out and share my results. I knew that with the right nodes, it should be possible but I had not gotten this result.

paulhart
01-19-2018, 10:16 AM
I am a fan of hand-drawn ink work. One of my favorites in the realm of graphic novels, is Jason Brubaker. I get a little 'sideways' at some of the ways he write his themes, but that's not the point. He does all of his drawings, hand inked, with a Pentel brush tip pen. HIs first book is "remind" and now he has been working on "Sithrah," both of which have beautiful layouts, line work and creative use of textures and color. Take a look, I am including a single page and a link to the 'remind' book, which you can read online, but having the hard copy is wonderful.
Link to 'remind' online. I would love to be able to moimic this style, in animation, in Lightwave.
http://www.remindblog.com/custom/remind-spread-4/
Link to 'Sithrah' also on line at Webtoons http://www.webtoons.com/en/fantasy/sithrah/list?title_no=524
139598

paulhart
01-19-2018, 03:18 PM
Here is a successful render, using the Node setup that ZTreem demonstrated. Thank you, now on to further explorations, trying to get thicker lines in Occluded (tight angled areas), and other tricks. I also added some turbulence to rough up the line quality.
139609

paulhart
01-19-2018, 04:18 PM
Use an incidence node. Light dir > incidence > taper that should work

If you have an example that works, please share it here so we can all learn.

Ztreem
01-19-2018, 06:22 PM
If you have an example that works, please share it here so we can all learn.

It's the same thing I did, but without the old layer nodes. It looks like this.
139618

Sekhar
01-19-2018, 06:27 PM
I am a fan of hand-drawn ink work. One of my favorites in the realm of graphic novels, is Jason Brubaker. I get a little 'sideways' at some of the ways he write his themes, but that's not the point. He does all of his drawings, hand inked, with a Pentel brush tip pen. HIs first book is "remind" and now he has been working on "Sithrah," both of which have beautiful layouts, line work and creative use of textures and color. Take a look, I am including a single page and a link to the 'remind' book, which you can read online, but having the hard copy is wonderful.
Link to 'remind' online. I would love to be able to moimic this style, in animation, in Lightwave.
http://www.remindblog.com/custom/remind-spread-4/
Link to 'Sithrah' also on line at Webtoons http://www.webtoons.com/en/fantasy/sithrah/list?title_no=524
139598

Why not just use the "Shrink Edges With Distance" option to get the depth effect on lines, as below

139619?

VermilionCat
01-20-2018, 01:42 AM
Shrink Edges With Distance is very limited compared to Distance Gradient in the node editor which is no longer available in 2018. Sigh...

JCG
01-20-2018, 08:53 AM
I love Ztreem's method because it's so easy to make small variations along the line by just adding more keys to the gradient. My problem was the aliasing. Even with the variance, it did not look inked because even with crazy amounts of samples ( I think I tried up to 500), it still had a bit of stepping. That immediately killed the illusion. Fortunately, in NPR, having a filter radius greater than 1 doesn't look bad. With a filter radius of 1.32 and just 7 samples, I really like the line LW makes.
139625
and with a slightly less inky color, it looks a lot like a cartoon line.
139626
I quite like these results; thanks for the thread!

paulhart
01-20-2018, 12:13 PM
and JCG, thank you for your contributions. I will investigate your findings, and report back with my own efforts, time allowing....

paulhart
01-21-2018, 05:34 PM
Okay, back to weird results, and have no clue. I copied the first sphere, moved it over, and mangled it a little to get some edges. I then turned on 'Sharp Creases' and I ended up with some kind of weird transparency effect. I was only expecting the edges facing to have any of this effect. I will investigate, but it's not what I expected.
139652

paulhart
01-22-2018, 05:04 PM
I am in discussion with Customer Support, on a BUG Report, over the Line Rendering. I am including an example here of the output. Left hand objects have smoothing turned on, while the right hand objects have the smoothing turned off. The Silhouette rendering of the lines works fine on either side, but the Sharp Creases are incorrect on the right hand models. The areas circled in red are errors. I am also including the test file, for anyone else to investigate. These all worked fine in 2015 and Version 11, and I had higher hopes for NPR with 2018.
Could someone else try this also, as support is telling me that the right hand objects are not "well designed" for the effect I want. ??? What?? I want Sharp Creases to be rendered, which does not include Flat Faces, and certainly doesn't include curved edges going away on the opposite side showing thru.
139667

Sensei
01-22-2018, 05:21 PM
The areas circled in red are errors. I am also including the test file, for anyone else to investigate.

They appear if Smoothing is off,
and disappear if Smoothing is on (and angle threshold is high).

You can make surface flat, by plugging Input > Geometric Normal to Normal input.

paulhart
01-22-2018, 05:40 PM
Sensei, thank you, I was beginning to think that I was the only one. Sharp Creases worked fine in 2015 and Version 11. Perhaps someone who still has those version can check. I ran out of disk space so I only keep the most recent version on-board. Customer Support was trying to tell me that I just didn't design the "Sharp Sphere" correctly to display lines in NPR, and I about fell over, what is the designation Sharp Creases meant to do??? LOL

Sensei
01-22-2018, 05:51 PM
You can always make lines inside of regular Surface Node Editor, instead of Edge Node Editor, like:
http://forums.newtek.com/attachment.php?attachmentid=139671&d=1516668593
139671

jwiede
01-22-2018, 06:03 PM
Sensei, thank you, I was beginning to think that I was the only one. Sharp Creases worked fine in 2015 and Version 11. Perhaps someone who still has those version can check. I ran out of disk space so I only keep the most recent version on-board. Customer Support was trying to tell me that I just didn't design the "Sharp Sphere" correctly to display lines in NPR, and I about fell over, what is the designation Sharp Creases meant to do??? LOL

I've still got both (albeit for OSX), I'll see how they look in 11.6.3 and 2015.3 and try to provide images....

Ah, bit of a chicken-and-egg problem, do you have both 11.x and 2015.x versions of the scene, or just the LW2018 version?

In order to properly test they worked in 11.x and 2015.x, I'd need scenes for those versions (as well as prior-versioned LWO). Taking the LW2018 scene and object and "back-exporting" isn't really legit for testing they worked properly in older versions.

Sensei
01-22-2018, 06:04 PM
Use incidence node to filter out polygons that are behind..

http://forums.newtek.com/attachment.php?attachmentid=139672&d=1516669439

139672

paulhart
01-22-2018, 06:06 PM
jwiede, great, look forward to confirmation, or not, which ever, will be instructive. Sensei, fun stuff, but the appearance of those lines on the 'far side' seems unaccountable for a solid object??? Anyone else??
Sensei, just saw your latest post using Incidence and multiply to sort them out a bit, but the spurious extra lines on the forward cube(right-hand) flat faces area, do not qualify as 'Sharp Creases' so they shouldn't get drawn. Did you apply your technique to the "Sharp Cube" also.
Also noted is that the Curved Line (thick) on the right-hand sphere still shows up some???
I will try to see if I can replicate your settings and tweak.
Customer Support has gone home for the day, so we are on our own until tomorrow. Thanks everybody.

Sensei
01-22-2018, 09:33 PM
I loaded this line-spheretest.lwo in fresh new scene, clicked Edges > Sharp Creases.. and what is behind is not rendered..

So, you need to send them bug report with exactly the above scene, to figure out why it's causing issue, and fresh scene does not.

paulhart
01-24-2018, 04:46 PM
I continue trying to get creative results with Line Rendering, and I thought of Sensei and other creative coders, as I am not the person to 'code nodes' for Line Rendering, but they might be??? I have used Blender 2.79+ which has a great variety of choices, but Freestyle is a Post Processing Line Render, which is annoying as there is no immediate feedback as there is in VPR and Lightwave, but Lightwave lacks some features.
I would welcome a more direct way to adjust line thickness, so that I could have a silhouette which has a value of '0' for half the way around, then ramps up to the full value, or got thicker in areas of Occlusion.
I would love to have Linesets, in Lightwave, like I have in Blender, where a given Edge can have more than one Line style applied, and Multipy functionally so they combine.
I would love to have a Sketchy effect for the lines in Lightwave.
I would welcome a Smooth function to soften the look of the lines rendered.
I really want to have a Set Edges option in Lightwave, in which a given Edge can be "Marked" and then have a line style applied just to it. This can work wonders on facial lines, as I can select three contiguous edges in a face loop, 'Mark" them and then have a Tapered line assigned to that Marked set, so the line starts from '0' swells, then fades again, all in the course of three polygon edges of a loop. Another way that this can be used is to 'Mark" the line down the center of the nose on a character, and then set it so the line only shows, or gets rendered when the angle is great enough, as it the figure is turn 3/4 view.
These are some of options that I would like Lightwave to be able to do. I continue to play with Cos, Sin, Tan, Vectors, etc. but not much difference, as I do not know what I am doing.
I have submitted a 'Bug" report to Lightwave on the 'odd' rendering of the surface of the 'blue' objects in this render, and have not heard back from them.
Note that I have created a "stitched effect" on the tan sphere, but Weight Painting it and using that info for "Other Edges." Almost there, but the Falloff of the Weight Values gives the stitch effect, rather than just the Weighted line as hoped. I added some pylons to test Intersecting Edges, works as expected.
139712

Sensei
01-24-2018, 05:28 PM
Stitch effect can be filtered out by using Logic node this way:

http://forums.newtek.com/attachment.php?attachmentid=139714&d=1516839827

139714

ps. Ignore this "5" in "If True".

ps2. Plug Weight node output also to "True", and it'll be passed to Taper input.

Sensei
01-24-2018, 05:39 PM
I used two weight maps, one for filtering with 0 and 100% only, second one for giving value for Taper. And edge smoothly disappeared (two edges Set Map Value 0%).

http://forums.newtek.com/attachment.php?attachmentid=139715&d=1516840605
139715

paulhart
01-24-2018, 07:04 PM
Well done!! I got the 'stitch' effect to disappear, thank you, but something about the weight values and the 0 to 100 didn't make it thru to me as I can't yet generate the tapered effect on that line, but!! great work on getting a "Marked" seam effect. I don't know if you were able to get rid of the 'dark silhouette' lines that curve thru the back of the blue sphere. I see that you were able to get the small lines to not show thru, however, in the bug report I submitted, it should be noted that the only thin lines that should show up on the blue sphere would be the 'sharp' edges and not all of the polygon edges that you show. That ends up looking like "Other Edges."

Sensei
01-24-2018, 09:19 PM
Well done!! I got the 'stitch' effect to disappear, thank you, but something about the weight values and the 0 to 100 didn't make it thru to me as I can't yet generate the tapered effect on that line, but!! great work on getting a "Marked" seam effect.

Load object in Modeler,
select edge, select loop,
W drop-down, [new], Create "Weight" Weight Map, no need to change settings, (Initial 100%, only on selected edge loop will be used)
W drop-down, [new], Create "Weight 1" Weight Map,
drop selection,
select two edges on previous edge loop, Maps > Set Map Value, 0%.
Then in Layout node like on 2nd screen-shot.
Basically 1st weight map has to have 100% on edge loop, or 0%, all the rest,
2nd weight map can have intermediate values.

Sensei
01-24-2018, 09:25 PM
I don't know if you were able to get rid of the 'dark silhouette' lines that curve thru the back of the blue sphere.

Set Edge Z Scale to 1.0.

After adjusting it, incidence trick stopped being needed also.. :)

paulhart
01-25-2018, 09:16 PM
Over on Blender forum I am participating in a thread about Line Rendering, (always, I know) A person there was trying to tell me that Freestyle works in Blender Cycles. My concerns are a bit more specific. I have an animation/illustration project in mind and Blender 2.8 is one of two 'target' software platform for making it work, however, please note?! I am asking for RealTime line rendering solutions, not Post Process, which is what Freestyle is currently, whether it is with Cycles or Blender Internal. Trying to get a particular "look" to the line qualities can be excruciating and irritating, tweak, render, reject, change one little parameter, render, check, rinse and repeat.... not very satisfying or artistic in nature. I am currently exploring Lightwave 2018.0.1 (latest version) and am submitting bug reports and recommendations to this team, with some elements being already corrected and potentially included in 2018.0.2?? What is so importantly different is that the lines are rendered on screen, in RealTime in the VPR window, so I open the Node Editor for a particular object, tweak, add, re-route, nodes, and watch it update with every change!!! Amazing difference. However, it currently does not have the same level of 'granularity' that is available in Blender Freestyle, with Sketchy, Smoothing, etc. I am lobbying Lightwave to try to incorporate some of the advantages of Blender Freestyle, just as I am lobbying Blender development community to come up with a solution for Line Rendering for the 2.8 series. Grease Pencil is doing wonders, but it is all hand drawn, then manipulated, marvelous, yes, but it should be in addition to a 3D line rendering solution so the two approaches can work hand in hand.
Here is a very simple example, but note that, this updates on screen with every 'twitch' of the parameters and node setups so I can know what a final render is going to look like, with many thanks to Sensei and others for collaboration.
What is doesn't have at the moment is the ability to set LineStyles, like Blender, and have multiple LineSets applied to the same edges and Multipled to get a complete line. It does not allow assignment of "Marked" lines, for specific Style treatment, but I have come up with a way to get it to work, along with a developer (Sensei) collaboration. Lightwave has great potential, and I am hoping some of the work being done in the Japanese studios gets imported.
139752

paulhart
01-26-2018, 04:32 PM
I know that it is being worked on . . . from what I am told, but here is an example of trying to use this on an actual project, rather than a simple test file.
This is a character that I created awhile ago for an illustration/animation project that I was hoping to use, but it is not feasible in its current state.
The 'bug' is in the Edge Shading, making the choice for Sharp Creases, WHAT sharp edges??? And Other Edges generates all Edges being rendered, even tho I attempted to use the same Node setup as the simple project to generate some lines around the eyes using a weight map for the Other Edges. It shouldn't be??!! I have to believe that the Japanese studios wouldn't tolerate this in production work so why do I have to??? Annoyed, I know, so close, but then.....
139785139786

paulhart
02-01-2018, 09:51 PM
In a related issue, I would welcome the ability to "Exclude" or "Include" any given line segment, by Assignment via Vertex or Weight Map. Note in the relatively okay render to the left above, I have ended up with black 'silhouette' lines around the eyes and the mouth. Not something I want at that strength, wish I could "Exclude" them or make a group and assign a more reduced Lineset to them. These are concepts that are native to Blender and other software. It is a level of 'granularity' which needs to be expected at this stage of NPR work.

hypersuperduper
02-01-2018, 11:31 PM
Weight Maps can easily be used to modify the thickness of lines, as can anything else you can plug in to the nodal network such as distance to a null or a texture. Note: There is a bug concerning intersecting edges. This type of edge doesn’t currently respect weight maps or textures, but this has been reported as fixed in the next patch.

Ztreem
02-02-2018, 04:07 AM
The 'bug' is in the Edge Shading, making the choice for Sharp Creases, WHAT sharp edges???
139785139786

You know that the smoothing threshold in the surface editor is defining the sharp creases, right?

paulhart
02-02-2018, 12:10 PM
Ztreem, thank you for commenting. I went in and found the Smoothing Angle set way too low on some of the objects, particularly 'the body' which generated excess lines for Sharp Creases, so that is helpful... not entirely sure how the low value ever got set??? I was aware of this, but do not remember setting it "so low??" However, the 'bug' in Other Edges, persists, and I can't get it to respond to differential Weight Maps, in any way like the simple Cube/Blob exercise done earlier. I will take them at their word that some kind of bug fix was warranted and will be included in the next incremental Bug Patch.

paulhart
02-02-2018, 12:36 PM
Hypersuperduper, Hello... If you could demonstrate, with examples, nodes, settings, etc. I know it would help me, and I can assume it would help others. You say it rather casually. . . but it isn't obvious, and I have any number of Weight Maps, and Logic Nodes, trying to make edges appear or not, let alone Tapering, in response to Weight Maps in any controllable way. Right now I have a Weight Map for the full body, and then a Weight Map with the eyes and mouth weighted with negative values in an attempt to tell the Silhouette Edges to NOT render them, but I can't seem to get it to respond, and Tapering, whoa, not even in the mix... ;->)

Ztreem
02-02-2018, 01:42 PM
Hypersuperduper, Hello... If you could demonstrate, with examples, nodes, settings, etc. I know it would help me, and I can assume it would help others. You say it rather casually. . . but it isn't obvious, and I have any number of Weight Maps, and Logic Nodes, trying to make edges appear or not, let alone Tapering, in response to Weight Maps in any controllable way. Right now I have a Weight Map for the full body, and then a Weight Map with the eyes and mouth weighted with negative values in an attempt to tell the Silhouette Edges to NOT render them, but I can't seem to get it to respond, and Tapering, whoa, not even in the mix... ;->)

You have to think in terms of 0-1 as values for tapering and opacity. So a weight map with a value of -100 would equal to -1 and I’m not sure that is a good value for taper lines. Use a weight value of 0 for no lines and 100 for full line thickness. If you want the line to taper you need to do a gradient from 0 to 1(0-100 weight value in a weight map).

hypersuperduper
02-02-2018, 02:13 PM
Hypersuperduper, Hello... If you could demonstrate, with examples, nodes, settings, etc. I know it would help me, and I can assume it would help others. You say it rather casually. . . but it isn't obvious, and I have any number of Weight Maps, and Logic Nodes, trying to make edges appear or not, let alone Tapering, in response to Weight Maps in any controllable way. Right now I have a Weight Map for the full body, and then a Weight Map with the eyes and mouth weighted with negative values in an attempt to tell the Silhouette Edges to NOT render them, but I can't seem to get it to respond, and Tapering, whoa, not even in the mix... ;->)

here is a screenshot of a dead simple setup.
139881

(how do I make images big btw?)

one weigh map inner holes 50% to everything else 100%

jwiede
02-02-2018, 03:29 PM
Hypersuperduper, Hello... If you could demonstrate, with examples, nodes, settings, etc. I know it would help me, and I can assume it would help others. You say it rather casually. . . but it isn't obvious, and I have any number of Weight Maps, and Logic Nodes, trying to make edges appear or not, let alone Tapering, in response to Weight Maps in any controllable way. Right now I have a Weight Map for the full body, and then a Weight Map with the eyes and mouth weighted with negative values in an attempt to tell the Silhouette Edges to NOT render them, but I can't seem to get it to respond, and Tapering, whoa, not even in the mix... ;->)

It does seem like "include" and "exclude" of specific object edges would offer a cleaner, more efficient workflow for selection purposes, versus trying to use weightmaps+logic/gradients. Using weightmaps + logic/gradients seems to result in a bunch of maps and nodes feeding each object's different line types, creating lots of interconnected behaviors and side effects, and generally complicating object/scene maintenance.

File a feature request with a proposed mechanism and see what they say?

Ztreem
02-02-2018, 03:44 PM
It does seem like "include" and "exclude" of specific object edges would offer a cleaner UX for selection purposes, versus trying to use weightmaps+logic/gradients (which tends to lead a lot of maps and nodes for each object, with a lot of tightly-interconnected behaviors to check, complicating the object/scene maintenance).

File a feature request with a proposed mechanism and see what they say?

Could work in some cases but for example a silhouette edge is very hard to select as it is based on the viewing angle from the camera and for animation its even harder. Gradients based on objects positions is more flexible, I think. More options is always good though.

jwiede
02-02-2018, 03:55 PM
Could work in some cases but for example a silhouette edge is very hard to select as it is based on the viewing angle from the camera and for animation its even harder. Gradients based on objects positions is more flexible, I think. More options is always good though.

Agreed, that's a particular workflow that may be less suited to specific edge inclusion (though exclusion still seems to offer value there). At the same time, Paulhart's described a bunch of cases where having direct edge exclusion would be a lot more efficient UX than trying to reduce/negate influence using weightmaps, etc. Some of the prior inclusion scenarios he's described also seem more efficiently-defined using direct inclusion, versus trying to manage weightmaps, etc.

IMO, offering direct inclusion/exclusion edge sets clearly offers more than enough UX/workflow efficiency benefits to merit its addition (versus only having weightmaps+logic/gradients). At the very least, it's worth a feature request. Whether it ever gets implemented is a completely different issue.

Ztreem
02-02-2018, 04:16 PM
Agreed, that's a particular workflow that may be less suited to specific edge inclusion (though exclusion still seems to offer value there). At the same time, Paulhart's described a bunch of cases where having direct edge exclusion would be a lot more efficient UX than trying to reduce/negate influence using weightmaps, etc. Some of the prior inclusion scenarios he's described also seem more efficiently-defined using direct inclusion, versus trying to manage weightmaps, etc.

IMO, offering direct inclusion/exclusion edge sets clearly offers more than enough UX/workflow efficiency benefits to merit its addition (versus only having weightmaps+logic/gradients). At the very least, it's worth a feature request. Whether it ever gets implemented is a completely different issue.

I agree completely. This ia also a very good example where a native weight/texture paint tool in layout would be perfect. I wonder why that is so hard to implement? its been requested since at least lw 7.5 and third party has proven it possible.

hypersuperduper
02-02-2018, 06:25 PM
how would edge sets work since they are generated on the fly?

I am not sure how much more granular it can get. you can already disable/enable edges generated by different situations without even opening the node editor silhouette, intersect, sharp creases etc... but since the edges are generated on the fly based on the viewing angle relative to the geometry I am not sure how you would organize beyond that.


You can already steer the thickness of nodes with a null position and a falloff, and lw2018's falloff nodes make that super simple, you dont need to set up any complicated logic, just two nodes, an item info and a falloff. you can easily chain them together as well with simple arithmetic nodes. I am working on a cel shaded character on which I layer several different inputs to drive the line thickness .I am using a light incidence, a procedural and 5 different nulls for animatable line thickness. it works very well.
139904

Here is a screen grab of the null based falloff nodal for edge thickness (its in a compound node the gets factor it into the light incidence and procedural thinning before connecting to the edge outputs, but you cant see that part here). I have five nulls I can move around and scale to thin the edges as needed. I have them on the hands and feet and head right now. it works well.
139905

gar26lw
02-03-2018, 01:27 AM
you really want global edge rendering control with local object override.

paulhart
02-03-2018, 12:08 PM
A bit of clarification on my part. I have been a strong Lightwave supporter, and continue, even more so now, but some show and tell examples may help the discussion. I worked for a year as a User of Freestyle during development, offering suggestions and critiques, while actively maintaining the 32bit builds of the Blender Freestyle branch on GraphicAll.org. I appreciate all of the artist friendly choices that it offers, but find it frustrating in its current implementation, which, due to the Render Engine it is tied to (Blender Internal-which is being deprecated) it is a Post Processing Line Render, happening as a separate function at the end of the render. This means that there is a long, tweak, render, review, repeat & rinse cycle that is a bit blind. The VALUE of Lightwave is the immediacy of the on-screen display of any changes I make, this is wonderful. The current downside, is convoluted and elaborate node trees, with math and logic functions tied to Nulls, that will work, if constructed correctly but are overly "noodle-node" centric and not at all artist friendly, as I do both, preferring the more direct approach of Blender. The first step, for Edge Marking is in a menu under Edges, Mark Freestyle Edge (or Clear) in which any selected set of Edges can be selected. Much like Weight Map or Vertex Map, but without any Falloff, just the Edge itself!!!
139911
I am including a series of menus, the first of which is the Lineset Menu. Here, a Lineset (one or more) is defined by five(5) buttons, with 'switches' to set on or off below. More parameters than most will need but set to meet almost any set of conditions about Inclusion, Exclusion, Silhouette, Edge Mark, etc.
139909

Once these are in place the emphasis shifts to LineStyle, which has six(6) tabs for the definition of a LineStyle, which is going to be applied to a LineSet. Note that here, I have it on Strokes, with Chaining checked, and Sketchy chosen, for a wonderful hand drawn style line.
139910
For ease of commenting and digestion I will include subsequent Menus on the following posts. I hope this helps in the discussion. Please remember, these are from Blender, but similar types are in Maya, Pencil(Max). The REALLY exciting aspect of Lightwave is the immediacy of feedback, on screen!!!

paulhart
02-03-2018, 12:26 PM
Second post in this series.
In the LineStyle Menu, the next tab is Color. I have opened the Add Modifier Menu so that the options can be seen. Some of these Modifiers are the same, but are under the other Tabs to effect that parameter, and all of them are part of the Linestyle, of which you can have many.
139912
As noted in this Alpha Tab, the similar Add Modifiers, but this time applied to the Alpha of the Line. Modifiers can be stacked, and their order in the stack can be re-arranged.
139913
Next Tab over is Thickness, with its own set of Parameters and then Add Modifiers options, stackable and re-arrangeable.
139914
The final one I am going to include is the Geometry Tab, even tho there is a Texture Tab, this branches off to Images to be referenced, etc. and needs separate discussion.
Note again, the Add Modifiers option which I have pulled down. These also can be stacked, re-arranged, and have there own parameters inside of the Modifiers, once chosen.
139915
If and when Blender implements a more RealTime Line Rendering solution to their Cycles and EeVee Render Engines, (not yet prioritized for the Blender 2.8 release, but actively being discussed) which would allow the tweaking of these Menu items, to be coupled with On-Screen feedback, their acceptance will sky-rocket in the Anime, Animation, Illustration, Arch-Viz market places. Lightwave already has the RealTime display, which is great, it just needs less noodle/node logic/math interface. All of these are behind the Tabs and Menus and Modifiers, and if I want to get really adventuresome, I could, but I don't need to, but Blender is missing the crucial RealTime aspect, which Lightwave HAS.

robertoortiz
02-03-2018, 12:30 PM
thanks for this thread..We will me mining it at work.

paulhart
02-03-2018, 01:51 PM
thanks for this thread..We will me mining it at work.

Who is this mysterious "We" that you refer to, am I to imagine your group in Washington, if so I am intrigued to imagine how it will be used. At least 'someone' in the field it paying attention, now if a Newtek developer just chimed in .... but that would be a showing of the cards, so not likely. I am forever hopeful that this can be implemented in Lightwave, full artistic controls, with on-screen display feedback. The nodes and math are always still there for those who think easily in that vein, and as some have already demonstrated, to good effect. My preferences are for this more visual, interactive mode.

paulhart
02-05-2018, 12:34 PM
So, we have a slight impasse, as demonstrated in this thread, a bit of the 'blind men' and the elephant analogy. There appears to be three(3) distinct ways of approaching NPR related solutions.
-----The first method(1), we can call node-centric_math/logic, is very comfortable with Nodal mazes and assumes that a little Trig, piping, and math/logic can solve any problem, and . . . they are right. This style is dominate in Lightwave currently, whereas we used to have unRealXtreme2 up to version 11 of Lightwave
-----The second(2) method is more inclined to work through menu options with verbal clues, ala Blender Freestyle, where some of the language is borrowed from its technical context of development but it can be navigated, as the descriptors are LineWidth, LineTaper, etc. with sliders, which again, are excellent for any who work in this manner, and, again, they are right.
-----Finally we have the third(3) method, which uses imagery, Presets, visual examples, with a minimum set of variables attached to the visuals, to allow variations and these can then be saved by the user, complete with an icon sample of the style created for ease of selection later, and, again, they are right.

Now move to the production setting. The Art Director looks at the dailies and comments, "I want it moodier, and softer, . . " while doing show and tell with images cut from magazines and photo stills, to which each of the different mindset TD's would offer their different approach.
(1)"Yes, I can whip up a fine Nodal salad to do just that." Art Director responds, with "Okay, show me what you have, as soon as you have it."
(2)"Oh, I think a few adjustments of the sliders in the menu trees will take care of this." Same response by the Art Director, but it may be demonstrated on screen, by this approach, in which case the feedback curve is much quicker and closer to the Art Director's vision.
(3)"Here are some examples on screen of the scene showing variations that I think solve your request." To which, the Art Director, points at the corresponding example and says, "That's it!!," or .... "Something between these two is what I am looking for."

All of these are viable solutions, and, again, they are all right, but the expectation is what does it look like, on screen. Each of us who work with NPR falls into one of these three(3) styles of working, with some feeling comfortable moving between more than one method, but ultimately it is a question about what shows up on screen, how fast can I get to the solution, and how easy is it to adjust and modify (tweak) for the effect I want.

Discuss this among yourselves and let me know. I tend to want method (3), can certainly use (2) and I am able to flounder around with (1) but at the end of the day, I want it on-screen, in RealTime, so that the Art Director in me can just get on with the process of creating "Art."

paulhart
02-05-2018, 12:47 PM
I know that I am hitting the wall, when my Google searches return postings I did years ago, on this forum and others, along with other people responding to my ideas with requests of their own and suggestions as to how this can be accomplished.

Lightwave used to have unReal Xtreme2 from d-creation of Japan, but stopped at version 11 of Lightwave and it was free so there was little incentive to update, particularly due to underlying code changes. I have written to d-creation, but suspect it is a dead-end now.
http://d-creation.sakura.ne.jp/plugin/unreal2/index_japanese.htm

Great article from awhile back, talks of Freestyle for Blender and the stand alone Jot. I have threads on BlenderArtists.org/forum, current and ancient. The upcoming Blender 2.8 has great possibilities, but Line Rendering as late on the list of priorities.
http://libregraphicsworld.org/blog/entry/freestyle-jot-and-the-future-of-non-photorealistic-rendering

PSoft Cel Shading and Line Rendering, 3dsMax I sent emails to them years ago about porting to Lightwave, no plans.
https://www.psoft.co.jp/en/product/pencil/3dsmax/

Illustrate! for 3dsMax
http://www.davidgould.com/Illustrate/IllustrateForMax/Illustrate53.htm

SketchFX for SketchUp
https://www.fluidinteractive.com/products/sketchup-extensions/sketchfx/

re:solve, Non-Photorealistic Rendering (NPR) Kit for modo. I wrestle too much with modo on Shader Tree and NPR Kit, using modo primarily as a replacement for Modeler in many aspects, particularly in UV Map creation.
http://resolve.ca/modo-non-photorealistic-rendering/

UnReal Engine from Epic Games, cel shading plugin. I have explored this, but it means moving all the elements of the production into UnReal, which has its own set of learning curves and constraints.
https://www.unrealengine.com/marketplace/character-cel-shading-pack#&gid=1&pid=1

Sketch & Toon Plugin for C4D. You can look this one up, if you want to, but it is for C4D, which I don't have and won't buy.

paulhart
02-11-2018, 10:58 AM
Quote Originally Posted by paulhart View Post [http://forums.newtek.com/showthread.php?155957-If-you-use-&-care-about-your-(lw)-investment-this-is-esesential-reading-at-last!&p=1536845#post1536845]
So, the question I would return to, is, does this allow the possibility of "including" or "excluding" a 'Lineset' to which Line Rendering style could be applied. What's the point of being able to query the system to find edges, if I can't then do something, like render a given line segment in some preferred style?? This assumes that an addition is made to the Edge Rendering Menu for 'selected' Edges, and that a Selection Set of Edges can be saved, without the excess baggage of a Falloff, that currently comes with Weight Maps of a given Edge.

[The encouraging response by jwiede on the other thread]
Immediately? No. It is possible, though. There's some infrastructure needed first, as you note there needs to be a tool to construct edge selection sets visible within Layout, and each shader where applicable would need modification to accept those edge sets, associate render properties with them, and so forth. If it's important to you, then I recommend filing feature requests asking for selection-by-edge-set and associating render edges properties by edge set as well.

Also, some enterprising third-party developer might be willing to provide most of the pieces needed (for cost, likely), along with nodes to access edge sets, and custom shader nodes that understand and can associate properties with those edge sets.

jwiede
02-11-2018, 11:20 AM
The biggest obstacle at the moment is getting the shaders to accept edge sets as input. I'm trying to suss out a way to do so that doesn't require shader modification, but that's a tricky problem. Writing something to allow load/save of edge selection sets in Layout is fairly trivial by comparison, but there just isn't a lot you can do with an edge set in Layout at the moment. Newtek will presumably fix that given time, but that doesn't help now.

A mechanism could just programmatically (behind the scenes) do what you've already tried, converting the edge set to weightmaps on the fly and then submitting the weightmap/vmaps instead (and that is likely a useful node in any case, because shaders accept those now). While that approach might allow some additional flexibility and/or precision to be added, though, it still likely has the same "bleed issues" you already encountered. As I said, a tricky problem but I'm not giving up on it yet.

The alternative, providing alternate NPR shader(s), that support edge set input, and so forth, is quite a substantial undertaking. Not impossible, and if that's the only way to do it now, I have some ideas there, but I'd first prefer to convince myself there's no way to get edge sets working (well) with the existing LW2018 NPR rendering functionality.

JCG
02-17-2018, 05:20 PM
I got a link to a video where Mr. Tasos Anastasiades talks a bit about the difference between boring lines and interesting lines.
His case is a bit different since Poser doesn't seem to give any options for making interesting lines, so he has to retrace everything in PS with a Wacom, but he makes it very clear on what the impact if an image with homogeneous single-width lines is, compared to the same image with more line variation.
https://youtu.be/J2P4LDr9a5E?t=53m29s

paulhart
02-18-2018, 10:52 AM
JCG, Yes! Without some variation in line weight, drawing becomes relatively 'dry' and 'technical.' I had the good fortune to get an MFA in drawing before turning to this field. We would study the drawings of Rembrandt, Van Gogh, with deliberate, close emphasis on the variable weight of the lines drawn, and where they were made thicker in contrast to places where the line could literally fade to nothing. This made the drawings 'live.' I had more than a couple of drawing teachers who would come over to a drawing I was working on, and use my 'same pencil, graphite, etc.' and draw the same edge I was drawing of the model, but give weight and character to the line, to complement the features. Sometimes the weight of the line would function as an indication of 'ambient occlusion' by being thicker. Sometimes, fade to a wisp, to indicate the edge most in the light. Sometimes to help define the turning of an edge, helping to imply the 3D space the objects inhabit.
I appreciate the video example, fully agree with the discussion, and work to achieve some of this in the renders, whether it be for illustration still, or animation. There are software tools that can be made to emulate these aspects, more than a 'plain line,' and I look to Lightwave to implement these more artistic tools in the near future.

paulhart
02-18-2018, 01:38 PM
There is a good reason that we admire and value the drawings of Rembrandt, Hokusai, van Gogh, and then more recently, Hayao Miyazaki, Sylvan Chomet. I am including a sample of drawing styles I have studied, to attempt to give reference to what is meant to achieve. Note how the line gets 'thick' in weighted folds, areas of Ambient Occlusion, emphasis on turns of the fabric or object, thin on the 'sun' side and fatter on the 'away' side. Notice also the different weights of line, some modulated by distance, some for effect. Most have variation along the line, and often taper at the ends, some abruptly, some slower. Part of the "challenge" is to address those who have not studied drawing, yet are instinctively drawn to those images that appear more "lively" because of the more artful line. There are plenty of examples from Japanese animation, but these will serve the discussion.
"Before," we had UnReal eXtreme2 for Lightwave, with brush stroke options, and thick and thin, but after the software architecture changes they are no longer updating, that I know of, so a 'replacement' is needed.
140180

paulhart
02-18-2018, 03:20 PM
I realized after posting, that some of my references may not be well known to this crowd, but are worthy of review. "Spirited Away," by Hiyao Miyazaki and "Illusionist" by Sylvan Chomet come to mind, but there are many more. I am including another set of examples, intentionally not including any with color, so as to not distract from the focus of the discussion.
Note how the weight of the line acts as indication of implied light source, and fine features selected for thin fine lines and other parts for thick. Being able to selectively Include and Exclude Edges for LineStyles is an important tool in the array an artist can bring to an image.
140181