Why Gemfury? Push, build, and install  RubyGems npm packages Python packages Maven artifacts PHP packages Go Modules Debian packages RPM packages NuGet packages

Repository URL to install this package:

Details    
ai.fluctio.fluctio-sim / Core / Components / Prefabs / HeightField / Base / TerrainStructure.cs
Size: Mime:
using Fluctio.FluctioSim.Common.Configuration;
using Fluctio.FluctioSim.Core.Components.MujocoGeom;
using Fluctio.FluctioSim.Utils.General;
using UnityEngine;

namespace Fluctio.FluctioSim.Core.Components.Prefabs.HeightField.Base
{
	[AddComponentMenu(Config.PrefixedName+"/Physics/Geom Settings/Body, Geom and Terrain", Config.ComponentMenuOrder + 40)]
	public class TerrainStructure : MujocoStructure
	{
		[field: SerializeField, HideInInspector] public GameObject TerrainObject { get; private set; }
		[field: SerializeField, HideInInspector] public Terrain TerrainComponent { get; private set; }

		protected override void InitializeOnce()
		{
			base.InitializeOnce();
			TerrainObject = CreateInternalObject("Terrain");
			TerrainComponent = CreateInternalComponent<Terrain>(TerrainObject);
			
			// TODO: move to separate component 'TerrainColor' similar to 'PrimitiveColor'
			// Different components or enum with options:
			// * take color from TerrainData
			// * gradient depending on height
			// * one color
			// * default checkerboard pattern
			TerrainComponent.materialTemplate = Util.DefaultTerrainMaterial;
		}
	}
}