TC2 Node Painter - The TC2 extension for painting the world!

Have you ever wanted more control over your procedurally generated terrains in TC2?
Then this extension is for you!

This is an extension for Terrain Composer 2, a terrain generation tool developed by Nathaniel Doldersum, and only works with it!

What is TC2 Node Painter?

TC2 Node Painter allows you to paint TC2 nodes directly in the editor, greatly improving your terrain creation workflow, both procedural and manual.
Using this tool you can paint everything, from simple heights and splats over stone fields and forests to whole biomes with little setup required thanks to TC2ā€™s simple node editor interface.

How TC2 Node Painter can improve your terrain generation workflow:

  • Paint anything - from stone fields, over forests, even whole biomes!
  • Advanced conditional painting capabilities
  • No need for an external image editor
  • More precise positioning control than just noise
  • Layer different painting sessions together non-destructively
  • Works with multiple terrains out-of-the-box!

Why TC2?

  • TC2 is as flexible as terrain generation could possibly get
  • By utilizing the power of your GPU it is really fast
  • The node-based structure allows for an easy setup
  • It is a ā€˜Blending Powerhouseā€™, allowing you to paint anything through its mask

Website - Asset Store - Documentation

All images made using TC2 default resources and presets:


Simple terrain height painting setup with auto-splatmapping and additional detail


Small biome painting setup with Mountain, Desert and Grass Biomes, assigning the canvas to both height and splat masks (possible to mask trees, grass, objects, etc. too)

Current Features

  • Works on any TC2 node (e.g. mask) in every output
  • Three formats: Color, Value (Height) and Multi-Mask (Splat, Biomes, ā€¦)
  • Multiple terrain tiles and any node transformation supported!
  • Both scene terrain and GUI painting
  • 4 selected unique painting modes including smoothen/contrast
  • Shortcuts for almost everything
  • Brush and color preset system
  • Extendable brush database and adjustable brush functions
  • Separate undo system for the canvas
  • Realtime modifications and tools
  • Raw/Image import and export
  • Works at runtime with TC2
  • Lots of settings to customize

What else to know about TC2 Node Painter:

  • You can either apply it directly on nodes or specify seperate multiple node targets
  • It is fully GPU powered using normal shaders and could be used at runtime
  • It includes high quality 512 brushes from asileFX
  • Includes a Gaussian-function brush with adjustable falloff
  • Includes full clean C# and shader source code!

How would you use TC2 Node Painter?
I would love to hear your feedback and suggestions for additional features! :slight_smile:

UPDATE 20.03: Package has been submitted! The waiting begins - on my side, work continues! :slight_smile:
UPDATE 11.04: Package has finally been accepted to the AssetStore: TC2 Node Painter | Terrain | Unity Asset Store

Best regards,
Seneral

6 Likes

Hey!

Sounds like a perfect match for our game! Is it on asset store or itā€™s in development?

Hey, thanks for you interest!
Itā€™s still a work in progress, although it wonā€™t take too long until release, about two weeks:)
I just have to implement one final feature which is needed for splat painting among others and finish the documentation!

Making good progress with multiple channels, had to do some restructuring to allow for unlimited channels because it basically requires multiple internal RenderTextures to work but itā€™s functional now. Next I need to refine the GUI for it and get Import/Export working - it will function similar to splat maps of a terrain, just that it is not restricted to splats, but can be used for forests and whole biomes;)
Also working on getting a website running, it should be online soon.
I think I can hold my estimation for one more week, maybe two, then Iā€™ll submit! :slight_smile:

3 Likes

@Seneral_1 So does node painter help with spawning objects like GeNa? Could I use GeNa or manually place objects and have node painter process existing objects for and easy back and forth workflow?

I bought Gaia/GeNa/MegaSplat, but Iā€™m finding TerrainComposer2 (and with TC2 Node Painter) could have a better workflow.

P.S. Do you think thereā€™s a possibility to integrate with MegaSplat?

Hey, thanks for your interest:)

It can indeed be used to have more control over object spawning - although the spawning routines are provided by TC2, but with TC2 Node Painter you can incorporate these capabilities into your manual workflow. So you could add a rule to paint more objects on flat ground than on slopes - in a non-destructive way!
Beware that TC2 does not have as extensive spawning capabilities as GeNa, as itā€™s not dedicated solely to spawning - donā€™t expect anything fancy like gravity placement.

TC2 Node Painter also does not have direct control over the terrain, it can only interact with TC2 - anything that TC2 supports, this tool supports too:) So it canā€™t mask objects already placed manually or by GeNa, only if TC2 were to support that in the future.

Same goes for MegaSplat - I think TC2 will likely support it just as RTPv4 unlimited splats when itā€™s out. TC2 Painter will be ready for unlimited splat painting on release, which could also be used for unlimited biome painting for example. If you meant to directly integrate with MegaSplat, it already has a good integrated painting too, so I donā€™t see the need for itā€¦

Thanks for the quick reply. Iā€™ll keep an eye out for TC2 node painter!

1 Like

Neeeeeeeeeeeeeeded !!!

Thx Seneral for this great extension :stuck_out_tongue:
After ~2 weeksā€¦canā€™t wait anymoreā€¦ :smile:

1 Like

Hey, donā€™t worry Iā€™m not too far from release;)
I underestimated the time needed for the first legal setup as a first-time Asset Store Publisher but once thatā€™s out of the way Iā€™ll be able to fully focus on the tool again.
Most functionality is done now, alot of time of the last week has gone into fully restructuring the tool to support multiple internal canvases (more than previously thought to make it fully optimized).
Iā€™m wary with any more time estimations but maybe one more week if everything goes well.

I have some additional features people requested but I am not sure if I will add them right on release of if I should wait - for example starting off existing terrains (and manual changes already made to TC2-generated terrains). It might delay the release for another few days. What do you think?

1 Like

We are just waiting for this great core tool to work. So new features are ok for later releases after ā€œ1.0ā€. :slight_smile:

I think it is better to take the needed time to release a solid first versionā€¦even if i canā€™t wait :smile:
Thx Seneral for the reply.
I will be able to stop to refresh this page every hourā€¦Iā€™ll start again next week xD

Have a nice day :slight_smile:

Haha, glad youā€™re eager for the release - trust me, Iā€™m too;)
Sure, that extra feature can be emulated with a basic image editor, itā€™s just a really nice convenienceā€¦ but Iā€™ll definitely take my time getting the core solid! :slight_smile:

2 Likes

What does this mean if absent? (Eg. When one uses node painter, it will blank the existing ā€¦? Terrain?

Sorry, might have worded this badly.
A few people said to me they would already modify the terrain manually (with built-in terrain tools after disabling TC2). What they asked for is a shortcut to integrate their existing changes to height or splat into a canvas to use in Node Painter - So itā€™s really just an automated scanning feature to allow those people to modify all procedural parameters even after painting manually.
Iā€™ll definitely implement this, but seeing youā€™re already desperately waiting for some working version Iā€™ll leave it as an additional feature for 1.1 :slight_smile:

1 Like

Ahha thanks for the clarification. Yes that seems like a 1.1 (subset of likely customers).

1 Like

Awesome news! :slight_smile:

Iā€™ve finally got my website needed for the Asset Store up and running, you can access it at www.levingaeher.com!
Really happy about this, took quite a long time to get there (I chose to hand-write it). Feedback is very much appreciated:)

Also got the core Multi-Mask feature solid, although itā€™s not quite ready for normal use yet as itā€™s missing some features.
Add maybe two days at maximum for these, maybe another two for general polishing, documentation and PR, then Iā€™d be ready to submit!

Will also have to talk with Nathaniel again in order to provide the best integration possibleā€¦ Especially partial generation will greatly speed up painting with Auto-Generate turned on - currently, it re-generates the whole terrain, which makes no sense as youā€™re usually just editing a small part of it.

Seneral

you can already do this through megasplats converter itself, if that is what your talking aboutā€¦I use TC2 , then use the converter tool in mega splatsā€¦

Hey guys,

I decided to delay the release for another week - but donā€™t worry, reasoning for this is I decided I needed atleast a week of beta. If you canā€™t wait to get hands on the extension, you can contact me and Iā€™ll send you the beta once itā€™s ready:)

Additionally the tool will greatly benefit from an upcoming TC2 update, so it might be best to wait - although earlier versions will of course be supported.

Finally, hereā€™s a teaser on the WIP Multi-Mask:


These work like splat-maps, but for anything you imagine (like biomes in this example)! In the screen above, 3 Channels ā†’ 1 splat map is being used, but you can go as high as you want! Well, performance and memory will suffer with more than 4 textures - just think of storing 4x2048x2048 16Bit textures raw in memory for each undo step :open_mouth:
Hope you like it - itā€™s very much WIP right now in terms of features and UI.

Seneral

4 Likes

Hey, I would love to try this out, looks amazing and Ive been working with TC2 for a few days

Cool! You can send me a PM if you want to participate in the beta - still need some testers;)
Will be sending out the first beta this evening hopefully:)