Author : undoz

TF2: Polycount Pack

Reply
Reply
 
Thread Tools Display Modes
pior's Avatar
Old (#1)
Hey all,

So today I decided it would be a good idea to spend a week or so just streamlining my modeling workflow. Basically creating new shortcuts I never took the time to setup.

It got me thinking, we really spend a lot of time controlling viewports. 'Frame selection' is crucial (and is especially good in mudbox for instance, as it frames not only on selection, but also at the cursor location if nothing is selected).

So what if we could reduce the time spent rotating the cam?

What about a small script that simply fetches the normal orientation of whatever is selected (an average in the case of multiple components selected at once...), and orients the camera perpendicular to it after performing a regular frame? Maybe there could be a little bit of zooming out too, to get a clear view of the area to edit. If a 'shell-like' object is selected, it could work too.

This would let us 'jump' from one side of a mesh to another very quickly, and most importantly, would reduce ALOT of mouse/stylus travel, to the benefit of wrist health and! giving us more time to actually edit geometry.

What do you guys think?

I remember the nurbs modeler called Amapi had the keyboard arrow keys set to viewport rotate. It's a similar idea.

It would be awesome if tech artists could see if this is possible!

I feel like it is a very simple chain of events, most likelyvery doable in maxscript, mel, and so on...

Last edited by pior; 11-10-2009 at 12:56 AM..
Offline , veteran polycounter, 3,510 Posts, Join Date Oct 2004, Location Irvine CA  
   Reply With Quote

poopinmymouth's Avatar
Old (#2)
How well would that work for us mentally though? You know the cinematography rule not to rotate the camera too far between shots? I'm imagining it could work that way. At least when we manually choose a view radically different from our current, we are mentally expecting it since we made the choice, if something rotates automatically 180 degrees it could be disturbing.

Not saying it would be, just my initial thought. A little bit of ease in/out camera movement might be necessary to eliminate this problem.
Offline , veteran polycounter, 2,826 Posts, Join Date Oct 2004, Location Reykjavik, Iceland Send a message via ICQ to poopinmymouth Send a message via AIM to poopinmymouth Send a message via MSN to poopinmymouth Send a message via Yahoo to poopinmymouth Send a message via Skype™ to poopinmymouth  
   Reply With Quote

pior's Avatar
Old (#3)
Ooh sorry I was unclear. I meant, rotating the cam at the press of a keyboard shortcut. Let's say you have F for frame, then alt F would be autorotate (frame+align) And then after that, you could rotate with regular controls to adjust the view as needed.

Thanks for pointing this out :P
Offline , veteran polycounter, 3,510 Posts, Join Date Oct 2004, Location Irvine CA  
   Reply With Quote

SyncViewS's Avatar
Old (#4)
Hi Pior, a couple of questions, as they pop in my mind, to be sure I got the point.

Do you want an action? (MacroScript in 3ds Max) I mean something like a chain of events you can tie to a shortcut or a toolbar button? Or you would like to have something realtime? Like turn it on, it constantly rotates the view according to surface normal under mouse in that moment and turn it off when you're done? (The second one could look really freaky)

Do you want it to snap view to current sub object selection, if not null, and frame it? Or frame the whole object anyway? If sub selection is empty, it would only frame the object but not perform rotations, because averaged normal of a full object could be nonsense, like a sphere which ideally should have averaged normal equal to zero.

Should it work with Editable Poly, Edit Poly Modifier, Editable Mesh, Edit Mesh Modifier, or is there a top priority?

Thank you
IllusionCatalyst – Instrument set for 3ds Max │ AliquaForma – Personal portfolio in fieri
Offline , polygon, 572 Posts, Join Date Dec 2008, Location Milan, Italy  
   Reply With Quote

Ben Apuna's Avatar
Old (#5)
I bet this could be done in Max.

Modo does this with the command viewport.fitAlignSelected, I suppose with some selection sets it could be made to work the way you are describing. I've never used this command for this purpose before, you've given me something to think about...

Last edited by Ben Apuna; 12-24-2009 at 04:29 PM..
Environment Portfolio - Currently re-learning the dark arts of programming.
Offline , polycounter, 1,083 Posts, Join Date Feb 2009, Location Hawaii Send a message via Yahoo to Ben Apuna  
   Reply With Quote

pior's Avatar
Old (#6)
Hello!

Yep I meant, not something automatic (that would be ... pretty wild heeh), mor elike an action that is triggered whenever the user wants it. Like :

>the user is working on a specific part of a model.
>user needs to jump to another one next
>user Zooms out, select a component part of that new area,
>hits the shortcut or button,
>the camera frames on that new area, aligns itself to the average normals selected, and maybe zooms out a little (i notice that in almost all 3d apps, frame gets too close very often)

The case of whole object is very secondary. But maybe we could detect of the object is likely to be a hull/shell (the averaged normals would differ from zero), and if it fits that condition, the the script could align the view to the average of that shell.

I think that aligning to component selection while framing the object as a whole could cause too much trouble related to having to zoom back in. Maybe .... we could simply keep the camera distance to the object (after the pan and align) the same as it was before the user decided to jump somewhere else. That way it will likely be a comfortable distance for further editing work.

As for priorities ... honestly I would only use it on EditPoly type of objects. Would be cool if it worked from the low level of stack with top midifiers turned either on or off (like, still being able to jump around even if a turbosmooth is applied). But this is less important I guess.

Hope this clarifies things!

Last edited by pior; 11-10-2009 at 01:21 AM..
Offline , veteran polycounter, 3,510 Posts, Join Date Oct 2004, Location Irvine CA  
   Reply With Quote

MoP's Avatar
Old (#7)
Heheh, spacemonkey suggested this idea to me a few weeks ago, although not quite as all-encompassing; we were thinking something just for UV editing, where if you make a selection in the UV window it will snap the camera to frame the selection and orient it based on the average of the selected vertex or face normals.

This would make sense since in general you only want to be looking at the section of 3d model in the viewport that you're adjusting in the UV window. It would also be handy for quickly "finding" an area of UV that you're not sure what it is.

Not sure how useful it would be for everyday modelling work - it would have to be a "on keypress" thing though since otherwise if you were adding components to a selection, you'd keep getting thrown off. That's why it works better for UV stuff since your UV view doesn't change while the 3d view does.
Offline , Administrator, 11,475 Posts, Join Date Oct 2004, Location London, UK  
   Reply With Quote

pior's Avatar
Old (#8)
Yup definately on key press. I couldnt imagine having the viewport moving all around the place b itself all the time hehe.

Basically the idea is a bit like an easy jumpy workbench if the cam is poitionned correctly there is not much need to shift it while working, I think.

An extra would be ... a companion script, that would orient the cam sideways - at a 90 degree angle from the autoalign. To allow for easy shift-extrudes.

Ideas!!

Last edited by pior; 11-10-2009 at 01:29 AM..
Offline , veteran polycounter, 3,510 Posts, Join Date Oct 2004, Location Irvine CA  
   Reply With Quote

pior's Avatar
Old (#9)
food for thoughts!
http://www.neilblevins.com/soulburns...urnscripts.htm

'alignViewportToFace' is quite close, but I didnt manage to make it work with the current view (it either creates an new cam altogether or, switches to user/orthographic mode)

It also zooms out alot, like a frame object, and I can tell it's already a bit annoying :P
Offline , veteran polycounter, 3,510 Posts, Join Date Oct 2004, Location Irvine CA  
   Reply With Quote

DKK's Avatar
Old (#10)
Quote:
Originally Posted by MoP View Post
we were thinking something just for UV editing, where if you make a selection in the UV window it will snap the camera to frame the selection and orient it based on the average of the selected vertex or face normals.
This would be rad.
Offline , polycounter, 841 Posts, Join Date Jan 2008, Location Vancouver, BC  
   Reply With Quote

pior's Avatar
Old (#11)
here is a ver hacky way to get a good working distance for editing (I dont like how Zoom Extends selected aka frame gets way to close).This kind of range would be good for the autorotate thingie!

Code:
macroScript Macro13
	category:"DragAndDrop"
	toolTip:""
(
macros.run "Editable Polygon Object" "EPoly_Grow"
actionMan.executeAction 0 "310"  -- Tools: Zoom Extents Selected
macros.run "Editable Polygon Object" "EPoly_Shrink"
)
Offline , veteran polycounter, 3,510 Posts, Join Date Oct 2004, Location Irvine CA  
   Reply With Quote

SyncViewS's Avatar
Old (#12)
Well, here is a VERY VERY RAW version. It works with Editable Poly only, and it should be the active object in the stack (for now). It is just to start setting ideas.

EDIT: Link removed, get latest version down in the thread.

Last edited by SyncViewS; 11-10-2009 at 05:38 AM..
IllusionCatalyst – Instrument set for 3ds Max │ AliquaForma – Personal portfolio in fieri
Offline , polygon, 572 Posts, Join Date Dec 2008, Location Milan, Italy  
   Reply With Quote

pior's Avatar
Old (#13)
Glad I stayed up late to try this!

It seems to work great so far. Only feedback I can think of after using it a little is that it tends to zoom a bit too close for my taste. If you could make it somehow remember the last 'work distance' defined by the user and retain that working distance after the camera jump, it would make for a very smooth experience.

It already feels like a very interesting workflow!
Offline , veteran polycounter, 3,510 Posts, Join Date Oct 2004, Location Irvine CA  
   Reply With Quote

killingpeople's Avatar
Old (#14)
What a clever idea, I'll have to come back some time and try this...
Offline , Moderator, 3,942 Posts, Join Date Oct 2004, Location california Send a message via ICQ to killingpeople Send a message via AIM to killingpeople Send a message via MSN to killingpeople Send a message via Yahoo to killingpeople Send a message via Skype™ to killingpeople  
   Reply With Quote

SyncViewS's Avatar
Old (#15)
I'm glad you like it, but again: it's very very raw. In uses a dirty dummy camera to set the view, and I already got rid of it, in order to avoid the annoying view flickering, by setting the viewport transform directly. Zoom is another whole world, still need to get a better sense of it. Actually it does what you suggested, frame a grown selection, but it's not always good, so... Still need come up with something smarter.

I'd like to make this work even without an active sub selection. Something like, wherever the mouse is, over current object, cast a ray and get the relative normal from surface in that exact point and align the camera. But I need to figure out how to set a reasonable zoom amount. Still on this.
IllusionCatalyst – Instrument set for 3ds Max │ AliquaForma – Personal portfolio in fieri
Offline , polygon, 572 Posts, Join Date Dec 2008, Location Milan, Italy  
   Reply With Quote

Japhir's Avatar
Old (#16)
sounds interesting, I'm curious to see where this goes (and to see a video of it in action)
Offline , card carrying polycounter, 2,160 Posts, Join Date Dec 2006, Location the Netherlands  
   Reply With Quote

SyncViewS's Avatar
Old (#17)
Here is the first update 0.2, still VERY RAW. It doesn't flicker anymore and works on currently active Editable Poly or Edit Poly Modifier. Still need to rework the Zoom part.

Get it here. Evaluate and find it under category "IllusionCatalyst Tools"
IllusionCatalyst – Instrument set for 3ds Max │ AliquaForma – Personal portfolio in fieri
Offline , polygon, 572 Posts, Join Date Dec 2008, Location Milan, Italy  
   Reply With Quote

martinszeme's Avatar
Old (#18)
Sounds like a great tool. Tried to download it from the link SyncViewS gave, but looks like the link is dead. Could someone upload it somewhere else please?
http://www.martinszeme.com
Available for permanent and freelance work.
Offline , line, 55 Posts, Join Date Aug 2009, Location United Kingdom  
   Reply With Quote

SyncViewS's Avatar
Old (#19)
It could be a dropbox fail, please try again, maybe a couple of times, it seems to work now. Thanks.
IllusionCatalyst – Instrument set for 3ds Max │ AliquaForma – Personal portfolio in fieri
Offline , polygon, 572 Posts, Join Date Dec 2008, Location Milan, Italy  
   Reply With Quote

SyncViewS's Avatar
Old (#20)
Quote:
Originally Posted by pior View Post
If you could make it somehow remember the last 'work distance' defined by the user and retain that working distance after the camera jump, it would make for a very smooth experience.
It's what I'm currently working on, but it seems to be a little tricky, because: Perspective and Orthographic viewports work in a different way, thus a specific logic is needed; Current active viewport is a sort of hidden camera, but its settings are quite messed up, because you can transform it by current selection center (Orbit SubObject), ignoring its hidden camera target, which is the reference object for important information about the camera itself like focalDistance.
IllusionCatalyst – Instrument set for 3ds Max │ AliquaForma – Personal portfolio in fieri
Offline , polygon, 572 Posts, Join Date Dec 2008, Location Milan, Italy  
   Reply With Quote

SyncViewS's Avatar
Old (#21)
Hey, here is a new update. It no longer performs a zoom on selection, but try to preserve current zoom factor. It is accurate in Orthographic views, but tends to zoom a little out when in Perspective there's a big shift in ZDepth. I guess I can work more on it, anyway it is better than before.

Get it here. Evaluate and find it under category "IllusionCatalyst Tools"

Next step, make it work without a sub selection too, on mouse over only. Next step further, 90 degrees shifts to help extrusion (seems quite easy), as requested by Pior.
IllusionCatalyst – Instrument set for 3ds Max │ AliquaForma – Personal portfolio in fieri
Offline , polygon, 572 Posts, Join Date Dec 2008, Location Milan, Italy  
   Reply With Quote

SyncViewS's Avatar
Old (#22)
Hi, here is the latest update (in the late night, or early morning). It works with Editable Polys and Edit Poly Modifiers, they must be the active object in the stack. It features:

- Preserve current zoom factor
- Orient viewport to current subObject Selection average normal
- Orient viewport to surface normal, sampled under mouse cursor on active object, if selection is empty
- Ease out (or is it in? well, who cares) movements (what poopinmymouth said). Easily adjustable, see script text.

Get version 0.4 here. Evaluate and find it under category "IllusionCatalyst Tools"

Please report any issue. Any idea for improvements is very welcome. Enjoy.

p.s. Four posts in a row... Do I win anything? º¿º
IllusionCatalyst – Instrument set for 3ds Max │ AliquaForma – Personal portfolio in fieri
Offline , polygon, 572 Posts, Join Date Dec 2008, Location Milan, Italy  
   Reply With Quote

John Warner's Avatar
Old (#23)
just my love, man.

don't use max anymore, but maybe i'll give this a look see. cool idea.
Offline , dedicated polycounter, 1,533 Posts, Join Date Oct 2004,  
   Reply With Quote

SyncViewS's Avatar
Old (#24)
Thanks John, I hope the script is up to the expectations

Just out of curiosity, what software has replaced Max in your daily practice?
IllusionCatalyst – Instrument set for 3ds Max │ AliquaForma – Personal portfolio in fieri
Offline , polygon, 572 Posts, Join Date Dec 2008, Location Milan, Italy  
   Reply With Quote

pior's Avatar
Old (#25)
Hey Sync, I tried version 2 last night and it worked great so far!
Will sure give the newest ones a try asap and will let you know how it goes. It made me think of a few new ideas ...
Offline , veteran polycounter, 3,510 Posts, Join Date Oct 2004, Location Irvine CA  
   Reply With Quote

Reply

Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump

Copyright 1998-2010 A. Risch
tracker