private static UniformsPack CreatePackWithPointerUniform(EPropElevationPointer elevationId)
        {
            var uniformsPack = new UniformsPack();

            uniformsPack.SetUniform("_Pointer", CastUtils.BitwiseCastUIntToFloat(elevationId.Value));
            return(uniformsPack);
        }
        public EPropElevationPointer ClaimFreePointer(EPropElevationId id)
        {
            uint freeIndex = _pointersContainer.AddElement(null);
            var  pointer   = new EPropElevationPointer()
            {
                Value = freeIndex
            };

            _pointerIdDict.Add(id, pointer);
            return(pointer);
        }
 public EPropElevationId RetriveId(EPropElevationPointer pointer)
 {
     return(_pointerIdDict.Get(pointer));
 }
 public bool Equals(EPropElevationPointer other)
 {
     return(Value == other.Value);
 }