## c# – Unity Runtime Surface Snapping (Like Shift+Cntrl in Editor)

I am trying to allow the user of my VR game to move objects around using a pointer, then when holding down a button, snap to a grid and align to the highest surface, essentially replicating the Editor behavior or holding down shift+control and moving around a transform gizmo. (Try it, it’s fun!)

I have the grid part down, but can’t wrap my head around how to do the surface snapping.
Here is the code I have so far. I would appreciate any and all help!

``````
// offsetPos is where the VR pointer is.
Vector3 offsetPos = pointer.objectControlPoint.transform.position + cursorOffset;
Vector3 newPos;

if (isSnapping) // Snap to ground code.
{
// I read previously to do this up then down thing, but It's not working as expected
RaycastHit groundHit = new RaycastHit();
if (Physics.Raycast(selectedObject.transform.position, Vector3.down, out groundHit))
{
RaycastHit objectHit = new RaycastHit();
if (Physics.Raycast(groundHit.point, Vector3.up, out objectHit))
{
Vector3 snapDiff = groundHit.point - objectHit.point;
snapYPos = snapDiff.y + (selectedObject.collider.bounds.extents.y);
}
}
// worldGrid is a monoBehavior on another object, and gridCellSize is just a float
float gridPosX = Mathf.Floor(offsetPos.x / worldGrid.gridCellSize) * worldGrid.gridCellSize;
float gridPosZ = Mathf.Floor(offsetPos.z / worldGrid.gridCellSize) * worldGrid.gridCellSize;
newPos = new Vector3(gridPosX, snapYPos, gridPosZ); // Sets the target position to the nearest grid cell, with a Y of the snap position.
}
else // If not in snap mode, set target position to just the VR cursor.
{
newPos = new Vector3(offsetPos.x, offsetPos.y, offsetPos.z);
}

// I know lerp might not be the most efficient, but I like the smooth effect, and it looks good when snapping to the grid...
selectedObject.transform.position = Vector3.Lerp(selectedObject.transform.position, newPos, movementLerpSpeed * Time.deltaTime);
``````

The objects I need to be snapping all are different sizes and have their origins in different places, but all do have appropriate box colliders.

Thanks so much!

## Replacing Command words with sounds, (Like snapping your fingers)

Is it possible, when creating a magic item to replace a command word, for say a wand, or a flaming longsword, to react to a fingersnap or similar sound instead of an actual spoken word?

## dnd 5th – Is this homebrew snapping turtle balanced as an animal companion for the UA Revised Ranger (Beast Conclave)?

The ranger player in my group asked me the other day if I could make her a snapping turtle for a companion animal (she uses the UA Revised Ranger, Beast Conclave). After having watched Monster Manual and online, I haven't found anything that really worked for me.

I made the following statblock for a possible snapping turtle animal companion:

## Snapping turtle

Medium beast, all alignment

Armor class 14 (natural armor)
Damage points 30 (4d8 + 12)
Speed 15 feet, swim 30 feet

$$begin {array} {cccccc} text {STR} & text {DEX} & text {CON} & text {INT} & text {WIS} & text {CHA} \ 16 ; (+ 3) & 8 ; (- 1) & 16 ; (+ 3) & 2 ; (- 4) & 12 ; (+ 1) & 6 ; (- 2) end {array}$$

Backup jets Str +5
Meaning Passive perception 11
Languages
Challenge 1/2 (100 XP)

Hold one's breath. The snapping turtle can hold its breath for 1 hour.

### Actions

Break. Melee attack with a weapon: +5 to hit, reach 5 feet, a target. Hit: 6 (1d6 + 3) piercing damage.

Headbutt. Melee attack with a weapon: +5 to hit, reach 5 feet, a target. Hit: 8 (1d10 + 3) bludgeoning damage. Deals 2 (1d4) recoil damage to the turtle. Critical failure causes 5 (2d4) damage to the turtle.

Shell Defense. The snapping turtle can retreat into its shell as an action. Until he emerges, he gains a +4 bonus to AC and has an advantage on the Force and Constitution saving throws. While in its shell, the turtle is prone, its speed is 0 and cannot increase, it has a disadvantage on the saving throws of Dexterity, and it cannot take reactions. The only action he can take is a bonus action that emerges from his shell.

Is this homebrew snapping turtle balanced as an animal companion for the UA Revised Ranger (Beast Conclave)?