Home Technical Talk

UV Packer IPackThat

1356719

Replies

  • ZacD
    Online / Send Message
    ZacD ngon master
    Is packing multithreaded? How much does a better CPU speed up the packing?
  • [PB]Snoelk
    Offline / Send Message
    [PB]Snoelk polycounter lvl 7
    Yeah that's essentially it. Would be helpful for projects with more complex weather-based shaders, such as rain or snow buildup. Generally when I have to do this by hand I use a simple arrow texture instead of a checker texture when laying out my UV's. but automation is always welcome. Especially with larger assets.

    mhhh, i also could write the radiants to the w value of the uvw. that way you have a 2d facing direction. for this i have to read the geometry as well. this will take some time ^^
    Would it be possible to implement hardware acceleration for faster packing? If this works, this would be glorious.

    was a thought from me as well. need to look for a framework for this that i can use. maybe i could spawn thread for every check per each cluster position
    ZacD wrote: »
    Is packing multithreaded? How much does a better CPU speed up the packing?

    yep it is. for each rotation step per cluster a thread is spawned and when finished the best is taken
  • nksilver5
    Offline / Send Message
    nksilver5 polycounter lvl 5
    Dude, you're breaking the internet !

    Taking all the good stuff from Headus plus feedback from people in the industry with actual pipelines ( oriented weather effects, ue4, snow etc ).

    This is going to kick some serious ass.

    Didn't have time to mess up with yet, but will do for sure.

    Would be cool to have a "shift+f" action like uvlayout, or a texture showcase ( T shortcut ) to display ratio, or other nifty shortcuts uvlayout has ( ctrl+i and others ).
    Also, a bridge with max ( or maya ) would be amazing !

    Just my 2 cents, I'm sure more ideas will come through tommorow haha !

    Cheers :D
  • [PB]Snoelk
    Offline / Send Message
    [PB]Snoelk polycounter lvl 7
    thanks :)

    the intension was not to compete with uvheadus. this tool is doing a lot of stuff for unwrapping. never intended to rebuild a clone his work.
    the only thing this tool should do is pack uv the best way possible. this problem driving me crazy since years. had learn programming the last 2 years and now i could handle this matter.

    the texel stuff is on my todo list. maybe i should make a roadmap and make this public, so everyone can see whats comin next.
    right now im working on groups, ignore processing and some other small stuff.

    after this i will start with reading the mesh data as well and see what i can do with this datas to make it cooler *g*

    i also can tweak the UI someday and switch to wpf. the reason why i use win32 standart windows is the presenting. wpf look nice and polished. but its lacking perfomance.

    plugins is also a thing i will do later when the thing is out. i will do some little max plugin to send data between IPackThat and 3DS-Max. for maya i have to look. never used this tool.
  • nksilver5
    Offline / Send Message
    nksilver5 polycounter lvl 5
    As a max user myself:

    Fedora-20-Delayed-for-December-3-382662-2.jpg
  • Serial Lens
    Incredible! With the planned option to group UV shells to stay together, I can see this quickly becoming a standard tool like xNormal is for baking.

    Ready to give you money and proselytize to everyone I know as soon as it's available. :)
  • EXpMiNi
    Offline / Send Message
    EXpMiNi polycounter lvl 5
    Sounds good, I keep an eye on this :) ! Good Luck.
  • MarkBTomlinson
    Offline / Send Message
    MarkBTomlinson polycounter lvl 9
    Heads up for the Mac users this is running under Parallels too so give it a try it is looking very good. Can't wait to see how the export goes now :-)
  • [PB]Snoelk
    Offline / Send Message
    [PB]Snoelk polycounter lvl 7
    Someone tested it with his Mac parallel. It works fine ^^

    Hope the Greenlight is going fast *g*. I wish some guys at valve get noticed about this and they want it as well hrhrhrhr

    mhhh wonder where those 12 peoples are who voted no for this tool :poly008:
  • joebount
    Offline / Send Message
    joebount polycounter lvl 12
    Except for the sloooooooow speed it's Shut-up-and-take-my-money.jpg

    We were looking at it at work and are very impressed by the results. Impatient to put our hands on the final product :)
  • skankerzero
    Voted 'Yes'.

    I look forward to being part of any betas you have as uvmapping is a passion of mine.
  • [PB]Snoelk
    Offline / Send Message
    [PB]Snoelk polycounter lvl 7
    short notice to keep you updated on what im working now (no update yet)
    • adding mouse selection box (drag drop)
    • ignore processing (nothing is done with clusters, colored violet)
    • adding cluster groups (each group greater 0 is packed in seperate step)
    • fixing cluster property option handling (if checkbox is Indeterminate no values are applied now)
    not that you think im sitting back and enjoy the silence *g*
  • renderhjs
    Offline / Send Message
    renderhjs sublime tool
    Oh wow I missed this, super excited about this. I love Headus and any new tools getting out for UV mapping.
    One thing that I love about Headus and why I think its so fast to work with are its sticky key bindings - meaning you just hold down a key on your keyboard instead of your mouse button in order to orchestrate a action with your mouse. Something like that and highly contextual would be awesome.
  • aphexx
    Offline / Send Message
    aphexx polycounter lvl 12
    just leaving this here.
    this picture is pixelated satisfaction.
    3 minute pack, but first solution was best.

    iwyVCJ1.jpg?1
  • Cathodeus
    Offline / Send Message
    Cathodeus polycounter lvl 14
    How do you create "Groups" ? even if i select differents clusters i can't define a group ... The group Box is greyd out.
  • [PB]Snoelk
    Offline / Send Message
    [PB]Snoelk polycounter lvl 7
    thats where i am working now :)
    only implemented the interfaces for it at the last update.

    right now im going into details. update will come the next days if all works well
  • Neox
    Offline / Send Message
    Neox veteran polycounter
    didn't test it yet, but can you lock pieces?
    say you do work over an existing asset and have parts which will remain the same for various reasons, can i lock those and it will arrange everything around those pieces?

    @edit: ausserdem saubere arbeit, das wird ne menge zeit sparen, gerade bei komplexen hardsurface sachen, echt cool!
  • OgrO
    Offline / Send Message
    OgrO polycounter lvl 18
    Amazing, outstanding incredible, etc... =)
    This is really great job. Can't wait to buy the final version.

    Some tricks we use for lightmaps UV, that could be usefull features, are favorise packing together clusters sharing same orientation in world (often sharing same light (sky or sun), this can reduce low resolution/ pixel bleeding artefacts).
    Also, we try to place edges close in 3D also close in UVs (sometimes it's coplanar faces that have mirrored tangents and have to be seprated, sometimes it's perpendicular faces that can't be stitched.
    This can already be adressed by preplacing ourselves these clusters and merge them as group before using your pack algorythm, but I think a computer may be better than use for this.
  • [PB]Snoelk
    Offline / Send Message
    [PB]Snoelk polycounter lvl 7
    Neox wrote: »
    didn't test it yet, but can you lock pieces?
    say you do work over an existing asset and have parts which will remain the same for various reasons, can i lock those and it will arrange everything around those pieces?

    well thats not possible. You can in my current version (not submitted yet) lock shells so they stay where they are and wont be processed.
    The other parts will get scaled, rotated and moved in various ways. to keep a shell in relative position to the original layout is not possible yet.
    When the compression starts he might find a solution which is fitting 40% of the UV Area. The entire soluion is then scaled up to fit the area and will be repacked.

    OgrO wrote: »
    Amazing, outstanding incredible, etc... =)
    This is really great job. Can't wait to buy the final version.

    Some tricks we use for lightmaps UV, that could be usefull features, are favorise packing together clusters sharing same orientation in world (often sharing same light (sky or sun), this can reduce low resolution/ pixel bleeding artefacts).
    Also, we try to place edges close in 3D also close in UVs (sometimes it's coplanar faces that have mirrored tangents and have to be seprated, sometimes it's perpendicular faces that can't be stitched.
    This can already be adressed by preplacing ourselves these clusters and merge them as group before using your pack algorythm, but I think a computer may be better than use for this.

    will write it on the road map. thr cluster groups might solve a part of this.
    Each group will be packed in a seperate process so they stay close to each other. then all groups and shells without groups will be packed together
  • nksilver5
    Offline / Send Message
    nksilver5 polycounter lvl 5
    Would an option to move uv2 from 0 to 1 be implemented as well ?

    I know it sounds silly, but I do use it a lot and it could save a few clicks to tick a box so it does it for me right after finishing packing the uv ^^
  • Cathodeus
    Offline / Send Message
    Cathodeus polycounter lvl 14
    Agree should be nice to add a box like. Choose the UV channel that will be packed !
  • [PB]Snoelk
    Offline / Send Message
    [PB]Snoelk polycounter lvl 7
    nearly finished with next update (just finishing it and upload in the next our)

    here the new stuff

    • added Selection via Mouse Rectangle Selection
      • Key Control adds to selection
      • Key Alt Removes from Selection
    • fixing Cluster Properties
    • adding Packing Groups !!
      • packing group 0 is fixed for place everywhere possible
      • every UV-Shell (Cluster) inside a group will be packed in a seperate process.
      • the packed groups will be repacked when finishing the group packing
    • Ignore Processing
      • UV-Shells (Clusters) that are marked with Ignore Processing will not be packed ot touched and stay where they are
    know stuff i need to adress
    • different colors for packing groups
    • selection filter for packing groups
    • selection filter for ignore processing uv-shells


    cheers :nerd:
  • [PB]Snoelk
    Offline / Send Message
    [PB]Snoelk polycounter lvl 7
    uploaded now.

    would be nice if someone can check if the first implementation of grouping works fine

    cheers
  • [PB]Snoelk
    Offline / Send Message
    [PB]Snoelk polycounter lvl 7
    silly bug inside version, uploaded a new fixed one.

    IPackThat is now on Facebook also

    IPackThat on Facebook
  • - Livewire -
    Offline / Send Message
    - Livewire - polycounter lvl 9
    I'm throwing money at my screen but nothings happening.
  • [PB]Snoelk
    Offline / Send Message
    [PB]Snoelk polycounter lvl 7
    Hello,

    made some test with a new UI. Only a rough prototype.
    What you think ?

    NewUI.jpg
  • Martin_H
    Offline / Send Message
    Martin_H polycounter lvl 6
    Just tried the demo. First time importing a mesh crashed it (my fault kinda, because I accidentally exported the whole scene instead of just the lowpoly). Second time worked like a charm. Result was way better than the packer that comes with blender. Save function is greyed out, but I guess that's a demo limitation (didn't read the whole thread).
    For the UI: I find the orange a bit hard on the eyes, especially the frames and thick bars behind the section titles. For the sliders and checkboxes it's fine.

    Any idea how much this will cost yet and when we'll be able to buy it?
  • [PB]Snoelk
    Offline / Send Message
    [PB]Snoelk polycounter lvl 7
    Ok there is bug with scenes ^^
    need to fix that.

    The price is not decided yet. It will not be more than 50€.

    Check IPackThat on Steam Greenlight and vote for it.
    As soon it has enough votes I can sell it.

    And For the colors and bars. Will see what it's possible with the group controls.
  • ZacD
    Online / Send Message
    ZacD ngon master
    You should do a Polycount colored theme :D

    UI Suggestion, I'd love it if you could minimize and expand the options and stats menus on the left, even better if you had them have a hotkey as well to expand and minimize (I'd use 1, 2, 3, 4).
  • Neox
    Offline / Send Message
    Neox veteran polycounter
    please don't make it so contrast heavy
  • Swizzle
    Offline / Send Message
    Swizzle polycounter lvl 15
    I very strongly preferred the previous UI style. Granted, I'd still pay for it. But just sayin'...
  • tar
    Offline / Send Message
    tar polycounter lvl 8
    For baked assets what's going to be the workflow? I really want to keep my original lp exploded in separate parts ready for future iterations. So basically I export a obj with 10 objects that should be packed on one map, the packer does it's job, I import it back and at this stage I'd like to copy/paste the uv's from the imported lp parts to the original lp parts, can you confirm that this works well?

    Can you release a second, basic version which has the functionality of the first demo release with the ability to save and the ability to upgrade to the pro version? Just to make sure that it fits into the pipeline as we expect and then we pay for the rest of the features. Or a trial. Maybe a few license types too like hobby/indie/commercial? For studios 50€ is pretty much nothing especially since one license on one machine set up specifically for this is enough to do all the job. And the productivity is much larger than at a hobbyst/indie level so it would make sense for the commercial license to be more expensive, at least relatively. Maybe it's good that it wasn't greenlit yet, you still have time to sort some things out, I'm sure you thought about some of these things, in case it was your decision to stick with only one version probably you have a reason but just saying. :)
  • Gheromo
    Offline / Send Message
    Gheromo polycounter lvl 11
    I agree with Neox its contrast heavy now. Why not go for similar color scheme as Adobe Photoshop with dark greys? It certainly would be much easier to look at.
  • Cathodeus
    Offline / Send Message
    Cathodeus polycounter lvl 14
    I'm currently using the group function and it don't seems to work fine or as expected ... Tons of wasted space ... Cluster Overlappings ... More work is recquired. I will come later with picture ...
  • Pedro Amorim
    Is the demo full functional? Can I export/save the obj after I get a nice result?
    Or am I being silly and can't figure out how to save?
  • Cathodeus
    Offline / Send Message
    Cathodeus polycounter lvl 14
    Here is my first use of Groups. 6 hours of packing ... 29 percent of wasted space. I don't know hoa difficult it could be but i'm pretty sure that it can be improved by using bounding box size for each groups as percentage of allowed space maybe.

    GRPIPackThat.JPG
  • RobeOmega
    Offline / Send Message
    RobeOmega polycounter lvl 10
    @Pedro Amorim

    You apparently cannot save or export in the demo
    [PB]Snoelk wrote: »
    Hello Folks, Inside the Demo version you can't save. Its just for testing purpose and feature testing.
  • Cathodeus
    Offline / Send Message
    Cathodeus polycounter lvl 14
    I don't know if's possible, i would like an option like :

    if "0" is set to "Margin size" and "100" is set to "desired used area" than use the empty space to heavenly space each cluster with the same amount of pixels bettween each others.

    The soft will calculate the best space bettween each cluster heavenly. In order to occupy 100 percent of the texture space.

    Usefull for lightmaps Uv2
  • [PB]Snoelk
    Offline / Send Message
    [PB]Snoelk polycounter lvl 7
    ZacD wrote: »
    You should do a Polycount colored theme :D

    UI Suggestion, I'd love it if you could minimize and expand the options and stats menus on the left, even better if you had them have a hotkey as well to expand and minimize (I'd use 1, 2, 3, 4).
    • nice idea, will keep that in mind when changing the ui
    tar wrote: »
    For baked assets what's going to be the workflow?
    • you can save the obj as different file. maybe i can save 2 files. one for an engine without offsetted uv to x+1 and another for backing where true overlapping polygons are mapped to x + 1

    tar wrote: »
    Can you release a second, basic version which has the functionality of the first demo release with the ability to save and the ability to upgrade to the pro version?
    • need to think about it

    tar wrote: »
    Maybe it's good that it wasn't greenlit yet, you still have time to sort some things out
    • damn right :)

    Cathodeus wrote: »
    I'm currently using the group function and it don't seems to work fine or as expected ... Tons of wasted space ... Cluster Overlappings ... More work is recquired. I will come later with picture ...
    • mhh did you leave some parts as group 0 to fill up ? seems like you made a group for everything. looks like a worst case scenario. can you send me the obj so i can test it ?

    Is the demo full functional? Can I export/save the obj after I get a nice result?
    Or am I being silly and can't figure out how to save?
    • you can't save yet ^^

    Cathodeus wrote: »
    I don't know if's possible, i would like an option like :

    if "0" is set to "Margin size" and "100" is set to "desired used area" than use the empty space to heavenly space each cluster with the same amount of pixels bettween each others.

    The soft will calculate the best space bettween each cluster heavenly. In order to occupy 100 percent of the texture space.

    Usefull for lightmaps Uv2

    • that would be a special lightmap mode where the edge pixels are sticked to pixels with power of 2. The margin and border pixels are ignored that way and all shapes use a 2 pixel margin. that is a todo for later and can be a bit tricky (due the scaling operations)




    here and update on the ui prototype. Less contrast and more greyish. The groups dont use that much space like the first version.


    NewUI2.jpg
  • ZacD
    Online / Send Message
    ZacD ngon master
    [PB]Snoelk wrote: »
    [*]that would be a special lightmap mode where the edge pixels are sticked to pixels with power of 2.

    It's worth noting that grids for light maps in UE4 need to use power of 2 minus 2 pixels to get proper grid snapping. http://www.reddit.com/r/UE4Devs/comments/246whl/the_most_important_thing_about_lightmaps/
  • Cathodeus
    Offline / Send Message
    Cathodeus polycounter lvl 14
    [PB]Snoelk : I can't let some clusters to group 0 as i want all the part to stay grouped as they are on the mesh [important for lighting]. I can't have some of those part all over in a random fashion ... Here is my hand unwrapping and packing. [My packing is not heavenly spaced ... I think your software can help to clean up this spacing problem.

    I can't send you neither the mesh as it is under NDA at the current moment.

    If you do have any idea to get that kind of result you'll be a god on earth !

    02.JPG
  • [PB]Snoelk
    Offline / Send Message
    [PB]Snoelk polycounter lvl 7
    Ok, i see the problem. Try to set the height ratio to 2 and press apply resolution. This will bring the workarea to 1:2 ratio. Now try to set only 2 groups. I think it will sort it out due the fact that one shell will rule the image size (the very large one). Can't tell for sure without debugging the packing with the data. You could explode the 3d mesh to their uv island and jigsaw the mesh elements around. So the mesh is not readable but the uv is. Maybe then the nda is not applying.
  • aniceto
    Offline / Send Message
    aniceto polycounter lvl 18
    Can I just pick a texture res preset and have it set the margin/border etc values automatically?

    Itd be nice if the cluster properties were also available in a right-click menu in the scene.

    Also some way to indicate a cluster's properties visually in the scene would be coo. rather than having to click the cluster settings tab then click on the cluster to see what its rotation settings are. Sometimes I forget what settings I've given each cluster and its a bit slow having to select them all again.

    Just little stuff. Good work!
  • Pieru
    Offline / Send Message
    Pieru polycounter lvl 5
    hey!

    Your soft works pretty fine, however, if you can't save anything (even if it's for the moment), it will be a bit useless, and nobody will 'test' it anymore.

    But it seems to be fully functional on packing UVs
  • Quack!
    Offline / Send Message
    Quack! polycounter lvl 17
    Pieru wrote: »
    hey!

    Your soft works pretty fine, however, if you can't save anything (even if it's for the moment), it will be a bit useless, and nobody will 'test' it anymore.

    But it seems to be fully functional on packing UVs

    I disagree with this 100%. The only reason to ask for saving right now would be to get a free program. We can test just fine, and have been, without saving.
  • almighty_gir
    Offline / Send Message
    almighty_gir ngon master
    I'm trying out the demo right now, i'd voted it up on steam before i even saw that i could play with a demo lol. this will be an instant buy from me.

    i just did a "pack uv's" in max (which we all know is gash) and started a three run pass. it's currently on the second run but gained me 20% more used space in the first run.

    i do have a question though:
    how well does the performance scale with multiple cores in your cpu, and available ram? i have an i7 4930k, and 32gb of quad-channel ram. i'd like to know how well those are being exercised.
  • Skiffy
    Offline / Send Message
    Skiffy polycounter lvl 15
    Simple request for me. PAUSE and RESUME :)

    Sometimes I need to load other programs or test something and I rather pause it instead of cancel to get back CPU power. So yea that be a good feature to have please.

    Cheers!
  • alfalfasprossen
    Skiffy wrote: »
    Simple request for me. PAUSE and RESUME :)

    Sometimes I need to load other programs or test something and I rather pause it instead of cancel to get back CPU power. So yea that be a good feature to have please.

    Cheers!

    i guess you could just set the processes priority to low, so other tasks can get more power if required, but a pause functionality would probably be good nontheless, especially if it could save the status on disk to maybe even resume after a system restart or so.
  • [Deleted User]
    Offline / Send Message
    [Deleted User] insane polycounter
    The user and all related content has been deleted.
  • [PB]Snoelk
    Offline / Send Message
    [PB]Snoelk polycounter lvl 7
    how well does the performance scale with multiple cores in your cpu, and available ram? i have an i7 4930k, and 32gb of quad-channel ram. i'd like to know how well those are being exercised.
    • the packing uses multiple threads for packing. each different rotations per uv-shell is handled in a different thread. more thread wont work well due the fact that a uv-shell has to be finished before another shell can be placed. if the rotation steps are at 90° the shell will spawn 4 threads, 0°, 90°, 180°, 270°. If the rotation steps are smaller it will spawn more threads.

    Skiffy wrote: »
    Simple request for me. PAUSE and RESUME :)
    Cheers!
    • yeah, good idea. will do that.

    Please Hurry :P - Messy and patchable is fine. This would save me at least a full day.
    +1 vote on greenlight
    • i try :) this depends all on steam and the voters. right now the tool dont have much votes yet. tell your friends and childrens to vote as well ^^




    im currently redoing the ui and rewriting the rendering (as a result from changing to wpf). After that i will change the import and export to a plugin system. that way i can add different ex and importers later (fbx for example).
    Maybe later others can add plugins as well. the bridge between IPackThat and different 3d programs can be done with this plugin systerm as well. would be cool to import stuff from maya and max and export as fbx or inside maya and max directly.
1356719
Sign In or Register to comment.