Cities: Skylines

Cities: Skylines

[DEPRECATED] Tree Anarchy 1.3.6
Quistar  [developer] 16 Jul, 2021 @ 5:28am
Tree Resizing
Ever planted multiple trees just to try and get the right sized tree you want? I have many times and I've wanted to write this function into this mod for a very long time, but was focused on getting this mod stable first.

Now you can adjust the tree size when planting trees using the default tree tool or FindIt mod, by pressing 'period' or 'comma' on the keyboard. When you select a tree or multiple trees using MoveIt mod, you can also press the same keys to resize the trees.

Why do this when Procedural Object can resize trees as well? Performance-wise Colossal Order's default tree rendering framework excels over Procedural Objects. Especially when you have thousands of trees in camera view. The rendering of Procedural Objects are just too expensive.

The core functionality involves around 50 lines of codes, and 4MB of ram for custom scalesize storage. This functionality makes little adjustments to the rendering of the trees, thus retain the original performance of the rendering framework for trees.

When cloning trees using MoveIt, resizing of trees is not supported during the cloning stage, but you may adjust the tree size after you've cloned the trees. This is done this way, because I am writing codes for Quboid to accept in the future to be hopefully merged into MoveIt mod

Currently the maximum scale is set at 5 and minimum scale set at 0.2. Some tree assets have very bad LOD, and if viewed from a distance, the tree will look like a blob if you resize the tree too large. Please resize the tree to acceptable size for best viewing pleasure.

With the addition of this functionality, Random Tree Rotation and Tree Movement Control mods are no long compatible. This is because these mods all patch RenderInstance, which this mod also patches to enable tree resizing functionality.
Last edited by Quistar; 27 Jul, 2021 @ 2:38am
< >
Showing 1-5 of 5 comments
Quistar  [developer] 16 Jul, 2021 @ 5:41am 
For this functionality, please also provide me with feedback to see if it can be further improved. Thanks in advance
ConScience17 28 Dec, 2021 @ 10:55am 
I've read the description for the resizing, but I'd argue that it's not quite the same functionality as the Plant Scaling mod. The Plant Scaling mod worked by allowing you to alter the min and max scale values of each tree asset globally, and saved those values in an XML file so that everytime you placed a tree it would be scaled between those values.

This was very useful for being able to use workshop assets that look great but are otherwise oversized. You could just change the default scale values to suit once, rather than rescaling every single time you want to place one of those assets.

The other difference with Tree Anarchy is size change between each increment. Currently feels like the scale change with each keyboard press is quite big, and could maybe do with similar option to MoveIt where holding down Alt (or another modifier) allows for smaller adjustments to be made.

Apologies if any of that has come across as moaning or anything - certainly not the intention. Just trying to decide if I should stick with using Tree Anarchy if it means losing the Plant Scaling mod and it's features which I use quite a lot, and so wanted to check if having a bit more of that functionality integrated here would be a possibility. No worries if not, and thanks for your modding work!
Quistar  [developer] 28 Dec, 2021 @ 11:20am 
Tree Anarchy is purely focused on performance, thus all tree sizes are pre-calculated when the game starts. This has an estimated gain in performance of about 2~3FPS depending on your graphics card. Since size is pre-calculated, changing the min and max from the mesh generated data no longer works.
There are folks who like changing tree size individually rather than directly changing the size of the asset and making it a universal change across the map. Its a personal preference thing, and I also prefer changing size individually, as I'm an avid detailer.
As an alternative to changing tree size for one particular tree type over the entire map, I suggest using Move It filter function, and set the filter to pick that particular tree, drag the mouse over the entire map, and now you can resize them all at once
Your suggestion on holding down ALT|CTRL|SHIFT to shrink delta value is noted, and I think a good one. I will implement it when I get the time

ps. If you decide to revert back to Plant Scaling, I'd suggest BOB, which uses the same concept as Plant Scaling mod, but does it better.
Last edited by Quistar; 28 Dec, 2021 @ 11:49am
ConScience17 28 Dec, 2021 @ 12:15pm 
Yeah, agreed it's definitely personal preference on individual/global scaling, and tbh I'd also lean towards individual scaling when detailing.
With Plant Scaling, I'd found that I'd only ever really adjust the min/max scale on newly subscribed trees/bushes when I first saw them within the context of my cities, and then generally left them untouched afterwards. There was a period when both mods worked together when I could have the default values changed with Plant Scaling, and then adjust further individually when needed using the controls with Tree Anarchy.
Unless there's another way of changing the default scale values of subscribed assets (maybe just setting the min/max as pre-calculated values somewhere without being able to change those in game?), might be that I'll just need to save local copies of assets with my own default scales. Bit more fiddly when it comes to subbing and unsubbing, but might be alright as a workaround.

Thanks for your time and help
ConScience17 8 Jan, 2023 @ 2:51pm 
Hi again! Just wanted to ask if you ever had a chance to look at implementing the modifier to allow for shrinking the delta value when scaling the trees?

Also you'd mentioned in the original discussion post about hopefully getting some code merged into MoveIt to allow to scales to be retained. Is that something that's still a possibilty in the future?
< >
Showing 1-5 of 5 comments
Per page: 1530 50