Author Topic: Default Scene - Naming Convention  (Read 350 times)

Offline WASasquatch

  • Member
  • *
  • Posts: 3475
Default Scene - Naming Convention
« on: October 04, 2018, 06:16:04 PM »
One of the biggest things I see noted by Oshyan and Matt when people are having trouble with nodes is if they're naming the nodes with a custom name.

I propose the Default Scene be changed to follow this naming convention system. Because this is important both for loading projects and importing clips, as well as keeping trees connected, this should be enforced through any TG examples scenes from PlanetSide. Let TG add numbers for fresh shaders, not in the default scene. I just personally find it bad practice considering all the talk regarding naming conventions over the years.

Confusion over what the shaders are (even though names should be straight forward) shouldn't be an issue as every shader has a link to their wiki (if available) and the forums here.

Offline Oshyan

  • Planetside Staff
  • *
  • Posts: 13206
  • Holy snagging ducks!
Re: Default Scene - Naming Convention
« Reply #1 on: October 05, 2018, 02:53:41 AM »
I don't recall much confusion over what nodes are what. It can be easy to miss the label in the title bar and tool-tip in the node network, but it hasn't seemed to be a big issue. Renaming nodes is mainly only an issue when there are duplicate names in old projects or internal networks. Which does happen, but is fortunately also not that common.

That being said I agree the Default Scene might be improved by having more descriptive names for the nodes. On the other hand those are not the names that the nodes have when they are first created (which is what you do see in the current Default Scene), so it's a little debatable which is more educational or correct. But we'll keep this idea in mind.

- Oshyan

Offline WASasquatch

  • Member
  • *
  • Posts: 3475
Re: Default Scene - Naming Convention
« Reply #2 on: October 05, 2018, 06:21:18 PM »
I don't recall much confusion over what nodes are what. It can be easy to miss the label in the title bar and tool-tip in the node network, but it hasn't seemed to be a big issue. Renaming nodes is mainly only an issue when there are duplicate names in old projects or internal networks. Which does happen, but is fortunately also not that common.

That being said I agree the Default Scene might be improved by having more descriptive names for the nodes. On the other hand those are not the names that the nodes have when they are first created (which is what you do see in the current Default Scene), so it's a little debatable which is more educational or correct. But we'll keep this idea in mind.

- Oshyan

According to discussions, even adding one node using the name of another will cause anomalies. For example, another fractal warp, another compute terrain. The base PF already using a unique name as it's a Power Fractal not Fractal Terrain.

This naming convention should be used in the example scene as it is something everyone should follow. If I don't rename EVERYTHING to something unique, Terragen will disconnect nodes, move nodes out of groups, and all sorts of nonsense. Especially when you start packing shaders in internal networks. Half of my TGC will break becasue I forgot to name one function, that isn't even a duplicate anywhere in the project. Just cause it's a "01" at the end it seems like really. For example, functions, where no other function setup exists, but because I left a "Multiply scalar 01" or whatever, the tree will break at that point.

I also used to get broken trees in my main terrain chaining up fractal warps, extra compute terrains for lateral, etc, without a unique name. Just base unique names in the default file will save from "Computer terrain 02" or "Fractal warp shader 02" and will be a 01 shader.

And again as we've discussed it's just a good idea to name your functions, and even explain what they are doing. This should be enforced by the default scene inherently.
« Last Edit: October 05, 2018, 06:26:49 PM by WASasquatch »

Offline Oshyan

  • Planetside Staff
  • *
  • Posts: 13206
  • Holy snagging ducks!
Re: Default Scene - Naming Convention
« Reply #3 on: October 06, 2018, 12:49:29 AM »
Terragen automatically renames nodes when there is a conflict, as far as I know. The only exception may be if you past in a clip file (whether saved on disk or just in the clipboard) with a node that has the same name, and that I'm not sure about.

If the issues with name collision are as bad you say, then it's an issue we need to fix, not just advise people to use unique names. That's hardly a solution, a majority of people won't do it.

- Oshyan

Offline WASasquatch

  • Member
  • *
  • Posts: 3475
Re: Default Scene - Naming Convention
« Reply #4 on: October 06, 2018, 02:01:45 AM »
Terragen automatically renames nodes when there is a conflict, as far as I know. The only exception may be if you past in a clip file (whether saved on disk or just in the clipboard) with a node that has the same name, and that I'm not sure about.

If the issues with name collision are as bad you say, then it's an issue we need to fix, not just advise people to use unique names. That's hardly a solution, a majority of people won't do it.

- Oshyan

It just seems if things aren't completely custom, anomalies occur. LIke group popping, and yes it happens a lot with clip files, but clip files are a absolutely huge portion of TG flow for a lot of us, and again, to defeat all these issues we're advised to name shaders. So why have shaders following the generic generation naming convention that can cause issues when working with a project.  Gets people in good habit when new to the program as well.

Offline Oshyan

  • Planetside Staff
  • *
  • Posts: 13206
  • Holy snagging ducks!
Re: Default Scene - Naming Convention
« Reply #5 on: October 06, 2018, 11:06:14 PM »
Matt says there may still be a bug or two with the handling of duplicate names, but the goal would be to fix those bugs rather than suggest workarounds to people. If you can create a TGD that reliably reproduces the naming collision issues please do let us know! It'll help us fix any remaining bugs.

- Oshyan

Offline WASasquatch

  • Member
  • *
  • Posts: 3475
Re: Default Scene - Naming Convention
« Reply #6 on: October 06, 2018, 11:14:41 PM »
If I discover any solid collisions I'll try and share them. They seem to be strangely random. For example, group popping seems to have no reason or rhyme about it. One load it'll be fine, next load fine, third, it's floating outside the group.

I just feel "Shader 01" "Shader 02" is not a good relationship to have in a production standpoint, including a default scene demonstrating that. Not to try and hide the problems more then creating naming convention between users that's more standardized. If more people had a practice that was similar, making sense of node networks would be pretty easy.

Generic names with "01_01_01_02" while having specific use isn't very helpful, and this I think stems from how nodes are shown in documentation, default scene, and on the forums subsequently from these habits. For example, documentation should immediately familiarize and encourage users to name their functions.
« Last Edit: October 06, 2018, 11:16:36 PM by WASasquatch »

Offline SILENCER

  • Member
  • *
  • Posts: 152
Re: Default Scene - Naming Convention
« Reply #7 on: October 17, 2018, 08:15:06 PM »
The whole 1_1_1_1 thing gets old fast.
In complex scenes, especially if you're moving fast,  it drives you monkey nuts.

I'd think that could be adjusted to number things sequentially upon creation, (001, 002, 003) and if needed the user could rename.

Offline WASasquatch

  • Member
  • *
  • Posts: 3475
Re: Default Scene - Naming Convention
« Reply #8 on: October 17, 2018, 08:22:36 PM »
The whole 1_1_1_1 thing gets old fast.
In complex scenes, especially if you're moving fast,  it drives you monkey nuts.

I'd think that could be adjusted to number things sequentially upon creation, (001, 002, 003) and if needed the user could rename.

That is from copying/pasting, it does sequentially name them when it's generated from the menus, as it's than aware of the other shaders. When you paste it sees the naming collision, but than tags it "_1". Instead of using the already in place naming convention of sequentially created shaders "01" and "02" but maybe that's to denote that it has been pasted? Not that it matters.

Just seems like remnants of old coding, handling things different ways added at different times (different thought processes).