3d View HotSpots (Updated August 18)


(Mariano) #1

NEW VERSION (AUGUST 19)

Dinamic scripts menus!, enable/disable hotspots, ortho views menu, clicking in selected objects menu makes that object active, NumPad 9 scripts keystroke, tentative fix of progressive render crash (sometimes work), Cleanner script folder(only hot_spots_init.py need to be there, rest of files unpack in /hotstops/ subfolder.
Still TODO : Fully fix proggresive render crash and also space handler scripts doesn´t work with Global Undo (need to report to the Bug Tracker)

Get the file here http://www.webfilehost.com/index.php?mode=viewupload&id=1805


I was frustrated because my “quick task” python scripts are almost useless, since calling them from blender is too slow. So, I researched on experimental new bpython features and I´d come up with this, which I have already seen in the makehuman interface blend file, but I though it was hardcoded in the .blend bytecode.

Phyton scripts functionality, with icons and info labels, right in the 3D View.

http://img108.imageshack.us/img108/5725/hotspotsimage011fe.jpg
http://img300.imageshack.us/img300/7850/hotspotsimage026nt.jpg

Check the images above. You can have one click access to editmode/objectmode scripts, a menu which deals with camera tools (including a new Add Camera at View feature), a render panel always there (with my progressive renderer thingy), a text label with the number of currently selected objects (if clicked it will pop up a list with their names), vertex/edge/faces buttons in editmode (edges is very usefull) and some stuff.
Also if you click in the object name you get a menu with objects of same type to select one, usefull if in full screen 3dView and the outlines is not there.

Get the file here http://www.webfilehost.com/index.php?mode=viewupload&id=1805

To use, unpack ALL THE FILES in thezipfile in your scripts folder (the blender one, not your custom one) and in the objects scripts menu you should get a “Add HotSpotS to this .blend” entry. Click on it and go to the Space Handlers Scripts submenu, in the menu View, and enable both hot_spot.py and hot_spots_icons.py (you can disable this one if the icons anoy you, the hotspots will still be there and working)

http://img108.imageshack.us/img108/8181/hotspotshowto1ze.jpg

You can have this in every 3D view you want, is specially usefull in full view, when the rest of the panels are gone ;). Also you can customize the icons, they are just PNG images in your scripts folder.

In the render panel the big circle is normal render (F12) the little circles are progressive render, the two buttons on the left allows you to define render border and to turn it on and off. I will add a popup with more options soon, but I´ve found that many render options in bpython are just toggles, they don´t pass back status info :frowning:

A cool thing also is pop-up menus in blender “recall” the last choosen action, so if you click in the “edge tools” icon and then chose Edge Slide, that action will perform again just by clicking twice in the icon the next time. Very quick when you need to slide a lot to adjust mesh topology. This also works for the scripts button (try the excelent Remove Vertex Loop script by Jorge Rocha if you have it, you can simplify mesh topology in two minutes).

I coded this in two days, just for research what the system can or can´t do, so its functionality isn´t actually designed (I´m sure some stuff there may be useless). If you like, suggest things to be added or removed. Anyway this is more tailored for my way of working, it´s not intended to be a essay about the blender interface or something like that.I know all about the blender keypress philosophy… It´s something I just wanted to try out…I´m more like a mouse driven person :wink:


(Caronte) #2

WWWWWOOOOOOOOOWWWWWWW!!!

You are my hero!!! :o :o

Thanks, thanks, thanks!!! :wink:


(wah_tak) #3

Cool thing! I didn’t know you could do such things with python.
I still prefer hotkeys though, but this is a cool demonstation of how python can be used to enhance the GUI. I’m sure there are a lot more things you can do with that.

Concering the hardcoded scriptlist:
you’ll find a file named “Bpymenus” in the .blend directory, where the menus are saved in a rather simple plain text format. Shouldn’t be a problem to extract them.


(Caronte) #4

Feature request:
Because abort render while in the two first passes crash Blender…

May be posible to insert a IF condition betwhen passes to check if a key is pressed and if so, skip the next passes?

Thanks :wink:


(youngbatcat) #5

This one needs some more work. It is Swweet as all of your scripts. But it needs rollovers to tell what they are without haveing to click.
And It needs rollouts to show whats inside of the menus.

But it is VEry very cool as well . Thank you :smiley:


(Oyster) #6

Nice script. One feature request:
can *.png, *.txt, or even the script itself be placed in a sub-fold (eg hot_spot) and only leave hot_spots_init.py under blender fold, so keep the fold clean? I think it is easy :wink:
thanx


(Dandel1984) #7

nice script :slight_smile: but how much does it hit cpu usage?


(Mariano) #8

Thanks for the Feedback :slight_smile: Tomorrow I´ll post a new version that will let you configure which hotspots you want to show, auto update script lists, ortho views tools and more…

About your questions and suggestions:

I could´t notice any slowdown, the only thing that may slowdown are the icons and label, but you can turn em off and the spot will still work :slight_smile:

You are right. I didn´t do it yet cause I was afraid it may not work on some blender installations. But I´ll add to the next version.

Tooltips will be cool… but that will cause slowdown I guess…

The command to lauch a render in python do not return 1 or 0 if its completed or canceled. But Ill try your suggestion.

Btw… glad you liked so much :wink:

Thanks for the tip!!! Ill add that tomorrow :slight_smile:


(ZanQdo) #9

A mirror

http://www.3developer.com/temp/HotSpots.zip

http://www.3developer.com/temp/new_gestures.zip

Im goin to try and study this script, I didn´t knew about the new python stuff, I´ts aweasome :o

you can use the mirrors in other sites if you want, I clean mi temp folder every 1000 years so don´t worry :stuck_out_tongue:

Edit. WOW that was great, I love bouth of your scripts!!, thanks to you and the coder(s) involved

Edit 2. the camera and the render hotspots are incredible. I found an bug, in edit mode, pressing the render hotspot it gets out to object mode. Also the “quick render” turns “display view” to “display window” render option always


(Caronte) #10

Still no fix for the UnDo bug?

If you can’t find it, may be do you need to notify this on the bug tracker of blender.org


(Mariano) #11

Fixed in the new version on top of the page… the second bug has no solution but there is a variable commented in the top of hot_spots.py who fix that… change it to 0 and you are set :slight_smile:

Thanks for mirrorin btw


(youngbatcat) #12

Hey no updates in awhile :frowning: Did you tinker with the progressize render tool some more ? Something like http://www.worley.com/fprime.html as a constant update render tool would be sweet…


(Sonic TH) #13

Good idea but I would like to voice a concern.

It reminds me of trueSpace, thing about truespace is the buttons get rather cluttered but that point aside. They seem to be a big drain on memory. A few buttons won’t kill you but adding one or two dozen might have some nasty side effects.

As long as there are still keyboard shortcuts and it’s an option more power to ya, as stated it does show interesting ways of enhancing the GUI with python.


(youngbatcat) #14

is this still being worked on ? Could someone edit the render portion to auto render in a different window view, seq editor window or some sort of way to have it auto render passes… It really should be updated to work in the new cvs builds


(3Dre) #15

it works in 2.40alpha2

hope this plugin developefurther, very usefull


(Caronte) #16

You can find a Blender build with Progressive render here:
http://www.elysiun.com/forum/viewtopic.php?t=55296