Save UI on Exit

kind of a fluff feature, but it would be nice if the Krakatoa UI would save the configuration & settings of the roll-outs so when we open it again we don’t have to re-specify anything…



thanks





Krakatoa v0.9.8.25681 GUI SP2


Max8 & TP 2.5

This is pretty trivial to implement, as the feature is almost there anyway, you just have to do it manually.



All settings you see in the GUI are saved in THE RENDERER (the instance of the Krakatoa renderer class assigned to the production renderer slot in the Render Scene Dialog).



So when you open an old scene, the GUI gets all its settings from the renderer.



When you assign a new renderer instance (switch from Scanline to Krakatoa for example), Krakatoa is initialized to its factory defaults.



At this point, you could load a Render or History preset from disk to set it to something else, or use the 3ds Max Render Presets system which is also fully supported.

And if you are using Krakatoa a lot, you could assign it as the current renderer, set your settings to your favorites and save as MAXSTART.MAX, so each time you launch Max, Krakatoa would be preset as you like it.



What you are asking for would mean that when you close the GUI, a temp preset file could be written to disk and when you start a new session with a fresh Krakatoa instance, it could PROMPT the user about loading the last known settings.



Another possibility would be to go to the Presets and History rollout, select a settings file that you like and hit some button that says “Set As Default”, so each time you launch a new Krakatoa session, the defaults will be set to the settings from that saved session?



Please think about it and let me know which way you would prefer.



Cheers,



Borislav “Bobo” Petrov

Technical Director 3D VFX

Frantic Films Winnipeg

thanks, Bobo,



it sounds like K should already open with the last used settings, but if I set the Particle Systems to “All Sources” and then close & re-open K it is no longer set to “All Sources”. Nor does the UI stay the same size… These are minor issues but people won’t want to re-set everything all the time (and are probably lazy like this monkey ;).



A button to “Save as Default UI” would definitely be good for storing new “factory defaults”.



Ideally, it would seem to make sense to have K open with whatever configuration was used last, per scene file. If all drop-down menus, Particle Loader settings, size of K window could be saved, etc., that’d be awesome.







it sounds like K should
already open with the last
used settings, but if I set
the Particle Systems to "All
Sources" and then close &
re-open K it is no longer set
to "All Sources".

This is something else.
Let's clarify things - Krakatoa has two components
1. the Krakatoa Renderer plugin
2. the Krakatoa Scripted GUI

The GUI is a MAXScript wrapper which is resposible for the user interaction. When you close it and open it, nothing inside of Krakatoa (the renderer) changes, so all GUI controls that reflect internal settings of the renderer are preserved.

There are some rollouts in the GUI that do NOT reflect Krakatoa's settings but provide tools to browse/select objects in the scene, or modify their properties. I could have written these as separate scripts, but having them in the scripted GUI is better.

Now when you say "All Sources" is not sticky, it is intentional. Here at Frantic we work with HEAVY objects, some of them can take 5 seconds to rebuild the stack if forced, and certain operations in Max cause the stack to be updated. So it was a conscious decision to default that list to None each time you reopen the GUI. It might feel odd, but I'd rather keep your scene fast and let you explicitly request a certain list to be populated than to waste your time - there are monitoring callbacks for all the objects in those lists, and if you set the Log window to Debug mode, you will notice how many events are being reported just when you change a property in any of them...



Nor does
>the UI stay the same size...

This must be a bug - the GUI is supposed to remember its position, height (you cannot change the width) and the open/closed state of most rollouts with some exceptions like the About rollout. Also, the dialog is aware of the desktop size and will move automatically if you change resolution or switch from two to one monitor etc.

In general, we are trying to streamline the workflow as much as possible, you will notice under Preferences several options to do things to open or close rollouts at specific events, pop up messages and dialogs etc. These are dictated by our daily experience with Krakatoa (we do production work with it as we speak) and from your feedback.


>These are minor issues but
>people won't want to re-set
>everything all the time (and
>are probably lazy like this
>monkey ;).

We are not talking about everything - 99% of the controls are sticky as you would expect them. If you switch to Scanline and back to Krakatoa, everything will be reset, but if you just close and open the GUI, everything except the few exceptions we mentioned that are UTILITIES to Krakatoa and not part of Krakatoa The Renderer itself will be still set as they were before the closing.

The Particle Loaders rollout and the Particle System rollout are technically not part of Krakatoa The Renderer, they are a built-in Scripted Utility to let you do things you would otherwise have to script yourself. If you want, I could make all their settings 100% sticky.

Now that I think of it, I could just make it an option whether these Utilities will keep their latest settings or not.

>
>A button to "Save as Default
>UI" would definitely be good
>for storing new "factory
>defaults".

Yep, I think we should add that.

>
>Ideally, it would seem to make
>sense to have K open with
>whatever configuration was
>used last, per scene file.

Once again, that's what it does. Except the two rollouts mentioned above which are not exactly part of Krakatoa.


>If >all drop-down menus, Particle
>Loader settings, size of K
>window could be saved, etc.,
>that'd be awesome.

We will look into it and try to make most of this possible AND optional.

Thanks for the feedback!

Borislav "Bobo" Petrov
Technical Director 3D VFX
Frantic Films Winnipeg

size of K window could be saved, etc.,



Found the bug in the size saving:



In 0.9.10 and before, if you resized the GUI but never MOVED the GUI, the Position value was never initialized. When the Position was read, it would trigger an error trap and the size would also not be applied.



I fixed this for the future so that the size is always initialized and applied independently from the position info. Thus, resizing now works from the get go without having to move the GUI once…



Thanks for noticing.



Working on custom factory defaults now.



Cheers,



Borislav “Bobo” Petrov

Technical Director 3D VFX

Frantic Films Winnipeg

I finished implementing the Factory + User Defaults handling. If you have time to test it, I could post the updated KrakatoaGUI.ms to replace the one in 0.9.10.



Other changes include:



*Changed Cache right-click menu handling

*Fixed rollout size saving/loading

*Changed the Cache buttons to allow multi-frame rendering with Cache on - in 0.9.10, we tried to be conservative and disallowed it, but it makes sense for creating turntables of static particle systems or even rendering “bullet time” fly-throughs :wink:

*Consolidated .INI files storage





Cheers,



Borislav “Bobo” Petrov

Technical Director 3D VFX

Frantic Films Winnipeg

Hi Bobo,



With the 9.10 installer you still have to move the GUI window for it to remember the location/size.



and…



The new 9.10.msi seems to install version v0.9.9.2615 ?



The last installer for 9.9 did not seem to include an uninstaller, so I removed all dirs manually… hopefully this didn’t screw it up.



Then after installing the 9.10 installer and opening the GUI in Max 8 it shows as version 9.9.2615… weird!



I uninstalled 9.10 and reinstalled with same effect.



thanks!

Each installation of Krakatoa should create an installation record under Add and Remove Programs. So you are saying there was no entry there?



I installed the same 0.9.10 posted on the board and the version reads 0.9.10.26215 (the last number is the increment of our version control system).



The plugin files are located by default under C:\Program Files\Frantic Films\Krakatoa\3dsmax9\win32 or win64 depending on the build (or 3dsmax8)



The date of the Krakatoa.dlr and KrakatoaGUI should be 23.02.2007, the MaxKrakatoaPFOperators.dlo is from the 21.02.2007



If your files do not have that date, some files might have remained from the previous installation.



I fixed the resizing and added the factory defaults management AFTER posting the 0.9.10 build. If you manage to install 0.9.10, I can post the updated scripted GUI.



Cheers,



Borislav “Bobo” Petrov

Technical Director 3D VFX

Frantic Films Winnipeg

Each installation of Krakatoa

should create an installation

record under Add and Remove

Programs. So you are saying

there was no entry there?



Correct, there was no entry for v0.9.9 (that I had).







The date of the Krakatoa.dlr

and KrakatoaGUI should be

23.02.2007, the

MaxKrakatoaPFOperators.dlo is

from the 21.02.2007



yep – these are as described.







If your files do not have that

date, some files might have

remained from the previous

installation.



Maybe… but I search the whole hard disk for “Frantic” and “Krak” and removed all items (some Krak scripts and prefs/logs).







so… I reinstall again and it still reads v0.9.9.26215 – but the UI looks a little different and because the file dates match what you said I’m guessing this really is 9.10… but the About still says v0.9.9.26215



weird!



maybe a registry problem? but I would think all Krak settings should be contained within Krak files…




Spooky!



The version display in the Krakatoa GUI comes from a MAXScript call asking for a variable in the Render DLL.



Typing in the MAXScript Listener:



FranticParticles.Version



returns here



“0.9.10.26215”



Anyway, if you see a PCache and LCache button next to the RENDER button AND these work when you use them, then you are running 0.9.10



Cheers,



Borislav “Bobo” Petrov

Technical Director 3D VFX

Frantic Films Winnipeg

hmm, I tried using the email reply link but it hasn’t appeared yet…





FranticParticles.Version

“0.9.9.26215”



hehe, weird! I’ll test L/P cache…



btw, nice mouse-over help-text!