Itoo Software Forum

Author Topic: Railclone and Forest optimization  (Read 1023 times)

Jahred

  • Newbie
  • *
  • Posts: 20
Railclone and Forest optimization
« on: December 07, 2023, 10:05:14 AM »
Hello,

Year after year, RailClone and Forest become more and more difficult to manage in my workflow as Forest objects or RC tiles become too heavy. I really have the impression that both tools (especially RailClone) scrutinize every possible change within 3ds Max and really influence its fluidity. Especially when I use an XY spline to lay out my tiles in RailClone, every time the spline moves it recalculates in real time, which is sometimes unmanageable for working: switching the RailClone update on and off is really impractical if I'm constantly going back and forth.

For Forest, it's the Point Cloud mode that becomes unmanageable after a certain number of entities, to the point where it's no longer really usable in terms of number of images per second; I limit the number of entities visible, but it's no longer representative of true positioning. Even so, we need this "Point Cloud" mode to be able to place individual objects precisely, so we may have to find an alternative solution in the long run. At the moment, I place them in "Plants" proxy with a limit of visible entities, for want of a better solution. 

Is there not a way of preventing both tools from constantly scanning the scene, a "semi-automatic" mode that only updates at the end of a spline edit? If I'm missing any best practices for both tools, I'd love to hear from you.

iToo

  • Administrator
  • Hero Member
  • *****
  • Posts: 4383
    • iToo Software
Re: Railclone and Forest optimization
« Reply #1 on: December 07, 2023, 12:25:58 PM »
Hello,

- For RailClone, unfortunately we cannot control the way that 3DS Max handles the spline notifications (or any other reference used by RC).
Max just notifies to the plugin when spline changes (and that happens for any action), and we must rebuild RC to keep it updated.

There are some tips which may help you. But really there is not a simple solution, specially for heavy objects:

a) Use 'Quick-Mesh' or 'Point-Cloud' for Display mode, not 'Mesh' (which is the slowest mode).

b) While editing, simplify the model. For example, for parametric buildings, reduce the number of floors. Once adjusted, set it to the final value.

c) Remember you can rebuild objects from the Lister: select objects in the first column, and use the toolbar icon to rebuild.

d) For objects which are not being edited, use Display->Proxy Cache mode. When enabled, RC object is locked, geometry and instances are stored internally, and it's not necessary to rebuild the object anymore, until you need to make some change.
This state is also saved in the scene file. You can enable it from the Display rollout, or from the RailClone Lister (latest column).

- Regarding Forest, we are aware of the performance issue with Point-Cloud mode. Although it worked well with older 3DS Max versions, its performance is not the best with recent changes in Nitrous.
We have some ideas to improve it, but that also will change significatively the way that Point-Cloud is shown. We have to test it and decide.

Meanwhile, we suggest to use Display->'Proxy'. That's the most efficient mode.

« Last Edit: December 07, 2023, 12:54:45 PM by iToo »
Carlos Quintero
iToo Software

Jahred

  • Newbie
  • *
  • Posts: 20
Re: Railclone and Forest optimization
« Reply #2 on: December 09, 2023, 02:47:41 PM »
Hello,

Thanks for the advice.

For Railclone, I already tried to use the "mode-proxy" but I had a problem of Railclone bursting when loading the scene in "xref". I finally put it aside, I'll try again. If you could add a "Select all RailClone Dependence" in the "quad menu" like Forest, that would be really useful for quickly isolating everything we need to work with.

For Forest, I hope you'll find a workable solution, because sometimes it gets awfully slow to work on certain scenes: opening, selecting, editing. Micro-waiting times almost everywhere in the software, growing as the file gets heavier. You end up spending more time optimizing and waiting than actually working on the image. Last but not least, Forest Pro should stop using "xref objects" for the library. In my experience, this is highly unoptimized and can cause slow loading and usage problems. Xref scene could be used, but it seems unsuitable per object. It would therefore be a good idea to allow the use of vRay or Corona proxies (especially with its delayed loading system in the last few versions), and to make this possible in the default library.

iToo

  • Administrator
  • Hero Member
  • *****
  • Posts: 4383
    • iToo Software
Re: Railclone and Forest optimization
« Reply #3 on: December 11, 2023, 12:50:31 PM »

- I added your suggestion ('Select all Dependences') to the RailClone wishlist.
Anyway, remember you can embedd the geometry in RC, to simplify the external references. To do it, just delete the Segment objects from scene.

- Yes, i know that XRefs are not very optimized in Max.  I just tested a scene using all models of the Starter Library: 56 sec to load using XRef, vs 26 sec using V-Ray proxies.
But i'm afraid XRef is the only method we can distribute our libraries, because is compatible for all renderers. If not, we should create multiple variations for each engine (XRef+V-Ray+Corona+etc), taking a lot of space.
Also that would solve the problem only for our own libraries, for not for third party assets.

If that helps, remember you can create your own libraries using proxies. Just save the source object as proxy, and import from the Library Browser using the 'Merge' option (instead XRef).

Carlos Quintero
iToo Software