以下のサンプルシーンを開いて球を落下させたところに、波紋を発生させたいのですが
うまくいきませんでした。
以下のサイトで公開されています。
確認したバージョン:Unity 2019.2.11f1 (64-bit)
Unity 2017.1 の機能の CustomRenderTexture を使ってみた
http://tips.hecomi.com/entry/2017/05/17/020037
Water Simulation using CustomRenderTexture from Unity 2017.1
https://www.youtube.com/watch?time_continue=5&v=jclxfdS3a3w&feature=emb_logo
https://github.com/hecomi/UnityWaterSurface
WaterSimulationというシーンファイルを起動
球をつくって、リジッドボディをつけ、自然落下させています。(コライダーは無効にしました)
球(Sphare)には以下のスクリプトをつけています。
using System.Collections; using System.Collections.Generic; using UnityEngine; public class Sphere_src : MonoBehaviour { public float Ray_distance = 1.0f;//Rayの飛ばせる距離 [SerializeField] CustomRenderTexture texture; [SerializeField] int iterationPerFrame = 5; void Start() { texture.Initialize(); } void Update() { texture.ClearUpdateZones(); UpdateZones(); texture.Update(iterationPerFrame); } void UpdateZones() { RaycastHit hit; RaycastHit hit1; Ray ray1 = new Ray(transform.position, -transform.up);//下へレイを出す if (Physics.Raycast(ray1, out hit1, Ray_distance)) { Debug.Log("hit x:"); Debug.Log(hit1.textureCoord.x); Debug.Log("hit y:"); Debug.Log(hit1.textureCoord.y); Vector2 pos = new Vector2(hit1.textureCoord.x, hit1.textureCoord.y); var ray = Camera.main.ScreenPointToRay(pos); if (Physics.Raycast(ray, out hit)) { Debug.Log("hit!!"); var defaultZone = new CustomRenderTextureUpdateZone(); defaultZone.needSwap = true; defaultZone.passIndex = 0; defaultZone.rotation = 0f; defaultZone.updateZoneCenter = new Vector2(0.5f, 0.5f); defaultZone.updateZoneSize = new Vector2(1f, 1f); var clickZone = new CustomRenderTextureUpdateZone(); clickZone.needSwap = true; clickZone.passIndex = 1; clickZone.rotation = 0f; clickZone.updateZoneCenter = new Vector2(hit.textureCoord.x, 1f - hit.textureCoord.y); clickZone.updateZoneSize = new Vector2(0.01f, 0.01f); texture.SetUpdateZones(new CustomRenderTextureUpdateZone[] { defaultZone, clickZone }); } } } }
ヒットしてることは、デバッグで表示されているので間違いないのですが
波紋が広がりませんでした。
なにが問題なのかが、サイトを読んでも
よく理解できませんでした。
よろしくお願いいたします。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。