すべて Udonite.Pens にあります。エディター API は Udonite.Pens.Editor.PensSetup です。
Pen と Eraser
どちらもツールで、持ち方と描く場所の決まりは共通です。
持ち方
| メンバー |
|
holding |
VrcPickup は同じオブジェクトの VRCPickup に従い、Custom は下の呼び出しを待ちます |
undoKey |
VRCPickup で持っているときに元に戻すデスクトップのキー。標準は R |
returnAfter |
手を離してから、VRCObjectSync でワールドが置いた場所に戻るまでの秒数。0 なら戻りません |
haptics |
VRCPickup で持っているとき、線を描き始めると VR の手に短い振動を返します。標準でオン |
tip |
VR で描く点 |
world |
シーンの PenWorld。空なら自動で探します |
SetHeld(bool) |
ローカルプレイヤーが持っているか |
SetUse(bool) |
Use が押されているか |
Undo() |
持っている人の一番新しい線を元に戻します |
PutBack() |
手を離し、ワールドが置いた場所へすぐに戻します |
bool IsHeld、bool IsDrawing |
ローカルプレイヤーがそれで何をしているか |
描く場所
| メンバー |
|
desktopAim |
デスクトップとスマートフォンで何から描くか。View は見ている場所、Tip は手に持ったツールのペン先が見えている位置で、線を描き始めた距離に描きます |
drawInAir |
届く範囲にボードがないとき空中に描きます。オフならボードにだけ描きます |
airDistance |
デスクトップやスマートフォンで、視点の何メートル先に空中のインクを描くか。標準は 0.5 |
reach |
デスクトップやスマートフォンで、見ているボードに届く距離(メートル)。標準は 4 |
contactDistance |
VR のペン先がボードからこの距離(メートル)以内なら描けます |
sendInterval |
描いている間の送信間隔(秒) |
Pen
| メンバー |
|
colour、width |
インクの色と太さ(メートル) |
inkStyle |
PenWorld.inkStyles のどれで描くか |
spacing |
線に点を足すまでにペン先が動く距離(メートル) |
steadiness |
ペン先がゆっくり動くときに手ぶれを抑える秒数。速い線はペン先にほぼそのまま追従します。点の間隔は線の太さの半分より狭くなりません |
snap |
すべての点をこの間隔(メートル)のグリッドにそろえます。0 なら自由に描きます |
pixelBrush |
ピクセルボードでペン先のまわりに塗るマス数 |
Eraser
| メンバー |
|
radius |
線を消すペン先や視線のまわりの範囲(メートル) |
pixelBrush |
ピクセルボードで消すマス数 |
eraseInterval |
消す間隔(秒) |
PenWorld
シーンのインクです。
| メンバー |
|
lines、pointsPerLine |
ラインのプールと 1 本あたりの点の数。長い線は次のラインに続きます |
inkStyles |
線が写すテンプレートのライン。マテリアル、太さのカーブ、テクスチャモード、端と角 |
smoothing |
ペンが送る点と点の間に、曲線に沿って描く点の数。標準は 4、1 なら直線でつなぎます |
taper |
線の両端が細くなる長さ(線の太さ単位)。0.5 で端が丸くなり、0 なら四角く切れます |
inkLifetime |
インクが自然に消えるまでの秒数。0 なら残ります |
keepLeaversInk |
退出したプレイヤーのインクを残します |
lateJoinerBytes、joinDelay、catchUpSeconds |
後から来た人に届くインクの量とタイミング |
boards |
全クライアントで順番がそろったすべてのボード。Refresh Boards で埋まります |
StrokeTable Strokes |
このクライアントが表示している線。読み取りたいワールド向け |
StartStroke、AddInk、SendInk |
コードから線を描きます |
EraseAt(point, radius)、EraseAlong(from, to, radius) |
イレーサーと同じように消します |
UndoLatest() |
ローカルプレイヤーの一番新しい線を元に戻します |
ClearPen(pen) |
あるペンの色、太さ、スタイルの線を、誰が描いたかに関係なく全員の分消します |
Paint(board, kind, colour, cells) |
ピクセルボードのマスを全員の分塗ります |
ClearBoard(board)、ClearInk(surface)、ClearEverything() |
全員の分消します |
Whiteboard
| メンバー |
|
mode |
Ink または PixelGrid |
size、inkLift |
描ける範囲(メートル)と、インクが手前に浮く距離 |
columns、rows |
ピクセルボードのマス数。それぞれ最大 256 |
palette、background |
ピクセルボードの色と、イレーサーが塗る色 |
surface、textureProperty、smoothPixels |
ピクセルの見せ方 |
publishDelay、publishInterval |
後から来た人のために絵を残すまでの早さ |
int ColourAt(cell) |
マスが表示している色の番号 |
int CellAt(point) |
ある点の下のマス |
| メンバー |
|
boards |
消すボード |
clearAirInk |
空中のインクも消します |
access |
Everyone またはインスタンスオーナー |
label |
ボタンの表示 |
エディター
Udonite > Pens のメニュー項目はすべて PensSetup を包んだものです。どの呼び出しも作ったものを返し、同じ名前のものがすでにあればそれを返します。
| メンバー |
|
CreatePenSet(Vector3) |
トレイに載った 4 本のペンとイレーサー |
CreatePen(name, colour, position, inkStyle, width) |
ペン 1 本 |
CreateEraser(name, position)、CreateTray(position) |
イレーサー、トレイ |
CreateWhiteboard(name, mode, position, rotation, size) |
インクボードまたはピクセルボード |
CreateClearButton(board) |
ボードの横の消去ボタン |
CreateInkStyle(name, material, widthCurve) |
インクスタイル。番号を返します |
SetInkLines(world, count) |
プールの大きさを決めます |
Refresh() |
シーンのボードを PenWorld に登録します |
SyncPreset.Light、Balanced、Smooth |
Apply(world, pens, erasers) でネットワーク設定を一度に決めます |