白板
让墨迹平铺在板面上的白板、为后来者保留画面的像素板,以及为所有人清除的按钮。
白板是可选的:没有白板,笔也能在空中书写。白板给墨迹一个表面,像素板则给后来加入的玩家留下一幅画。
白板
Udonite > Pens > Create Whiteboard 创建墨迹白板。VR 中笔尖碰到它,或桌面和手机玩家在 4 米内注视它时,笔会平铺在板面上书写,墨迹浮在板面前 inkLift 的距离,不会闪烁着陷进表面。
白板和 Unity 的 Quad 一样朝向 -Z 轴:站在那一侧。手动添加或删除白板后,运行 Udonite > Pens > Refresh Boards 让 PenWorld 记录它;所有客户端需要一致的顺序。
像素板
Create Pixel Board 创建 columns × rows 格(每边最多 256)的白板。笔会涂上最接近自身颜色的板色,板擦涂 background,两者都用 pixelBrush 决定涂抹方块的大小。
涂上的内容立即对所有人可见,后来加入的玩家也会看到原样的画面。
palette 设定颜色,surface 和 textureProperty 让你自己的着色器显示像素,smoothPixels 让格子之间平滑过渡而不是硬边方块。
清除按钮
选中一块白板并运行 Create Clear Button。按下会为所有人清除它的 boards,打开 clearAirInk 还会清除空中的墨迹。access 可以限定为只有实例所有者能用。
在代码里,PenWorld.ClearBoard(board) 和 PenWorld.ClearEverything() 做同样的事。
用代码涂像素
PenWorld.Paint(board, PaintOp.Paint, colour, cells) 会像笔一样为所有人涂格子,board.ColourAt(cell) 可以读回。格子编号是 row * columns + column。请通过 PenWorld 而不是白板本身来涂,这样所有人都会收到改动。