Tanoda
CollisionPainter.cs
Go to the documentation of this file.
1
using
UnityEngine
;
2
3
namespace
Es.InkPainter.Sample
4
{
5
[RequireComponent(typeof(Collider), typeof(MeshRenderer))]
6
public
class
CollisionPainter
: MonoBehaviour
7
{
8
[SerializeField]
private
Brush
brush;
9
10
[SerializeField]
private
int
wait = 3;
11
12
private
int
waitCount;
13
14
public
void
Awake
()
15
{
16
GetComponent<MeshRenderer>().material.color = brush.
Color
;
17
}
18
19
public
void
FixedUpdate
()
20
{
21
++waitCount;
22
}
23
24
public
void
OnCollisionStay
(Collision collision)
25
{
26
if
(waitCount < wait)
27
return
;
28
waitCount = 0;
29
30
foreach
(var p
in
collision.contacts)
31
{
32
var canvas = p.otherCollider.GetComponent<
InkCanvas
>();
33
if
(canvas !=
null
)
34
canvas.
Paint
(brush, p.point);
35
}
36
}
37
}
38
}
Es.InkPainter.Brush
Class managing brush information.
Definition:
Brush.cs:11
Es.InkPainter.Brush.Color
Color Color
The color of the brush.
Definition:
Brush.cs:197
Es.InkPainter.InkCanvas
Texture paint to canvas. To set the per-material.
Definition:
InkCanvas.cs:23
Es.InkPainter.InkCanvas.Paint
bool Paint(Brush brush, Vector3 worldPos, Func< PaintSet, bool > materialSelector=null, Camera renderCamera=null)
Paint processing that use world-space surface position.
Definition:
InkCanvas.cs:793
Es.InkPainter.Sample.CollisionPainter
Definition:
CollisionPainter.cs:7
Es.InkPainter.Sample.CollisionPainter.FixedUpdate
void FixedUpdate()
Definition:
CollisionPainter.cs:19
Es.InkPainter.Sample.CollisionPainter.OnCollisionStay
void OnCollisionStay(Collision collision)
Definition:
CollisionPainter.cs:24
Es.InkPainter.Sample.CollisionPainter.Awake
void Awake()
Definition:
CollisionPainter.cs:14
Es.InkPainter.Sample
Definition:
ClipPainter.cs:5
UnityEngine
Definition:
HSVPicker/UtilityScripts/BoxSlider.cs:7
Source
Assets
InkPainter
Sample
Script
CollisionPainter.cs
Generated by
1.9.3