user interface in 3D preview: working with all those objects...

Started by shadowphile, January 18, 2010, 08:26:25 PM

Previous topic - Next topic

dandelO

Quote...I would LOVE to be able to enable/disable an entire group...

There's at least one thing you can get instantly. Just make sure the grouped nodes you want to disable/enable together are captured inside the group node(or linked to it via capture if they're not inside the group box for any reason). The just hit key 'D'(default keyboard shortcut) to disable/enable the entire contents at once.

Edit: Also, holding shift and mouse clicking or, marquee dragging will let you select multiple nodes to one-move disable, aswell.

Kadri

Quote from: shadowphile on January 21, 2010, 02:13:07 PM
...
Some of the things I would still complain about though are the previews.  Sometimes the 3D preview itself is so slow that I render it instead, with considerably faster results.
...

I do this too. It is said that it will be multithreaded in the future . I am waiting for this too Shadowphile  :)

Cheers.

Kadri

Oshyan

Quote from: shadowphile on January 21, 2010, 02:13:07 PM
my comment about selecting objects was a little ambiguous: by 'objects' I actually mean anything represented in the 3d preview, which tends to mean cameras and anything else that throws a representation in the 3D preview.  Most of my shaders and heightfields have b-box enabled.
Yes, of course this makes sense. The camera would probably be considered an "object" in this context.

Quote from: shadowphile on January 21, 2010, 02:13:07 PM
hetzen, frankB, Kadri: re: Huge render times.
I've read the stickies and others about minimizing render times.  I did my own study on using both crops and whole pics while adjusting just detail.  0.3 is good for decent previews, final renders can be evaluated at 0.6, only slight polishing added above that.
So what do you consider to be long render times?

Quote from: shadowphile on January 21, 2010, 02:13:07 PM
Sometimes the 3D preview itself is so slow that I render it instead, with considerably faster results.  I tend to keep all the layers (atmos, lighting, shaders) turned off in 3D or it bogs down.
This is mostly because the 3D Preview is not yet multithreaded and the main renderer is. So if you're on a multi-core system, it will certainly be faster to just render a quick, low detail preview. We are working on multithreading the preview.

Quote from: shadowphile on January 21, 2010, 02:13:07 PM
2D previews themselves can also be very slow, If I bring up a floating window and pull it out.   It seems like the 2D previews are basically the same rendering technique as the 3D preview, just from an overhead camera.  I've got a quad-core PC, I would think that a 2D preview window, even expanded, should be able to create a relevant image almost in real time.  What the heck is sucking up so much cpu time?  Perhaps a different kind of renderer for those images.  (scalar field previews are pretty fast.  It's the displacement previews that can take 30 seconds or more.)  That makes it very difficult to do relative studies.
It's basically the same rendering system, though simplified (e.g. no atmosphere). Once the main 3D Preview gets multithreaded, I imagine this will too. I don't know if it's really as easy as you imagine to speed it up with a different rendering method either. From what I understand the rasterizing the internal functions is the CPU-intensive bit, and the "rendering" process per-se takes a lesser proportion of the time.

Quote from: shadowphile on January 21, 2010, 02:13:07 PM
My eye can't remember the image well enough from render to render to detect the kinds of subtle changes that are an important part of the evaluation process.
We have plans for some kind of "flipbook" functionality in the renderer in the future which should help with this.

Quote from: shadowphile on January 21, 2010, 02:13:07 PM
BTW, my life might be complicated by my rather lofty ambitions.  TG seems to be mostly targeted at rendering one or a few stills, whereas I'm more attemping to build an entire sandbox world.  That means almost any perspective from closeup to eagle eye are fair game. 
Actually the procedural approach to world building is really considered the primary method, which is inherently global, essentially. So we're definitely aiming for tools that enable this way of working. Take a look at Nvseal's work or Efflux; both have done fantastic work in developing complete planets with great diversity, from realistic to fantastic.

Quote from: shadowphile on January 21, 2010, 02:13:07 PM
I wish I could set the 3D preview to a certain resolution and boundary and have it render everything.  I could then fly around and check different perspectives.  TG09 did this, what happened to TG2?
TG 0.9's preview worked completely differently and had a much easier task to deal with. Essentially all it did is what game engines do, it didn't have to "render everything" (as TG2 *would* have to), it just took static scene elements (heightfield converted to simple geometry, water plane), and then rendered them with OpenGL. The geometry was trivial to generate as no procedurals were involved, the textures were mostly faked (aside the sky, which you could see from the cloud generator window can be created fairly fast), and the level of resulting geometry was low enough to render quite quickly with OpenGL.

A method of caching generated procedurals in the 3D Preview for TG2 *is* something we're considering, but it's certainly not as simple as "Do it like TG 0.9". Virtually none of what was done in TG 0.9 likely applies to the bottlenecks in TG2's preview. But we certainly recognize those limitations and want to address them.

- Oshyan

shadowphile

kadri: u da man!  ('D' toggling grouped nodes)

oshyan:
I tried to render a basic power shader with strata added, nothing else.  Wanted an overnight beauty so I set detail to .6 and rez to 1600x800 and went to bed.  9 hours later I killed it...
I know, you want the file :)  I'll see what I can do.  My todo queue is buckling badly right now...

Flipbooking renders would be nice.  I currently save multiple renders and toggle between them with Irfanview.  (great for cropped renders because it has that nice 'autocrop' command that just removes all the black outside the image.
But it still doesn't change the fact that: I spend hours modeling in realtime in Blender, then hit render.  Even if it's a big render, I still got a lot of feedback during the modeling process.  TG however has virtually NO realtime modeling capability.  The modeling is basically tweaking a hundred parameters and seeing what the change is.  Every change requires a rerender, and the parameters are often so interactive that its very difficult to tweak-and-see, which is difficult in a freeform environment like TG.
In fact, the entire fractal procedural process is mighty slow, at least for the world-building we are doing.  I imagine (with justification) the procedural algorithms plowing along with standard calculations.  Are there any plans or ideas for massively streamlining the process using fancy algorithms?  (the invention of the FFT comes to mind, making modern realtime spectral analysis achievable)

Glad to hear that my sandbox approach isn't wack.  Counter to the usual advice with GG work: only build what the viewer can see, or is good enough.



shadowphile

oops, soory dandelO, YOU da man!.  Kadri, would you please hand him the 'da Man' sceptre. 
(the good side is now anarchists trying to stick it to 'the Man' will now puncture HIS styrofoam noodle cups.)

dandelO

Ok.

Kadri, I'll split it with you. ;) We half da man each, now! :D


Oshyan

Certainly we want to do as much as possible to improve the process of building things procedurally. You're correct that constant re-rendering is non-ideal but necessary at this point to really get an idea of what your changes are doing. A multi-threaded preview should help with this in the future, along with better (and faster) shader and material previews, e.g. being able to apply a material to a sphere, to move the shader's perspective, etc.

- Oshyan