| 12345678910111213141516171819202122232425262728 |
- // Jolt Physics Library (https://github.com/jrouwe/JoltPhysics)
- // SPDX-FileCopyrightText: 2026 Jorrit Rouwe
- // SPDX-License-Identifier: MIT
- #include "HairTeleportBindings.h"
- #include "HairCommon.h"
- JPH_SHADER_FUNCTION_BEGIN(void, main, cHairPerVertexBatch, 1, 1)
- JPH_SHADER_PARAM_THREAD_ID(tid)
- JPH_SHADER_FUNCTION_END
- {
- // Check if this is a valid vertex
- uint vtx = tid.x;
- if (vtx >= cNumVertices)
- return;
- // Initialize position based on the initial vertex data
- JPH_HairPosition pos;
- pos.mPosition = gInitialPositions[vtx];
- pos.mRotation = JPH_QuatDecompress(gInitialBishops[vtx]);
- gPositions[vtx] = pos;
- // Initialize velocity to zero
- JPH_HairVelocity vel;
- vel.mVelocity = float3(0, 0, 0);
- vel.mAngularVelocity = float3(0, 0, 0);
- gVelocities[vtx] = vel;
- }
|