Home Technical Talk

[MAYA] Surface-Based Asset Generation

2

Replies

  • OccultMonk
    Options
    Offline / Send Message
    OccultMonk interpolator
    I would really like a 3DSMAX version of this :-) I tried the Quad-Chamfer plugin and the default 3dsmax Chamfer modifier and both did not give good results. 
  • Fansub
    Options
    Offline / Send Message
    Fansub sublime tool
    Sadly i dunno how to use Max,let alone script in it :-( AFAIK PolyHertz said he made something similar in the previous page,so maybe he'll be sharing it at some point :)

    Btw OccultMonk you're my all-time favorite artist and inspiration,and the variations in your skills are my biggest dream as an artist, had to say it ! ! ! @_@

    For yall waiting for SS on Maya please give me some more time.Rest assured the project is not abandoned,just need to work more on it when i have some free time.

    I also want to thank everyone who purchased QuickPipe,over 500 licenses were sold as of today which is waaaaaaay higher than my initial expectations (around 50-100 was my initial goal ^^) !

  • Turbopasta
    Options
    Offline / Send Message
    Turbopasta polycounter lvl 5
    I barely understand what I'm looking at but it seems neat. 
  • Fansub
    Options
    Offline / Send Message
    Fansub sublime tool
    Hahaha sorry for the very unclear OP ! ^^ should really clean it one of these days
  • OccultMonk
    Options
    Offline / Send Message
    OccultMonk interpolator
    Fansub said:
    Sadly i dunno how to use Max,let alone script in it :-( AFAIK PolyHertz said he made something similar in the previous page,so maybe he'll be sharing it at some point :)

    I hope someone can make a script for max, like this one. Maybe you can share a bit of your coding ideas with someone that can create a max script version?

    Btw OccultMonk you're my all-time favorite artist and inspiration,and the variations in your skills are my biggest dream as an artist, had to say it ! ! ! @_@

    Thanks!  :3




  • Fansub
    Options
    Offline / Send Message
    Fansub sublime tool
    the script (that i showed in the GIF) basically does : select all hard edges, split faces at hard edges,inset all faces (will create some nice borders for the bevel to properly work) by the desired amount and bevel the hard edges of each group of faces.
    It is basically like some sort of chamfer by smoothing groups but without any bevel issue in most cases.

    Some good news in perspective : Finally managed to have some time to finish Quick Pipe's next update,and ShapeShifter's new method (not the one in the GIF) is finally game-changer enough for me to consider it solid.The prototype which I've previously showed in a Gif will be available for free in Quick Pipe's next update ( available Sunday 31 of this month ) :)
  • Bertmac
    Options
    Offline / Send Message
    Bertmac polycounter lvl 17
    OMG,  Yes Yes. thank you so much been waiting for this.  you made My day.
    please keep it coming

  • xXCrimsonWolfXx
    Options
    Offline / Send Message
    xXCrimsonWolfXx polycounter lvl 4
    Fansub said:
    the script (that i showed in the GIF) basically does : select all hard edges, split faces at hard edges,inset all faces (will create some nice borders for the bevel to properly work) by the desired amount and bevel the hard edges of each group of faces.
    It is basically like some sort of chamfer by smoothing groups but without any bevel issue in most cases.

    Some good news in perspective : Finally managed to have some time to finish Quick Pipe's next update,and ShapeShifter's new method (not the one in the GIF) is finally game-changer enough for me to consider it solid.The prototype which I've previously showed in a Gif will be available for free in Quick Pipe's next update ( available Sunday 31 of this month ) :)

    You mean to tell me, that my dreams will come true as a hard surface modeller? 
  • Fansub
    Options
    Offline / Send Message
    Fansub sublime tool
    Nope :p again this is not an ultimate high poly bevel thingy,it still has a lot of flaws so use it moderately and per case.Think of it as a way to bevel meshes with a lot of booleans without having too much issues with the excess of Ngons.The better the topo the better shapeshifter will work on your mesh.

    If you just want to prototype with the ShapeShifter i showed in the gif then the new Quick Pipe update should be your thing,but if  you're looking for some advanced shit that bevels your high poly no matter how complex it is then please wait a bit more,that one will be in the official ShapeShifter release :D

    Another quick test with the prototype.Spent a few minutes on this one.


  • Psychotic_Mike
    Options
    Offline / Send Message
    Psychotic_Mike polycounter lvl 11
    Sweet news!!!! cant wait to have a go at it! Will shapeshifter work on Maya 2016 and 2016 extension 2?
  • Fansub
    Options
    Offline / Send Message
    Fansub sublime tool
    2014,2015,2016,2016 EXT 2 and 2017 will all be supported :) could probably go down until 2011 without a problem,because ShapeShifter is in it's core very basic,it's just the idea that is somewhat cool for beveling.
  • musashidan
    Options
    Offline / Send Message
    musashidan high dynamic range
    @PolyHertz  looking for any beta testers, mate?;)
  • Fansub
    Options
    Offline / Send Message
    Fansub sublime tool
    Ok shit is getting serious guys ! Some of you might have noticed that EXT2 has a nice mitering technique that allows you to have clean topology on corners.This is great but EXT2 still breaks the geo on complex meshes and while SS will behave differently on 2016 < and 2016EXT2 > i think having a clean topology is something everyone with any version of Maya should have.
    On the first image the example on the left is using Maya 2016,2015,2014,2013,2012 and 2011 bevel,and on the two other examples I'm using the new technique SS has and works probably on any Maya version :)
    Right now i think this is something users might want to make manually just to avoid any issues,so dunno if it will be implemented.
    Breakdown is in french,tho ^^



  • Fansub
    Options
    Offline / Send Message
    Fansub sublime tool
    Had to report everything for next week due to Maya 2017,but luckily Quick Pipe and ShapeShifter both work like a charm on it :)

    Here's a Gif showing some basic stuff with it :-1:

  • Sajeet
    Options
    Offline / Send Message
    Sajeet polycounter lvl 7
    Free for quick pipe users? is it Christmas already? :D
  • Fansub
    Options
    Offline / Send Message
    Fansub sublime tool
    Yeah totaly free if you have Quick Pipe ! QP completely changed my life and everyone in the 500+ customers that bought it has contributed to it,so expect even more cool stuff for free in the future :)
  • Tetranome
    Options
    Offline / Send Message
    Tetranome polycounter lvl 6
    Oh man Fansub you're awesome! Can't wait
  • musashidan
    Options
    Offline / Send Message
    musashidan high dynamic range
    Even though I use 3dsMax I just bought quickpipe. :) I think it's so important to support lone devs like yourself. The work You've done with SS is just brilliant. It almost makes me want to learn Maya! Great work @Fansub
  • Fansub
    Options
    Offline / Send Message
    Fansub sublime tool
    Thank you soooo much for the kind words Mushashidan ! Not only are you supporting a lone dev,but you're also helping one of the few artist/tech artists here in Africa to pay for his school and hopefully be able to fully work in the video game industry next year.Talking to people from Bioware to Naughty Dog about my tools is more than a dream becoming true,and seeing messages like yours just keeps enhancing that dream ! Thanks a lot everyone !

    Now if those ninjas could stop cutting onions that would be great :D
  • kurt_hectic
  • musashidan
    Options
    Offline / Send Message
    musashidan high dynamic range
    @Fansub I'm very happy to help, mate. And I wish you the very best of luck in the future. :)

    @kurthectic opensubdiv is a subdivision algorithm.  This tool is a completely different idea and workflow. You should read the thread. The closest thing in Max is the chamfer modifier but it comes nowhere close to the results of this tool.
  • Fansub
    Options
    Offline / Send Message
    Fansub sublime tool
    Yeah i wouldn't compare Subdivision with ShapeShiter,two different workflows with two different goals.

    btw musashidan , how does SS from the Gifs you've seen compares to Quad Chamfer ? some people say it's same,other better,and other worse.
    Despite the ease of use of ShapeShifter,one still needs to adress certain things before applying it,does Q Chamfer work just fine on any shape,say the one in the latest Gif ?


  • musashidan
    Options
    Offline / Send Message
    musashidan high dynamic range
    @fansub a few weeks back I downloaded your demo mesh and tested it extensively in quad chamfer and I just couldn't get as clean results as you showed with SS, even after spending some time manually editing the surface normals to try and clean up the shading errors, it still didn't compare. QC just doesn't handle n-gons/poles very well.

    From what I gather the key to SS results are because it seems to create a kind of barrier of clean chamfer topology which ensures that n-gons and high valence poles are checked and routed through the clean bevels.
  • Fansub
    Options
    Offline / Send Message
    Fansub sublime tool
    Thanks for the feedback ! :) I really do hope that people don't think SS can bevel ANY mesh no matter how screwed up it is,because you still need to do some cleaning.This new boolean => bevel workflow is relatively new (or should i say updated) so the more one understands how to avoid the constraints of SS the more they will be comfortable.

    With that said i think i'm going to sleep °O_O°
  • throttlekitty
    Options
    Offline / Send Message
    It's funny, because I see Max users doing things with quad chamfer that would need serious cleanup in Maya.

    @Fansub Can we still purchase SS even if we bought QP? Looking amazing, by the way!
  • LaurentiuN
    Options
    Offline / Send Message
    LaurentiuN interpolator
    Fansub said:
    It gives you an expected result from ShapeShifter,like in the image below :

    http://image.noelshack.com/fichiers/2016/16/1461409132-000001-copy.jpg

    With that said,these type of shapes are probably the most challenging because ShapeShifter can't push back all the geo it meets,just the first ones attached to the hard edges (that's why i deleted an edges in the wireframe). If i can manage to make it shift everything it intersects with,then we'll probably have a lightweight version of Mesh Fusion :p
    Quad Chamfer from 3ds max will never get this shape done, never! please make this plugin for max to if possible. Thanks
  • Fansub
    Options
    Offline / Send Message
    Fansub sublime tool
    @Fansub Can we still purchase SS even if we bought QP? Looking amazing, by the way!
    Yep ! So let me get this straight : ShapeShifter will be available in Quick Pipe and in another product called the Modeler Tools.This modeler tool will have a lot of small little scripts and should get many others scripts every week/month.The cost of this product is 5$.
    On the other hand,you have Quick Pipe and the Modeler Tools for 8$,which is a better deal tbh.
    Buying both is supporting the dev even more so i recommand that hahaha :D 

    On other news,i should start learning Max in Mid September for school so SS might definitely come in Max by the end of this year ! :) looking at the modifier stack i think there are possibilities to make some mind boggling tools that would shit all over SS :D 
  • musashidan
    Options
    Offline / Send Message
    musashidan high dynamic range
    Fansub said:


    On other news,i should start learning Max in Mid September for school so SS might definitely come in Max by the end of this year ! :) looking at the modifier stack i think there are possibilities to make some mind boggling tools that would shit all over SS :D 
    Great news!:) In that case you're going to love MCG (max creation graph)
  • Fansub
    Options
    Offline / Send Message
    Fansub sublime tool
    Heard a lot of great things about,can't wait to put my fingers on it ! :D

    Made a Quick Mesh for a ShapeShifter tutorial, will be using it along with Crease+ to demonstrate my hard surface workflow.Should also show what are the things to avoid when using SS and all the common issues one might face with the tool.


  • LaurentiuN
    Options
    Offline / Send Message
    LaurentiuN interpolator
    Thank you for taking time to learn max, i`m sure there are a lot of user who will love this.
  • OccultMonk
    Options
    Offline / Send Message
    OccultMonk interpolator
    Fansub said:
    SS might definitely come in Max by the end of this year ! :) looking at the modifier stack i think there are possibilities to make some mind boggling tools that would shit all over SS :D 
    Yes a 3dsmax version would be great!
  • musashidan
    Options
    Offline / Send Message
    musashidan high dynamic range
    Fansub said:
    SS might definitely come in Max by the end of this year ! :) looking at the modifier stack i think there are possibilities to make some mind boggling tools that would shit all over SS :D 
    Yes a 3dsmax version would be great!
    You said it, brother. :) MCGs in the stack!
  • TeZzy
    Options
    Offline / Send Message
    TeZzy polycounter lvl 12
    Hey Fansub,

    Where can we buy both the quick pipe and modeler tool?
  • Fansub
    Options
    Offline / Send Message
    Fansub sublime tool
    Hi TeZzy,Quick Pipe can be bought on Gumroad and Modeler Tools will be available in a few hours online :)

  • Bartalon
    Options
    Offline / Send Message
    Bartalon polycounter lvl 12
    Just picked this up.  I'm excited to integrate this into my work flow!  Fantastic work, keep it up!
  • poopipe
    Options
    Offline / Send Message
    poopipe grand marshal polycounter
    I hope this isn't a hijack  - please delete and accept my apologies  if it is. 

    Because I am bored and hungover I thought I'd take a look at this in max and see if I could achieve the same results just using modifiers

    It turns out you can't but since I'd gone to the effort I thought I'd document the process. 

    You can get close with a pair of chamfer modifiers - it'll work on simple meshes like some of the other test pieces but falls down on the complicated one below.
    The first is chamfer is set to quad with a tension of 0 and told to work on hard edges, this gives you the inset
    The second does the smooth bevel - again made to work on hard edges 
    The output options from the first chamfer modifier are important for controlling the behaviour of the second . 

    If you look closely at corners  you'll see some nasty artefacts and that will make you sad.. 



    Here's the fun bit,

    I decided I didn't want to be sad so I limbered up my typing fingers and wrote a script to do it properly based on fansub's description of SS

    Sadly the inset  part is destructive -  I'm duplicating the mesh as part of the script so as to maintain the original object but it's a bit crap.

    I'm not sure there's much I can do about it without putting some real time into the code and given that this could all certainly be done via MCG I don't see much point in pursuing it.  ( I'm boycotting MCG until they provide proper documentation so that's up to someone else) 

    I could dump the script as it is if anyone feels inclined to attach a GUI to it - it only took a little while to write up so I'm fine handing it out. 





  • PolyHertz
    Options
    Offline / Send Message
    PolyHertz polycount lvl 666
    @poopipe I actually wrote one too: http://polycount.com/discussion/174639/polyhertzs-3dsmax-script-quick-high-poly/p1

    Been trying to wrap my head around the Max SDK to convert it to a modifier, but it's taking a while since I'm not that well versed in C++
  • poopipe
    Options
    Offline / Send Message
    poopipe grand marshal polycounter
    that was a waste of time then, darn it :D

    ont he other hand i did learn something about the way smoothing groups are handled in maxscript and it only took an hour to put together.. 

    You can build a modifier in maxscript  (that's how mcg works)  but like I said it's probably not worth the ballache when you can do it in MCG 
  • PolyHertz
    Options
    Offline / Send Message
    PolyHertz polycount lvl 666
    Yea I took a look at doing the modifier with Maxscript, the problem is maxscript modifiers have to be derived from existing modifiers, which really limits what you can do. Did have some success using a derivative of the Edit_Poly modifier, but had problems stacking features for the preview (and wasn't a fan of making it a topology-dependent modifier).

    Also, I haven't delved into MCG's yet, but I believe they work on their own system instead of being a derivative of maxscript? At least from what I've seen, that seemed to be the case.
  • Fansub
    Options
    Offline / Send Message
    Fansub sublime tool
    I hope this isn't a hijack  - please delete and accept my apologies  if it is.
    No problem ! There are more Max users in this thread then Maya users so it's always great to see solutions for both users ! :)
    I'm going to hijack the discussion a little bit too ^^ Looking at the bevels 3Ds Max produces i noticed a few "triangulated-corners" on the bevels that produce a kinda "meh" result.Maya 2016 also has it sadly.




    My workaround so far to solve these ugly corners was to bevel the hard edges in there produced by the inset.



    I have been looking into ways of automating this operation but it's quite difficult.The best method i've found so far was to compare the distance between the three end-vertices of those edges generated by the inset,once i got the two vertices that shared the longest distance,i then compared them to the vertices that shared the shorted distance and made a filter to exclude any vertice in the shorter distance in my selection.Dunno if that's clear enough ^^



    My question is,how would you rational guys do this ? :D
  • poopipe
    Options
    Offline / Send Message
    poopipe grand marshal polycounter
    cunning - I like it
    Problem 1 (which I will be ignoring) is that quad chamfer always gives you a pole at a corner vert like that so topology is never going to be as pretty as your example without bevelling one loop at a time.
    Problem 2 is that you can't tell Max to make an edge hard, you have to set smoothing groups on the adjacent faces - in this context I don't think there's  going to be an elegant or fast way to ensure that the correct smoothing group assignments are set  (or at least I'm not clever enough to come up with it).. 



    So, that method is out of the window. 

    I can set the chamfer to work on selected edges but that means I need an edge selection - which is tricky if you don't know which edges you're working on.

    I thought about calculating curvature and working off that but it's a lot of typing and I'm very lazy - it would also mean you lose manual control over what gets bevelled which is not a good thing.

    I then had another think and decided that after the inset any vert with 6 or more edges poking out of it is either  going to be a corner, in the middle of a flat surface or shade badly anyway.
    So
    Below is the selection using that logic on a pre-insetted version of the test mesh . it appears quite promising - combining this with the outer edges of smoothing groups should yield exactly what we want. (or at least a tolerable equivalent)

    I'm either going to do a bit more on this or get drunk so I figured I'd dump my progress now just in case... 

  • PolyHertz
    Options
    Offline / Send Message
    PolyHertz polycount lvl 666
    poopipe you can't tell Max to make an edge hard
    Some people have actually made scripts before that let users split smoothing groups by edge selection, which is quite similar (Though not particularly efficient).
  • poopipe
    Options
    Offline / Send Message
    poopipe grand marshal polycounter
    That is true and its a relatively straightforward thing to do if you have an edge selection to work from but not if you don't.
    In this case, by the time you've got your edge selection you don't need it as you can simply chamfer by edge.

    I think I've pretty much cracked it now -  you can perform what amounts to boolean operations on selections so a bit of cunning conversion/inversion and addition has led to this which as per my previous post is a combination of the borders of the original smoothing groups combined with edges attached to my assumed corner verts

    Everything derives magically from the original smoothing groups and is entirely automatic of course.

    Like I said in my earlier post quadchamfer is crap at corners so I can't do anything about the poles at the moment. 




    edit : polyhertz.  I just spotteed your comment on MCG/maxscript.  the MCG output is maxscript but it relies on resources that don't exist in 2015 and earlier - you can open the files up and read them if you feel the urge to steal maths ;)
    It's a very frustrating system for me, I love that its so easy to put useful stuff together but I hate the fact they lock off functionality if you don't buy the extensions and that there's no proper docs. I'd rather put the extra work in with maxscript - at least that way I'll still have functional tools if they shift their sales strategy between versions.


  • Fansub
    Options
    Offline / Send Message
    Fansub sublime tool
    @poopipe in your example you seem to be beveling all the corner edges,which isn't very productive in this case because not all of them need a bevel.

    Let's just recap the filter to get these edges : We need them inside the inset area and we need them to be connected to one vertice that is connected to six edges.
    Now once this filter is done we get all our corners,but the QuadChamfer/ShapeShifter methods both already do a great job at beveling something like the corners of a cube,so we only need some of the corners - or should i say some edges of the corners.Example :




    Now my question is,how can i get those specific edges in  some corners ? is there any specific pattern you can think of that makes them special,thus filterable ?




  • poopipe
    Options
    Offline / Send Message
    poopipe grand marshal polycounter
    Perhaps there's some merit in only doing this in areas where the corners are concave? It would cover all but the top outer vert in your last example (which I'm not 100%sure needs to be done)
  • Fansub
    Options
    Offline / Send Message
    Fansub sublime tool
    That might do the trick as well :-) Maya 2016 Extension 2 and 2017 both have the most amazing bevel i've every seen.They have this behavior by default,and they method seem to be doing an inset on all the corners that i previously showed.Too bad the bevel fails at complex N-Gon shapes.



  • mktacuara
    Options
    Offline / Send Message
    mktacuara polycounter lvl 9
    Hi Fansub:

    First off great tool on the shapeshifter, amazing. Question, Is there a way to apply shapeshifter to only selected edges instead of all hard edges in a model?

    Thanks

    Markel. 
  • Fansub
    Options
    Offline / Send Message
    Fansub sublime tool
    Nope ! :p ShapeShifter only works on entire meshes.I could probably get it to work on certain pars but that might just generate some hurdle that your average joe modeler doesn't want to deal with.

    It's definitely on my todo-list,tho :)
  • jStins
    Options
    Offline / Send Message
    jStins interpolator
    Sorry if this was already mentioned up thread, but is it safe to assume Shape Shifter only works in 2016+ and not 2015?


  • Fansub
    Options
    Offline / Send Message
    Fansub sublime tool
    Yep,it only works on 2016 and above :)
2
Sign In or Register to comment.