public void Init(IData waterData) { _waterData = waterData as WaterData; var meshRenderer = gameObject.AddComponent <MeshRenderer>(); meshRenderer.material = Resources.Load <Material>("Materials/Default"); _mesh = gameObject.AddComponent <MeshFilter>().mesh; GenerateData(); }
public void Init(IData data) { _waterData = data as WaterData; _splashPrefab = Resources.Load <GameObject>("Prefabs\\SplashNew"); for (int i = 0; i < _waterData.SpringNum; i++) { _waterData.WaterSprings[i] = new WaterSpring(); var pos = new Vector3(_waterData.Step * i + _waterData.Left, _waterData.Top); _waterData.WaterSprings[i].position = pos; } _mesh = Factory <WaterMesh> .CreateInstance(gameObject, _waterData); _phys = Factory <WaterInteraction> .CreateInstance(gameObject, _waterData); }
public void Init(IData waterData) { _waterData = waterData as WaterData; _transform = transform; _edgeCollider2D = gameObject.AddComponent <EdgeCollider2D>(); _rectCollider2D = gameObject.AddComponent <BoxCollider2D>(); var points = new Vector2[2]; points[0] = _waterData.WaterSprings[0].position; points[1] = _waterData.WaterSprings[_waterData.WaterSprings.Length - 1].position; _edgeCollider2D.points = points; _edgeCollider2D.isTrigger = true; _rectCollider2D.isTrigger = true; _rectCollider2D.size = new Vector2(_waterData.Width, _waterData.Height); }