2010-01-18 22:30:48 | Querbok
UnityのTerrain機能は便利で強力だがHeightMapなので、横穴を開けることができない。
Unity Wikiにも穴が開いているように見えるマスク処理が紹介されているが、穴の向こうに表示したいものは専用のshaderを使用しないといけないという制限があるので、シンプルなものにしか使えない。特にTPSで装備などで自キャラの構成も複雑だと簡単に切り替えるというわけにもいかない。そんなわけで、できるだけshaderの制約を受けない方式で作ってみた。


Terrainのメッシュ自体をいじって穴を開けることはできないので、穴を開けたい場所にメッシュを置いて、その部分だけTerrainを除いてレンダーしたものを貼りつけちゃおうというもの。
穴の通過を考えると、Terrainとの間に隙間があるとノイズとなるので、できるだけ密着するメッシュが必要になる。そこでまずTerrainデータから自動でメッシュを吸い出す機能から。

指定Terrainとこのスクリプトが入ったオブジェクトに隣接する箇所を起点に、Terrainメッシュの一部を複製する処理。
TerrainPoly.js


次にメッシュにカメラマトリクスで投影描画する処理。
LayerFilteringController.js (update 2010/11/06)


透過部分のレンダー時に、Terrainをレイヤー的にレンダー対象から省くことで透明化するので、
あらかじめ対象のTerrainを専用のレイヤーに(「terrain」Layerなどを作って)設定しておく必要がある。それをLayerFilteringController > renderingLayers設定から選択を外す。このメッシュ自体もIgnore Raycastなどに設定しておき、レンダー対象から外しておく。あとは対象のTerrainをTerrainPolyに設定。


穴を覆うようにメッシュを配置


あくまで向こう側が描画されているだけでTerrainのColliderは有効なままなので、このままだと通過はできない。以下の様に貫通する形でColliderを設置してやり、OnTriggerEnter時にPhysics.IgnoreCollisionを使って対象とTerrainの当たり判定を一時的に無効化し、OnTriggerExitで戻してやれば、通過が可能になる。(TPSでカメラの遮蔽物よけ処理がある場合はそれらのチェックも一時的に無効化が必要。)通過時はTerrainは床として使えないので代わりとなる床が必要。


 

About   

SmokymonkeySとは2名からなるインディチームです。個人でゲームやその他作品を開発しています。
2002年 WebゲームTRIGLAV公開。総勢50万アカウントを超える長寿ゲーム。
2015年 3DRPG Ninelivesを開発。現在休止中ですがまだプレイはできます。
2018年 TRIGLAV モバイル版をリリース。100万ダウンロード達成。
2021年 作場知生氏と共同開発したガラージュ 完全版をリリース。

SmokymonkeyS is a two-man indie team by a programmer and a graphic designer, formed for creating games.
Our 1st game TRIGLAV, a web RPG made by JavaScript has obtained over half a million accounts since launched 2002.
2015, Ninelives suspended after the alpha phase, but still can play.
2018, releasing Triglav for Mobile. Reached 1 million download.
2021, releasing Garage: Bad Dream Adventure. Developed with Sakuba Tomomi.

 

Any Comment?

1647 Posts | Page 1/206
SmokymonkeyS
このたびはご迷惑をおかけしました。triglav@smokymonkeys.com までそちらの購入履歴を添えてメールください。
googleplay支払い済 GAMEもう一度支払え
googleplayでpaypay支払いで購入したRIP代を支払ったのに、反映されません。反映されないばかりか、もう一度お試しくださいと出ます。googleplayからは明細まで来ています。また買えという事ですか?
Anonymous
Ninelives is so cool, really beautiful work. I'd definitely buy your games if they were on steam. If ever you decide to work on Ninelives again you'd have much support.
антоха
игра ninelives кайф, я купил бы себе и пацанам если бы она была в стиме как сингл с опциональным мультаком как wayfinder
JustAnotherAJ
A friend off my just told me about the development of ninelives. I think the game looks beautiful and I will love it. I think I will play the recent version. :) Thank you for the work. <3
Mattis
Just found your work through the video about "Nine Lives". #Modoki looks amazing. Incredibly atmospheric and a wonderful artstyle. I was immediatly interested. I hope you are still making games.
Hannah
Just saw the video of nine lives on youtube where someone revised it, and I agree--the game looks so beautiful and I would love to play it. Hope it gets ported to Steam. The storylines are amazing and I am sure there is a market for it in the US.
Triglavian
I very much enjoy Triglav. The art style is very depressing yet soothing and so enjoyable. Thank you so much for sharing your vision with us.