プログラミングとイラストレーション » バネのバンド|Unity5
プログラミングとイラストレーション > Unity > バネのバンド|Unity5

バネのバンド|Unity5

バネのバンド|Unity5

バネのバンド|Unity5 : ZIPファイル(538kb)

C#

Spring5.cs

using UnityEngine;
using System.Collections;

public class Spring5 : MonoBehaviour {

	float spring = 0.05f;
	float vx = 0;
	float vy = 0;
	float friction = 0.95f;
	float gravity = -0.1f;
	LineRenderer renderer;
	GameObject ball;

	// Use this for initialization
	void Start () {
		renderer = gameObject.GetComponent<LineRenderer>();
		// 線の幅
		renderer.SetWidth(0.05f, 0.05f);
		renderer.material = new Material (Shader.Find ("Particles/Additive"));
		renderer.enabled = false;

		ball = GameObject.Find ("ball");
	}

	// Update is called once per frame
	void Update () {
		Vector2 tap = Camera.main.ScreenToWorldPoint (Input.mousePosition);
		float mouseX = tap.x;
		float mouseY = tap.y;
		Vector2 v = ball.transform.position;
		float dx = mouseX - v.x;
		float dy = mouseY - v.y;
		float ax = dx * spring;
		float ay = dy * spring;
		vx += ax;
		vy += ay;
		vy += gravity;
		vx *= friction;
		vy *= friction;
		v.x += vx;
		v.y += vy;
		ball.transform.position = v;

		renderer.enabled = true;
		renderer.SetPosition(0, new Vector2(ball.transform.position.x, ball.transform.position.y));
		renderer.SetPosition(1, new Vector2(mouseX, mouseY));
	}
}

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

コメントフィード

トラックバック URL : http://www.htmlcode.jp/%e3%83%8f%e3%82%99%e3%83%8d%e3%81%ae%e3%83%8f%e3%82%99%e3%83%b3%e3%83%88%e3%82%99%ef%bd%9cunity5/trackback/